Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp468092pxu; Thu, 7 Jan 2021 09:22:58 -0800 (PST) X-Google-Smtp-Source: ABdhPJyVbl2F+EtUOs/acx3zxhc9Qhob9JmppHDAJcxw1+NfJHFaVtGTozHBXE9dG9MmM5TSaYlw X-Received: by 2002:aa7:d99a:: with SMTP id u26mr2497733eds.32.1610040178065; Thu, 07 Jan 2021 09:22:58 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1610040178; cv=none; d=google.com; s=arc-20160816; b=LulsNSkBLfaEvwSUL4QphHDPXsonyfv5Ar2a2lchW053VNQH/0fjraYgZQMdSJXcv+ SexXnhp5eFM9+pdfiPzVqA+Vs4ihAn3wvyPtwhnoeGecJhyxQkg/v5QMG18O0FWDioOL UV/H7PQpv07Is8U4uDaIvZUAaPjH2qTpiMJctavcKLfvYyapVIBLwUBH0kgFdAyX6tno yDK84/7O+Kyn2mi2Lw+TCIFQWq24ZCdIPaMLW1jQ5KOH/8DzO6Auvp92XOTKTTalEK9C nJM+kwSh81g8VTm38KNSP0/a6NVrVqo1YNnQ0tXpudPPQFSfO5xdnG2NoSHGUe8M9zSt sCBQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=xFzg996wZghRDMljRiUDGgbxiUKBLaZNfvfWsKyW/2c=; b=QoVQCE0X2fBlphmYxLTgpWacw40Zq2Y6QYV3UbeahOAHwrDZvQmwie5pXAosjIyEMr TK4K3LAl05TTpqBRJDlbeDUgu/hfa3Ni9EXBLrKawQ11uvWrj9blD1kUw4MKei+O6CEJ hTLnhPNomv+K3z16gI6inh4z2VEtt7HZaV3K88SdlCVCFT7p4ZLyLIHGfbpTiql+n4ue V+ib5pAMlW/OqJeclYE5LBf3D3UtRnRowzp1tIIGMPu2kJGqPieQvAIlGYgw+WkU+WZv 23pqx0nJn7/BKaIkKWUPVhKZZoeWcKx6qW6HUjhBSEJi1tpqmjl7gxp7/6eaCXCt8s+F bOcg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b="O/R+YVTk"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id u7si2598508edb.213.2021.01.07.09.22.34; Thu, 07 Jan 2021 09:22:58 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b="O/R+YVTk"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728846AbhAGRSw (ORCPT + 99 others); Thu, 7 Jan 2021 12:18:52 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54462 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726073AbhAGRSw (ORCPT ); Thu, 7 Jan 2021 12:18:52 -0500 Received: from mail-wr1-x430.google.com (mail-wr1-x430.google.com [IPv6:2a00:1450:4864:20::430]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0A69FC0612F4; Thu, 7 Jan 2021 09:18:12 -0800 (PST) Received: by mail-wr1-x430.google.com with SMTP id r7so6390085wrc.5; Thu, 07 Jan 2021 09:18:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=xFzg996wZghRDMljRiUDGgbxiUKBLaZNfvfWsKyW/2c=; b=O/R+YVTkjwuKfy5YWvgsyEfgiPoH29vHtCLfdXluhXXDQMecR7hA02HYW+phgP5FYf +rsTzDsrfDY8eQYb8LyKk+xV1LNc0tuVEWT3KNzaBp/CW3BTRimzApYGGgUuzM6BGc9h xKdBo+utOMeFzYJ5tSOuZBPdMvi52ufJHp/ZThMp8s4n6yF2Qd6kwtUIgbP+z6lX3nrD 1/zvka84oezzVer77cNZY8C4+JnWxPovPfjxWvghOMBGpNAEvKplFCuuX0sScDxFtIAo jeTOwCiMe/CJ+56CMrh121XfXrV76LIggms0SkQS4SvrdJdJnqkgo6oydFaT5d0H19o5 BJCQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=xFzg996wZghRDMljRiUDGgbxiUKBLaZNfvfWsKyW/2c=; b=gG8P3dmV5nsbBtixHf/TZ7PKRxFYVJqcfojF3CuFqnpkA3p1dWmEmPHhZ2GL8HlXru XFlajpItfbQYt6KyZAjkaurjbTHOJ4tnsiNfRbGQAza0Gfhy+aVFldvCGm8EwV9qSK4f l9Rl4EY4OkUvIGOpGbywVoPl7kgiAjdJRpk1ITUVwOGeSyWqoJbmwSihqcGTPACDFR81 2OLnNJlCKwlI9xLGomQMzWBgwsQdOnkQTvUkPSzWeJ3RCE9TKzyEBLapoQm04veoORoT Uatj44vfMvhe9y8P9SlLhyPxfxeWEMlf5re9jDGm2o/unLeSDOE9gW4E8g6kIspEWukn 2VWQ== X-Gm-Message-State: AOAM5312gKSiQUZHkhyAJf42ZpVv6qsRef8uudlTvZK/LdXBQrs8crUR MPCUdfdJiVAWJH7SV/urncetTB4h5zzpVJazRHw= X-Received: by 2002:a5d:54cc:: with SMTP id x12mr10040275wrv.132.1610039890761; Thu, 07 Jan 2021 09:18:10 -0800 (PST) MIME-Version: 1.0 References: <20210102202437.1630365-1-iskren.chernev@gmail.com> In-Reply-To: <20210102202437.1630365-1-iskren.chernev@gmail.com> From: Rob Clark Date: Thu, 7 Jan 2021 09:20:29 -0800 Message-ID: Subject: Re: [PATCH] drm/msm: Fix MSM_INFO_GET_IOVA with carveout To: Iskren Chernev Cc: ~postmarketos/upstreaming@lists.sr.ht, Sean Paul , David Airlie , Daniel Vetter , Bjorn Andersson , Jordan Crouse , linux-arm-msm , dri-devel , freedreno , Linux Kernel Mailing List Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sat, Jan 2, 2021 at 12:26 PM Iskren Chernev wrote: > > The msm_gem_get_iova should be guarded with gpu != NULL and not aspace > != NULL, because aspace is NULL when using vram carveout. > > Fixes: 933415e24bd0d ("drm/msm: Add support for private address space instances") > > Signed-off-by: Iskren Chernev > --- > drivers/gpu/drm/msm/msm_drv.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c > index c5e61cb3356df..c1953fb079133 100644 > --- a/drivers/gpu/drm/msm/msm_drv.c > +++ b/drivers/gpu/drm/msm/msm_drv.c > @@ -775,9 +775,10 @@ static int msm_ioctl_gem_info_iova(struct drm_device *dev, > struct drm_file *file, struct drm_gem_object *obj, > uint64_t *iova) > { > + struct msm_drm_private *priv = dev->dev_private; > struct msm_file_private *ctx = file->driver_priv; > > - if (!ctx->aspace) > + if (!priv->gpu) > return -EINVAL; Does this actually work? It seems like you would hit a null ptr deref in msm_gem_init_vma().. and in general I think a lot of code paths would be surprised by a null address space, so this seems like a risky idea. Maybe instead we should be creating an address space for the vram carveout? BR, -R > /* > -- > 2.29.2 >