From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.5 required=3.0 tests=DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 89D6EC43331 for ; Mon, 23 Mar 2020 21:36:22 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 5C04720719 for ; Mon, 23 Mar 2020 21:36:22 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Cpp2SKYJ" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 5C04720719 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id C6E8D89AC2; Mon, 23 Mar 2020 21:36:21 +0000 (UTC) Received: from mail-wm1-x342.google.com (mail-wm1-x342.google.com [IPv6:2a00:1450:4864:20::342]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2715389AC2 for ; Mon, 23 Mar 2020 21:36:20 +0000 (UTC) Received: by mail-wm1-x342.google.com with SMTP id 26so1027530wmk.1 for ; Mon, 23 Mar 2020 14:36:20 -0700 (PDT) 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=aa9+xVPRdvdviMSSPFaM6YZKO0ImSW3NEYL3iQBrnhU=; b=Cpp2SKYJUYbyvCuRpwDEOsWvNYF77+BcIs0qlsc4Vz8l1EPhm3EOcWBxPyGH+SbHDC rGHItdHzzvD6AjgZfIlKeDalYz1y4NuSAJ+RrXp4CDhZldD8D9hZwsr5kAaDMOCZLlRA Wh5/7cMvW5dgYVWUgbRg2HyioaKuXbknL8qvj4TkNWTPyF61Qg723BolDdbkcfVBjIvp FAPkr3VZUXZIrfo1AL5qFxcjScBVHF+o0QAE/HKk6KMWlGQlTfCMFAAyZO9lFzd5cDUj iOO3NEQ/cCGeX/jXklYJ6sLifR2y2y8I3xP4PYLIivqonf3O5aLdA0VrSYkrRFfRTgdv N49Q== 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=aa9+xVPRdvdviMSSPFaM6YZKO0ImSW3NEYL3iQBrnhU=; b=CM7MMTPeZoLe9BjOFGkeUziopgJBsbvwAnixZm1zgxk9E8OHbXBhITeIVdN98uf1u6 q6jjGagrMJGRf47VsFjMNdDAqsG9yfqcQ494njXOZBnRHQ9ayakqDYaDpKJyFKPqb0kb tE8udzt3PSzXus5j+f3ZIk+3dGSGei9tGSuaaIcQ0ORlYb9muqj+kbiUD+fIs/g4wOO/ 987mZxTwhGNmAFmdhCExmrcaKrvUQLVp1xFpqk/OnZ6zbbiphWZp+0W/tYmR9mjQcxWb JrOD0k6nqpJWhl46JL1ntnwXVXWasiT1563bEPKMFf247sWa4nXXnEoNY+vn2fgx/EZC DqTQ== X-Gm-Message-State: ANhLgQ3Rb0RHyjbMmYoeNSzOJs6e2nQjPqwCkrJKm63Bos9MbUbIAkMA OpirSpkkliAuuHUl++wacf9cY/0GM7kQJGoQ9ho= X-Google-Smtp-Source: ADFU+vufwQthfVTSv2tnOMHHJlqzV7U+2efmYwCPbALPPXkmjJpXg87VpZz3H++SdU55+sHl3FuIqacsm4x5mHKDH88= X-Received: by 2002:a7b:c542:: with SMTP id j2mr1491836wmk.39.1584999378695; Mon, 23 Mar 2020 14:36:18 -0700 (PDT) MIME-Version: 1.0 References: <20200323205137.136530-1-bigbeeshane@gmail.com> <20200323205137.136530-3-bigbeeshane@gmail.com> In-Reply-To: <20200323205137.136530-3-bigbeeshane@gmail.com> From: Alex Deucher Date: Mon, 23 Mar 2020 17:36:07 -0400 Message-ID: Subject: Re: [PATCH 2/2] drm/amdgpu: fix scatter-gather mapping with user pages To: Shane Francis X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Maling list - DRI developers Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" On Mon, Mar 23, 2020 at 4:52 PM Shane Francis wrote: > > Calls to dma_map_sg may return segments / entries than requested > if they fall on page bounderies. The old implementation did not > support this use case. > > Signed-off-by: Shane Francis Fixes: be62dbf554c5 ("iommu/amd: Convert AMD iommu driver to the dma-iommu api") > --- > drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c > index dee446278417..d07f143b50c3 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c > @@ -974,12 +974,13 @@ static int amdgpu_ttm_tt_pin_userptr(struct ttm_tt *ttm) > /* Map SG to device */ > r = -ENOMEM; > nents = dma_map_sg(adev->dev, ttm->sg->sgl, ttm->sg->nents, direction); > - if (nents != ttm->sg->nents) > + if (nents == 0) > goto release_sg; > > /* convert SG to linear array of pages and dma addresses */ > - drm_prime_sg_to_page_addr_arrays(ttm->sg, ttm->pages, > - gtt->ttm.dma_address, ttm->num_pages); > + drm_prime_dma_sg_to_page_addr_arrays(ttm->sg, ttm->pages, > + gtt->ttm.dma_address, ttm->num_pages, > + nents); > I think the other call to drm_prime_sg_to_page_addr_arrays in amdgpu needs a similar fix. Alex > return 0; > > -- > 2.26.0 > _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel