From patchwork Thu Oct 8 11:23:40 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Christian_K=C3=B6nig?= X-Patchwork-Id: 268697 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=-12.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH, MAILING_LIST_MULTI, SIGNED_OFF_BY, SPF_HELO_NONE, SPF_PASS, URIBL_BLOCKED, USER_AGENT_GIT autolearn=unavailable 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 08F74C4727F for ; Thu, 8 Oct 2020 11:23:52 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 96F1A217BA for ; Thu, 8 Oct 2020 11:23:51 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Cf1RVSf2" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729795AbgJHLXr (ORCPT ); Thu, 8 Oct 2020 07:23:47 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56152 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725871AbgJHLXr (ORCPT ); Thu, 8 Oct 2020 07:23:47 -0400 Received: from mail-ed1-x543.google.com (mail-ed1-x543.google.com [IPv6:2a00:1450:4864:20::543]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E9470C061755; Thu, 8 Oct 2020 04:23:46 -0700 (PDT) Received: by mail-ed1-x543.google.com with SMTP id x1so5457014eds.1; Thu, 08 Oct 2020 04:23:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id:in-reply-to:references:mime-version :content-transfer-encoding; bh=JsjjPHzjofiTjxIZU4zLpu7KElZkR0RdFNQVI4MgOuI=; b=Cf1RVSf2Wd5WKqBEQe/s36QG8XPfHBaG2UWWLmc7AROqUPPPQzryQaYWEUL3oqek8t bJAWEG3kKcAlgth9M38k2B/Nt+MG9IFqUTNhiYyms9eyVbvr8NcfwpPUj/XllhPiA0lR CEOK7HNJLYHG2ro7ZcBAavoxQL+en5L6fLiIqlSMlj8iywTFoAQE8nxzlrsyLbgjMxpi aofcNv/eTwnrxMk1doVKqyCl2Lzj63kYoISdf1LGyZfeO4qxt1PCfDKoVBAEDuVy+NFE Aa5I9mDCi/xhlOeDfBYRqyWBA93TrkNz+9HNhzXjHl+Z5vLOKICpcpqiYFyy5VDMaDh4 4ZPw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=JsjjPHzjofiTjxIZU4zLpu7KElZkR0RdFNQVI4MgOuI=; b=IIaUkMpXCMrL5pKAm2RqqRZORERWa+aSKvmiM+bdas3S3HPFsKQtiDkJF2lkLf1vRC Y+6Rzr03yaaAFaJYjgn23QtRL/1ktFZL/praZLVqksABaJ3pvtlC0CXOiOisO7RfOsQx EacX/Lzxs2PmUa1HuMYPvrdkLZsinZNPWgIB/F2tovMwFWRbJUh2tP0wrfDbrRhLC+s/ y8lJUfer63WSphgbXLF7G8h0nCeBkRrUfEVR6ndaIrLtUykRxp9SbC/x1PvYHROVbzYM PryXM/rsE8abaYfpB0E07wyAbMW6WpN/TeM0qg0x3da1TDOccurWooNwzGoAC1ImF5MX LKNw== X-Gm-Message-State: AOAM531mFLHs3G0sS4mPisGkksbAUg/nInjT+xdautEHR11JERYUmntt 2IhJuDIl13iMaNxrCT7Z2Po= X-Google-Smtp-Source: ABdhPJwDRyJHE6THipTubGPFIEhicDT26J0ZkLEqMYptkgqx4YSyy8HXoku93odOoEECNMopX74sdQ== X-Received: by 2002:aa7:c7c2:: with SMTP id o2mr8673537eds.366.1602156225590; Thu, 08 Oct 2020 04:23:45 -0700 (PDT) Received: from abel.fritz.box ([2a02:908:1252:fb60:4c64:a9a0:5e0:905a]) by smtp.gmail.com with ESMTPSA id i20sm3529030edv.96.2020.10.08.04.23.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Oct 2020 04:23:45 -0700 (PDT) From: "=?UTF-8?q?Christian=20K=C3=B6nig?=" X-Google-Original-From: =?utf-8?q?Christian_K=C3=B6nig?= To: linux-mm@kvack.org, linux-kernel@vger.kernel.org, linaro-mm-sig@lists.linaro.org, dri-devel@lists.freedesktop.org, linux-media@vger.kernel.org, chris@chris-wilson.co.uk, airlied@redhat.com, akpm@linux-foundation.org, daniel@ffwll.ch, sumit.semwal@linaro.org Subject: [PATCH 2/4] drm/prime: document that use the page array is deprecated Date: Thu, 8 Oct 2020 13:23:40 +0200 Message-Id: <20201008112342.9394-2-christian.koenig@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20201008112342.9394-1-christian.koenig@amd.com> References: <20201008112342.9394-1-christian.koenig@amd.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org We have reoccurring requests on this so better document that this approach doesn't work and dma_buf_mmap() needs to be used instead. Signed-off-by: Christian König --- drivers/gpu/drm/drm_prime.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/drm_prime.c b/drivers/gpu/drm/drm_prime.c index 4910c446db83..16fa2bfc271e 100644 --- a/drivers/gpu/drm/drm_prime.c +++ b/drivers/gpu/drm/drm_prime.c @@ -956,7 +956,7 @@ EXPORT_SYMBOL(drm_gem_prime_import); /** * drm_prime_sg_to_page_addr_arrays - convert an sg table into a page array * @sgt: scatter-gather table to convert - * @pages: optional array of page pointers to store the page array in + * @pages: deprecated array of page pointers to store the page array in * @addrs: optional array to store the dma bus address of each page * @max_entries: size of both the passed-in arrays * @@ -965,6 +965,11 @@ EXPORT_SYMBOL(drm_gem_prime_import); * * Drivers can use this in their &drm_driver.gem_prime_import_sg_table * implementation. + * + * Specifying the pages array is deprecated and strongly discouraged for new + * drivers. The pages array is only useful for page faults and those can + * corrupt fields in the struct page if they are not handled by the exporting + * driver. */ int drm_prime_sg_to_page_addr_arrays(struct sg_table *sgt, struct page **pages, dma_addr_t *addrs, int max_entries) From patchwork Thu Oct 8 11:23:42 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Christian_K=C3=B6nig?= X-Patchwork-Id: 268696 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=-12.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH, MAILING_LIST_MULTI, SIGNED_OFF_BY, SPF_HELO_NONE, SPF_PASS, URIBL_BLOCKED, USER_AGENT_GIT autolearn=unavailable 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 4C92FC4363A for ; Thu, 8 Oct 2020 11:24:03 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id E40442145D for ; Thu, 8 Oct 2020 11:24:02 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="oQGX/WsE" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729810AbgJHLXx (ORCPT ); Thu, 8 Oct 2020 07:23:53 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56160 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725871AbgJHLXt (ORCPT ); Thu, 8 Oct 2020 07:23:49 -0400 Received: from mail-ed1-x544.google.com (mail-ed1-x544.google.com [IPv6:2a00:1450:4864:20::544]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CDFCDC0613D2; Thu, 8 Oct 2020 04:23:48 -0700 (PDT) Received: by mail-ed1-x544.google.com with SMTP id dg9so3080640edb.12; Thu, 08 Oct 2020 04:23:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id:in-reply-to:references:mime-version :content-transfer-encoding; bh=aQ0/dy64GNY6E3PqMvkOeCw7tku1OiiEuNnrmc12zf0=; b=oQGX/WsERCpgW2PogHIJy5UBog3JDnWJXgvx4OWfsN9DG11XTYcsi8LkNCKGUswsVJ I/ov2amMxLnqIS7y4T22v9Dpr4t+K5E5otszIUDv8ceaAoz9l1kOIpoAtfRbN0cW9vxW XoO6hAvzi/rD1B5/9Tib6A+YWTA/+ziwvMiiPNhRgQbJPSQ4i7ZPrHay6IredJCY7ywU oCXJOIQM3zfmTvuY/V4JGrac322do81ACOrYW/hQtAvN3pDSoZ8MvC7G8Yt1SQd6rg++ FljU/RLi97GP7ZDzZTA8xdONUTEzhdw0OqO//PQqjZc4QERaSl6M+ThTNtf645yCZnqg FSwQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=aQ0/dy64GNY6E3PqMvkOeCw7tku1OiiEuNnrmc12zf0=; b=JDQGXxHX/VW+u5/MYhVKkFCFayDn+EnOOPMVyZXVuvpnidhIxyDChoUkzELL1tDc42 AH7j3u8bt/2mDr0BNPnW4CCG6J/jV/g4plJ5BlBNzInji3IsTKiOCv/65g/sTV8vPvAF 5ZbJuK1QgDNZdeDAQM8Czkze2tS/T1gvR7uLFuu4jpIVkLK+7GhFCDDWVN/78fEM+9ru 2nnQD6s/5jfne+IQxUvku8/hNoQcsvKb4CUSw8gmkuu8fHmHVV5Kk/EMG0kpqfpJQ5P8 cQJ//4Fz1aB2X2B6FT9r/emzqySMoM8DrVlG8/nBWnxjS1WJDlfiE/IhWRC7QjjJNSUK WhCw== X-Gm-Message-State: AOAM531j+zMj+B6DHbk//S4qFuX9EjeocYcjCcvu0++IdfqRDSzcYQue n+55PohZBJRv/LlkcYvwOyQ= X-Google-Smtp-Source: ABdhPJyiM0N9wnzLQ1YaVSJXHnbIsEHI6Q6KUCzWN69nNbgBewaYrw2PtECQxiDDM9OMzbILYW8xFw== X-Received: by 2002:a05:6402:396:: with SMTP id o22mr8312612edv.361.1602156227564; Thu, 08 Oct 2020 04:23:47 -0700 (PDT) Received: from abel.fritz.box ([2a02:908:1252:fb60:4c64:a9a0:5e0:905a]) by smtp.gmail.com with ESMTPSA id i20sm3529030edv.96.2020.10.08.04.23.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Oct 2020 04:23:47 -0700 (PDT) From: "=?UTF-8?q?Christian=20K=C3=B6nig?=" X-Google-Original-From: =?utf-8?q?Christian_K=C3=B6nig?= To: linux-mm@kvack.org, linux-kernel@vger.kernel.org, linaro-mm-sig@lists.linaro.org, dri-devel@lists.freedesktop.org, linux-media@vger.kernel.org, chris@chris-wilson.co.uk, airlied@redhat.com, akpm@linux-foundation.org, daniel@ffwll.ch, sumit.semwal@linaro.org Subject: [PATCH 4/4] drm/amdgpu: stop using pages with drm_prime_sg_to_page_addr_arrays Date: Thu, 8 Oct 2020 13:23:42 +0200 Message-Id: <20201008112342.9394-4-christian.koenig@amd.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20201008112342.9394-1-christian.koenig@amd.com> References: <20201008112342.9394-1-christian.koenig@amd.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org This is deprecated. Signed-off-by: Christian König --- drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c index 399961035ae6..ac463e706b19 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c @@ -1011,8 +1011,8 @@ static int amdgpu_ttm_tt_pin_userptr(struct ttm_bo_device *bdev, 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_sg_to_page_addr_arrays(ttm->sg, NULL, gtt->ttm.dma_address, + ttm->num_pages); return 0; @@ -1345,7 +1345,7 @@ static int amdgpu_ttm_tt_populate(struct ttm_bo_device *bdev, ttm->sg = sgt; } - drm_prime_sg_to_page_addr_arrays(ttm->sg, ttm->pages, + drm_prime_sg_to_page_addr_arrays(ttm->sg, NULL, gtt->ttm.dma_address, ttm->num_pages); ttm_tt_set_populated(ttm);