From patchwork Tue Apr 15 03:15:46 2025
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
X-Patchwork-Submitter: Huan Yang
X-Patchwork-Id: 14051405
Received: from HK3PR03CU002.outbound.protection.outlook.com
(mail-eastasiaazon11011045.outbound.protection.outlook.com [52.101.129.45])
(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
(No client certificate requested)
by smtp.subspace.kernel.org (Postfix) with ESMTPS id 29711158858;
Tue, 15 Apr 2025 03:16:28 +0000 (UTC)
Authentication-Results: smtp.subspace.kernel.org;
arc=fail smtp.client-ip=52.101.129.45
ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;
t=1744686990; cv=fail;
b=qx4BQe4Yx6YsgKlmIrYYTb6umcM4oBiqX8bwlFpA93WR2TAUj2PFTPG3yDuKQ0dpz/h3V702zrJoPacF+KVaDBno6V0K0FDERgGW22HmEloeEDsUaQYjf2HTzhefJg6QAKxqvJr3aqqlLw7O4LAzOhe1Lb8UcAH2kehOUmhkFcQ=
ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org;
s=arc-20240116; t=1744686990; c=relaxed/simple;
bh=lLIsQyAhm2qyf+qnSGfzrttxmY7+2MLY69tmwzKs6Cs=;
h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References:
Content-Type:MIME-Version;
b=KGzLE4SVlavRnXkbJlYpbGVQXzlg3kiMCduIltuSg+nH72XpXdiDde097ptZtljKlG0AmeXGn6ZWow2uQEfDbgylakACmgGgaS4KBsS5N6NZ7kKUCPwXmVKScZhxnK1WxQTZVRyuvFUhmG+PsUIhYsKkp05hd7s0u959wUec9k4=
ARC-Authentication-Results: i=2; smtp.subspace.kernel.org;
dmarc=pass (p=quarantine dis=none) header.from=vivo.com;
spf=pass smtp.mailfrom=vivo.com;
dkim=pass (2048-bit key) header.d=vivo.com header.i=@vivo.com
header.b=dfP5pM9T; arc=fail smtp.client-ip=52.101.129.45
Authentication-Results: smtp.subspace.kernel.org;
dmarc=pass (p=quarantine dis=none) header.from=vivo.com
Authentication-Results: smtp.subspace.kernel.org;
spf=pass smtp.mailfrom=vivo.com
Authentication-Results: smtp.subspace.kernel.org;
dkim=pass (2048-bit key) header.d=vivo.com header.i=@vivo.com
header.b="dfP5pM9T"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;
b=FjqaUSMsLb7lTj2OQoD9SJvgPaTL2uvWA8k06XkqWejwwVGYj1Cr8NHjzlGNDgf73e+xOI5odWHngmN9BaqFiMuq7ltWwYxMxwYoW2Y4MH83sZKKOyF0R5SfJi7vB/kYUWUU4oOInV2eKbgftqH5qPyLB9WrGt+u8dChORgrrT+3K8LTni9OJjwPIh7eJAeBhcxh6liRkYxPSpsW3COXX1vPca8Ej6nUChumNKOsSNVp0uSV8xqslGI8S5xJguNxX+Af2fT5PA7SBFsYJgn6fUebtPLNtjPueUn+eHeNQwaAFLN4fpMD8Wc2PhLotx6i2O6jskjGJjVgg1Pf4EAPLQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
s=arcselector10001;
h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
bh=mSdLx0BpWL99zVzJkVDz1FFSYefU5daZGEPmgB3lQ9U=;
b=B8NpFVAKsqj1+30rHtH4SKFWXkocfjr+oyhPUdyo6ewigl9huWmsf6LokVI2jKLekp4o7QCmelHZORE41Yi7UMM/608QDBAbO/LJtEdg0p/JbR12LHflciV2p7XKh1E0aBzUVPGYVbRsvR4hTyOjmHdNNw6TQFSvvTTsZ+sAguBwQko5yxobg2KyluJnDrWpuVE0K+prFJsxVzB4vP6Kw6LL5rbViS3M89rp5v/m/UetGXMDj1xiK2rXQYe7ouY4+G0I/uhUidv5az9cunv+IlDqwAP7Uo7bjY/RLG2gc0KHENNtSDOh+S7kcOh6z5Rivy064QBCAZ2cJCm7vOj6fQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
smtp.mailfrom=vivo.com; dmarc=pass action=none header.from=vivo.com;
dkim=pass header.d=vivo.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vivo.com; s=selector2;
h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
bh=mSdLx0BpWL99zVzJkVDz1FFSYefU5daZGEPmgB3lQ9U=;
b=dfP5pM9Tht9t8Kkw6GZRHhtKqRwwcyNbZ5fjh439pnlHFYOD1/mDbmex7kMndiwU3SBqKoLJGSfHtKA6VvHkzhbD+gi+bddF7Tdy53tPqcai5R8RVdMaFSYvQhki+hi7CutnYMJmUNVr0WYyCrywk0Ow34mN1muA4vSzJCK4bkQZ2bnX3uzsNQSi7ZS/Z5XtQyAF4Zj2TohJ8JcT/1rXw5jwv4qsrJGLBLNDD3/CIkLz7aNr8YI6KdM+wKwcX7zbEL3y0qvVIBudU83y2TcnAp4vJpv9OE0CFAeB436uroJLuWeOOVEEun+Kuikzw4Hz3bDDEg5CS+77B2r8pbV1eQ==
Authentication-Results: dkim=none (message not signed)
header.d=none;dmarc=none action=none header.from=vivo.com;
Received: from PUZPR06MB5676.apcprd06.prod.outlook.com (2603:1096:301:f8::10)
by TY0PR06MB4984.apcprd06.prod.outlook.com (2603:1096:400:1ac::13) with
Microsoft SMTP Server (version=TLS1_2,
cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8632.27; Tue, 15 Apr
2025 03:16:22 +0000
Received: from PUZPR06MB5676.apcprd06.prod.outlook.com
([fe80::a00b:f422:ac44:636f]) by PUZPR06MB5676.apcprd06.prod.outlook.com
([fe80::a00b:f422:ac44:636f%6]) with mapi id 15.20.8632.036; Tue, 15 Apr 2025
03:16:22 +0000
From: Huan Yang
To: Sumit Semwal ,
=?utf-8?q?Christian_K=C3=B6nig?= ,
Gerd Hoffmann ,
Vivek Kasireddy ,
Andrew Morton , Dave Airlie ,
linux-media@vger.kernel.org, dri-devel@lists.freedesktop.org,
linaro-mm-sig@lists.linaro.org, linux-kernel@vger.kernel.org
Cc: opensource.kernel@vivo.com,
Huan Yang ,
Bingbu Cao
Subject: [PATCH 1/2] Revert "udmabuf: fix vmap_udmabuf error page set"
Date: Tue, 15 Apr 2025 11:15:46 +0800
Message-ID: <20250415031548.2007942-2-link@vivo.com>
X-Mailer: git-send-email 2.48.1
In-Reply-To: <20250415031548.2007942-1-link@vivo.com>
References: <20250415031548.2007942-1-link@vivo.com>
X-ClientProxiedBy: SI2P153CA0011.APCP153.PROD.OUTLOOK.COM
(2603:1096:4:140::14) To PUZPR06MB5676.apcprd06.prod.outlook.com
(2603:1096:301:f8::10)
Precedence: bulk
X-Mailing-List: linux-media@vger.kernel.org
List-Id:
List-Subscribe:
List-Unsubscribe:
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: PUZPR06MB5676:EE_|TY0PR06MB4984:EE_
X-MS-Office365-Filtering-Correlation-Id: be6d0497-bedb-439d-4084-08dd7bcbe5e9
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam:
BCL:0;ARA:13230040|52116014|376014|7416014|366016|1800799024|38350700014|921020;
X-Microsoft-Antispam-Message-Info:
+JRzARHhy9Auk9jH7WmpYJ1Kv9dWEpx9/Flm1C5kmB2pTQj5foWkJipgAXppT8Ne4IPWUfO8b/I0q+li0WlEisGusBgyGXebGhdm3YqznOG5nkYM4O6WFyTqZQPEDaE9Yaz3YMkFuYPQoIqeB+9NvJbeVdzLBvjx8d8FZM4BsdEjRQEzm3kM85tu7dD9fpEyQ9DKyQK90mWDpZi9GMDT3xbAE1/c3/Fjg1FOIA4vKEOwUgB5nDhuqS42HFg6nX7EdWQipKDDabhmyuJYJLsQA1AH+cI7+WeYd9twIZfvx9obNc8UnKdHN3W2VPZARcAeelNQh+r8kJ1STvfd7oVQ4xj1MtWpbvBomvLk6Ij50Ru9gxX/oKmU8ysfWvKipeFq7JnYzfvMoZ6YQB2GIJLeAfT02Ys72zUzVeAVb/PCrooR/WDqF2SQH2CyeZjneHZsrDREfsZi7Q9ZSUCdd8jC686EIlLik2l5XDWNmFDHJMLueiakszRIgPBl/zS8W/bnxNOMFHEoBAEGZJhCLJ6JAQOyunH2TOUECifQztyqppP8imDTkq3hH2KnyRms+Hlo/Tg/tYEWd0uH3Vjo8N8sXgb7EXOfuPAtXM+1TNWnk2xVLTfzYEkR1dEAeDmShuBegC8OvaIRPpCu0bbuZRkeY2+F9DT0NMQoZ3uluOiMevW5mbeZdToSl5BF9fNsADVz3PrM28f07hkuadIiq0tZMyTYkcL+2ttb4TilEE3EeYQNTCZgwXwvHTFzLsIMUwtnj+t7B1w/JqRCu7OP/yXbFY0XAL8cYfxKT4ufsUqkm/hkgUIZBXH9COVwBnNBDKEPlmr1gwIzZphgGrBfU+j5mWszRCFc0ExWQhHFmZsJ/b6TDXajjtVEgsWUH9tuJZlegjpV5tfySbbCPXIJQ3GBaDORBlTCDuxajbG1oKckqU/coDm+p6U1PohFd3JMd1TP/EcGmFtz4ZA8fVFzvqgsMBYj9F71riObT8RXW39eg23k50kMTYrxu/+ZQpUMtaJLRvZueg252keFLH5dSW/KESMkEv+ZsTA/a+C1q1FGL0wmjrMlebd6W+Z0mHucgjObrhR8KiewFeRQ8yZ6pcqKp4/MO8kHkkv0hv1lgAu9qjA29BAOm7pore3oEO53GChToJlfwx2TE5yurqAqXJFAhGEYfNhJ528/srYNRvdQw5L2EfQgcUpab6eM8hrLZfZ15BYHXFzqiWsRDtl2cJ6XGMi70JYOy8OpJW15wTQD0bPPwRud6nAOBb0wB5vnN6l6IWaYY6QnME73thkjZcRx+nm++C77WcE4CpAeF+BhvFiHCbP9fcumClj97yKevsnWoI3dPm2ifoY/bMSMAzVU4wUD968TUCvg75bprSNTXDIfBOWW27/49FJtBedhdZCfJi+NUoCwtTVFinZ1OjNNQ7k4P5FP7xjxdkG3CmPwc6JL+qG9a2nfuyU/+uSbInlp
X-Forefront-Antispam-Report:
CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PUZPR06MB5676.apcprd06.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(52116014)(376014)(7416014)(366016)(1800799024)(38350700014)(921020);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
bj6yUm/OOmZuWbBLG/jTIV9+F1aFNIkvU++eiimxUHJex47cR45QrBW8nFUuCNY8WfZSsykpVxQxlaGslClvxc2rAJZw8RKqipOei+UMKJQaCslCWq99IMScnjQfqza/WL/Qr/x1m3HHOuIlgx4k9yPjhi/sMW8kNKWCCgVMwxwChEuU3rMYux+kH+kbrPr3AM+eD67nnidHFiS11msuxOfapE1McU+HNGB1a3sdGi9sJ7Sh5+gdkM/5ktjL/fbCoSix2lmPM+XNGWBxx1/3tUnhwXuOXNEQbWQnizJxYuQqSThwFPDRZfRNLxik/lanS7Gp7n/auDx6+oT5IxPHE3hcBd9bzK9VZErM86YnI24WasfsyfupZ8A7CttuYFjwlmA+prLtU7VriW/p6kHa//zZpfzZF/Yo7whtC0B7JJTVBlTVokRxJlj8WGALaii+6tNSzbCj0nVWrrlcx/RqpcXbUgCIg1LcGOg1Hggd6yaGrrqaXU+L8hnTIq7y9i4Fg4rNkyhvzZuDxbbJtjnQgJaL6lYbkSJkgiU03omQpJK1pRkkw1bhsjCHbBLsLKWonVGH+K7T6DKzIvjtVpUGvXDsI4CeySN1ee3rWdxm1ZuIfTqpxPhvxwA7Wh8mcOChbTLms2ofFoLJHJyN2wnlVuEJeZ19Lh/DxKoSvq6poKr9HXdZwmptJeaxSQVUkl6YMPc/CCKajYJyg/OyJrkor1cZcJPuAd1apjZJrTrjGvlFY9hpE7UzvTi0uAKIhSpxhKUYI0QsZ8AUSh5npkJcLSC+JcVidWodp7acvyWzrBvoOD9ZOHspdzgzmbDCGDdjPzlSLvUvgR7/rZrK2b52U9Oomt29V1KoKIz2PQ8h9lZlBreAZd8L9dweJHaepY678RblhClSil7Bekc9a1ik28zYwVY7VjT23+f12LRRKBdMQJN4Vttbk7wA8TXJ9skFAY3JMKIZzJonJEl1yd1c+jkZs+PkZOUv5qz1wXEBdagR4qAZ/U6b3LkU30Fqf5m/hljQdFzPCftM/3i+LU3MVQ/vG7JF+bsXNsegtfXu2cRRwnYT77h7i/iqr3pbwVtEmaxmWcH0ctehm01tJrNl5teFOMFORuOIio+ouseqYMXCP576t6yddMvnpDHyuq4bvDx1eQt0eaT7hCuI18iTDLW1lOMLTeeIfLVcdx24RVYKxpLZquV0vFJXG/QFA6oT3Tpxq/uGslr4OusmKtKqgRBVeMSKHH/+yJT3ANStx12U7erozeEbOnuR0z4ha+uICCy4xdP9SYaMxr3qEIVCNsMJ8q/v9UbQElOxp3+yTNehnUwFZKIgFYdM70iv74Z5EGEtf8YgBEbCaOne4L/o9kaWOIkGUzPmW0nCco0p1DAVd5S6Hu4nj21EOvt/06oW/h+DTGPBQJ7gCJSN7OIfvT5fLBOvr4vf1/ACGEfCFTsqhtZzIt25yjoVXmRdP44RX7oIGCn5W/x5DM8YUMKjTmSLhLntUh3IemPlJI+EUZMnbwYpN92GS1UOSTCxdV8L9M5D2GCvnDI/T+cqGGncBx+kT5FIiCOCiRQgEiPkkQa31643GkTzB7nqhjs9oWZW
X-OriginatorOrg: vivo.com
X-MS-Exchange-CrossTenant-Network-Message-Id:
be6d0497-bedb-439d-4084-08dd7bcbe5e9
X-MS-Exchange-CrossTenant-AuthSource: PUZPR06MB5676.apcprd06.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Apr 2025 03:16:22.3968
(UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 923e42dc-48d5-4cbe-b582-1a797a6412ed
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName:
vwf2WDr+FA3nxQed5GdGO9z1TzlWS42kKGd+yYQ/nVnz23g/hf0ba7SYrOBVjsC4340WkXwCcjfxHLjpIzbkbA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: TY0PR06MB4984
This reverts commit 18d7de823b7150344d242c3677e65d68c5271b04.
This given a misuse of vmap_pfn, vmap_pfn only allow none-page based
user invoke, i.e. PCIe BARs and other.
Signed-off-by: Huan Yang
Reported-by: Bingbu Cao
Closes: https://lore.kernel.org/dri-devel/eb7e0137-3508-4287-98c4-816c5fd98e10@vivo.com/T/#mbda4f64a3532b32e061f4e8763bc8e307bea3ca8
---
drivers/dma-buf/Kconfig | 1 -
drivers/dma-buf/udmabuf.c | 22 +++++++---------------
2 files changed, 7 insertions(+), 16 deletions(-)
diff --git a/drivers/dma-buf/Kconfig b/drivers/dma-buf/Kconfig
index fee04fdb0822..b46eb8a552d7 100644
--- a/drivers/dma-buf/Kconfig
+++ b/drivers/dma-buf/Kconfig
@@ -36,7 +36,6 @@ config UDMABUF
depends on DMA_SHARED_BUFFER
depends on MEMFD_CREATE || COMPILE_TEST
depends on MMU
- select VMAP_PFN
help
A driver to let userspace turn memfd regions into dma-bufs.
Qemu can use this to create host dmabufs for guest framebuffers.
diff --git a/drivers/dma-buf/udmabuf.c b/drivers/dma-buf/udmabuf.c
index 7eee3eb47a8e..79845565089d 100644
--- a/drivers/dma-buf/udmabuf.c
+++ b/drivers/dma-buf/udmabuf.c
@@ -109,29 +109,21 @@ static int mmap_udmabuf(struct dma_buf *buf, struct vm_area_struct *vma)
static int vmap_udmabuf(struct dma_buf *buf, struct iosys_map *map)
{
struct udmabuf *ubuf = buf->priv;
- unsigned long *pfns;
+ struct page **pages;
void *vaddr;
pgoff_t pg;
dma_resv_assert_held(buf->resv);
- /**
- * HVO may free tail pages, so just use pfn to map each folio
- * into vmalloc area.
- */
- pfns = kvmalloc_array(ubuf->pagecount, sizeof(*pfns), GFP_KERNEL);
- if (!pfns)
+ pages = kvmalloc_array(ubuf->pagecount, sizeof(*pages), GFP_KERNEL);
+ if (!pages)
return -ENOMEM;
- for (pg = 0; pg < ubuf->pagecount; pg++) {
- unsigned long pfn = folio_pfn(ubuf->folios[pg]);
-
- pfn += ubuf->offsets[pg] >> PAGE_SHIFT;
- pfns[pg] = pfn;
- }
+ for (pg = 0; pg < ubuf->pagecount; pg++)
+ pages[pg] = &ubuf->folios[pg]->page;
- vaddr = vmap_pfn(pfns, ubuf->pagecount, PAGE_KERNEL);
- kvfree(pfns);
+ vaddr = vm_map_ram(pages, ubuf->pagecount, -1);
+ kvfree(pages);
if (!vaddr)
return -EINVAL;
From patchwork Tue Apr 15 03:15:47 2025
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
X-Patchwork-Submitter: Huan Yang
X-Patchwork-Id: 14051406
Received: from HK3PR03CU002.outbound.protection.outlook.com
(mail-eastasiaazon11011045.outbound.protection.outlook.com [52.101.129.45])
(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
(No client certificate requested)
by smtp.subspace.kernel.org (Postfix) with ESMTPS id 75265211A23;
Tue, 15 Apr 2025 03:16:30 +0000 (UTC)
Authentication-Results: smtp.subspace.kernel.org;
arc=fail smtp.client-ip=52.101.129.45
ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;
t=1744686992; cv=fail;
b=YOM3Nd5zCYpuJS9GnX/V8Kfm+k+dy1bh6PWtxmzl7ktyYMfHmR5LFKl8Ol45gINNWYJWyMJrXfIaN4EpXrOxW1wcL0oHxk4T3qI38n71Dom1/7g3kgipjk2fjEBv0JoPtd8RhWaNXRCzcudSb0lzzzG74yxKoPWA+XaWS8BIV+s=
ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org;
s=arc-20240116; t=1744686992; c=relaxed/simple;
bh=KAGEXMFda9D22XbnS5qMSWOkqnzRz1mC02+FEheoiVM=;
h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References:
Content-Type:MIME-Version;
b=RVIC3c1lYBImEHHOfbloQvthGrsI1UnqPc26+Ia2CS0LeofFEsjk9liv16eDQtZ2HSRkeCW0tTjyOFuOHcbILIKKreR+jZFGCsLkYvM2al6QKFNNgYI18fgclYX/4LniafYbOKDpgW6qK2eQ6gOCu/1cJM5rDFCYqchNvTNHIhc=
ARC-Authentication-Results: i=2; smtp.subspace.kernel.org;
dmarc=pass (p=quarantine dis=none) header.from=vivo.com;
spf=pass smtp.mailfrom=vivo.com;
dkim=pass (2048-bit key) header.d=vivo.com header.i=@vivo.com
header.b=RtMIpINU; arc=fail smtp.client-ip=52.101.129.45
Authentication-Results: smtp.subspace.kernel.org;
dmarc=pass (p=quarantine dis=none) header.from=vivo.com
Authentication-Results: smtp.subspace.kernel.org;
spf=pass smtp.mailfrom=vivo.com
Authentication-Results: smtp.subspace.kernel.org;
dkim=pass (2048-bit key) header.d=vivo.com header.i=@vivo.com
header.b="RtMIpINU"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;
b=Bh6Rz9bs1fd1XVIvN1wOIIb4ZPPyxt4IY0JuzaAxnXgfiC40MLqkyOo7bYJJOXFqcyUF4LUNp2o4f42tZtXtcpnbiJuP4iUmlI9bueOx7ubL0IizEZlCXDzLf9hpbe7TsDZWLtQWeOWM4MHjZPqLzzk7776ce5bdI7RlgADXtUSSi/yVfuHBZHDzo+s+jY2b3CAnRAkqUhAZXVtedX8pTiCihVhfdxqNamVOamo00Wov8zia5cMhtICSdwR+gcMOMTe9WEgoEK5WxZYVPRQriFasMaoPhCl5hR5xvJsnc5fBLzRWeaW7iTHhIzXp8R4AAOTc7jabGQHNKMqMgTx/kg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
s=arcselector10001;
h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
bh=u5zygPXH6v5K0gRIijjami72BuRI2k/5i+WkCw8IEVg=;
b=fgE9OCQoYj438d3e9POCDcCJAmES0i3ZrYXudc0zzXNoPR27qLWK6sG33Wu73ZWAgeCvWTdE9VqzsrgQRyYm/CsFOR8OJtMM++ormxXAh+7cwYGRR67xIiqE5vaeDfrv07XMc7xeCuk+7iLyQVuHgL6AvnMW7pBLd+e64XwVA8yqOnoWv7aNu7v7ujWT7KEQMfih15xQzB6pn6cIMHIfUmvrZlmleZdsdwi38gspt36cgNEIgg93ruLMUqfFVCL45HdvXAE/fxe0NTpY1sElLKnv32hmetyotEJwCLsYJJWTMSuVnl6g68GWC1s009AE9WB2GxA27HT3EW6BOqkewg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
smtp.mailfrom=vivo.com; dmarc=pass action=none header.from=vivo.com;
dkim=pass header.d=vivo.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vivo.com; s=selector2;
h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
bh=u5zygPXH6v5K0gRIijjami72BuRI2k/5i+WkCw8IEVg=;
b=RtMIpINUM1C2ICLMG7YGODtGlfZ0te7jMrUi1F7DAOoYHQ3aiVosG1j11Hgk8vJWGh88BYXjOqQzPZoD4b5D7VyD6b/QzsDUGBy69pmZFs/iVoJp+ZF8FLaUjbp5e5uWHOhx71JjsNPOVKw1lCH+fSDO3CAR1gVJpnpgPddT5T2WwU+gDjg5c7kGExAeImJSbQZr1Vi3nYX7WQ1xMgkNNHbk/qHVKPOeZLfHTOATl0Mb/Kg7z2jDYFkHDwSz48rRxSJViyekHr4NCtDiJI6Ku9pkTrUHCBJ6c/6yd2g6KJQdZFjGsvyf7D0S+7LwsW70Fxj5utfEuZER9oQCgQjWpw==
Authentication-Results: dkim=none (message not signed)
header.d=none;dmarc=none action=none header.from=vivo.com;
Received: from PUZPR06MB5676.apcprd06.prod.outlook.com (2603:1096:301:f8::10)
by TY0PR06MB4984.apcprd06.prod.outlook.com (2603:1096:400:1ac::13) with
Microsoft SMTP Server (version=TLS1_2,
cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8632.27; Tue, 15 Apr
2025 03:16:24 +0000
Received: from PUZPR06MB5676.apcprd06.prod.outlook.com
([fe80::a00b:f422:ac44:636f]) by PUZPR06MB5676.apcprd06.prod.outlook.com
([fe80::a00b:f422:ac44:636f%6]) with mapi id 15.20.8632.036; Tue, 15 Apr 2025
03:16:24 +0000
From: Huan Yang
To: Sumit Semwal ,
=?utf-8?q?Christian_K=C3=B6nig?= ,
Gerd Hoffmann ,
Vivek Kasireddy ,
Andrew Morton , Dave Airlie ,
linux-media@vger.kernel.org, dri-devel@lists.freedesktop.org,
linaro-mm-sig@lists.linaro.org, linux-kernel@vger.kernel.org
Cc: opensource.kernel@vivo.com,
Huan Yang
Subject: [PATCH 2/2] udmabuf: fix vmap missed offset page
Date: Tue, 15 Apr 2025 11:15:47 +0800
Message-ID: <20250415031548.2007942-3-link@vivo.com>
X-Mailer: git-send-email 2.48.1
In-Reply-To: <20250415031548.2007942-1-link@vivo.com>
References: <20250415031548.2007942-1-link@vivo.com>
X-ClientProxiedBy: SI2P153CA0011.APCP153.PROD.OUTLOOK.COM
(2603:1096:4:140::14) To PUZPR06MB5676.apcprd06.prod.outlook.com
(2603:1096:301:f8::10)
Precedence: bulk
X-Mailing-List: linux-media@vger.kernel.org
List-Id:
List-Subscribe:
List-Unsubscribe:
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: PUZPR06MB5676:EE_|TY0PR06MB4984:EE_
X-MS-Office365-Filtering-Correlation-Id: 7e410317-836e-43ca-3979-08dd7bcbe74f
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam:
BCL:0;ARA:13230040|52116014|376014|7416014|366016|1800799024|38350700014|921020;
X-Microsoft-Antispam-Message-Info:
NwgMjPXX2ewii741mlts7leT74NXp+5yLSsGZRZORfahOi5mvyBMmNTqQBUoT7Od2Wc/RwmhDjtiwCHC1FJ2jQC6p0pEVCuDohkJbYh7NAxFR93CKYVhndBHf+gCetn6o8AbVqP2Gzt7v6TiX9bQmbyn/gqmNzWceXXDxEiBsJsjltlaJ1w0AKd0sVkHovB6Az5e/JB+FffPgekf+xxQ5CUKPWysXE443rculBQxGWgQiAyewARP87Ku/Gfb33u4M1X9jI8yIGHeMXJZlWvPAz6/rirO80oXnlFi7YNpSFqBrb59jipzsFX/WenRrsooVXAvRMcoUj8npD267VVitT5mIVCwg0mxnidnqes2IkoERH67kKyJgH4VXc0Px31xZDOmg/CAVbBPZjdDwOb1OlkKmTVvgdKNC7hzwwN2+9nR6pUXoPG0Yg8Suht2+iBIZXNm17CGjAVWVsP1FP3n8JQ7Aibd2dB/YKYJIungGxpWf5SxGHVM2VyoyIXLQH2cPUhmvxGJHeapJN22NCgYCt8YFv7HGSkDsKe4SEY1BFBmYpSovFFnw7YZJ+5Y5wQuQWRVbnhNdWzfjTNqXXSBD1XzRkfhRjq6BTnX1Dby1uoh5ZfxijEtbG57NbmeRNCgCrRPSrvnGQzXmCE7mioiyW3tIt62XYTFV5z2inExX6IRXaShRTmaqr/IfE0fQfgpck8jLDeJuXnbqMGQBcrke3wgximdcd3phbI8aJBDv4t8zAysOsrkq8l90UBXSImc+pv+9u+DjwigINS8w08wO6kVZz6rnSdiX0YHCCDZH7y0HiFevYEDP1+uOk3XkhqnGOuhatVCuzzXKRgWR896xT1XURZoyrJayK8DZXovE4Uj7Da59GrHgxyCSR1fF5rMAGcpQrcp+5zCvkbl3gp1nTYb+gMszCd2rzHeoa/ATPbcYJARttGfR3gIwxJGREY5MjusQxHj8/0PtK6jbUq5Fvql5aswxB1oALmVjZkkg9fK0EDC1mdAKDla7D3u8589YmglkQiSbbObDGDX8609fuhwOlgUINzQQRbzetOe+E8GuV+NTsGJzMz+k3m1kBMDW746eiQiaUjaU/zkJdD9plxpw7SMBOxlhPma5XA92+SaegdN8LVnwkjX7xpWISCo7gVdwQXHEGaYqgTDicDIR7eHoCvdpFKHMLr1XDwKadbcFN5xv4ZHL7oUFNXox0VAhj5HLkgRMWW1d5N7CoPLaUFOk0wOc/X31Zxw/UYXlZZTdDq50sep0slaTvWhHNuRmo9gf4hYfD+c68oXVYut3PMgiTWovkMlZz0AFoDYn75yaybJKNAli/mMecY8tMAxJn/tB/XT+zwkjXOWEnN5ZNfpRIaa8x35Ra5JJMQXcEX/j0P0fkQi4F9UOyFjGzko8cYnfESOvjQCTXQXxTCs/1e+0/xEthclWUJ2FFEjJlcbLs7ur2l6VB3I8+0DYYWtNQnCKIXwLP9tZQLxBwhuLl+WxGrmp40gO0Z1vJdQHWQ=
X-Forefront-Antispam-Report:
CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PUZPR06MB5676.apcprd06.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(52116014)(376014)(7416014)(366016)(1800799024)(38350700014)(921020);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
My4zz78rWETKkTmPfqicczH4dHT+EehORJ8PJ8yVkFsthXVnP3em3rHAkh1LXFcLQU0C3qdXz4W9po7Sl9IqGzrLqjAzk4uFglKgBaWfpPzW8zRIp9DPpDAG/B1a3jDzWqYzgnZipCfaYAbxz84bIIvkEkDZTMKAnn5pS+PR+D+6FQ+2Qr3pi9/OtJnvXKVLDAEv7qMdfJp75peTvpybVxEnWa38A8NJO2dedUZLnJNX4s6AW/imxkaJvEQGPTqhgVNDGXaL/N4a3q8E/4pKpF+FFhxzd9dpQ8Ne5zCONjDylW5gz66jyKAAWLnQ/4jwLXlcscJu5V6dCI+2ZYKe91V1JvXG7FNA5fjtNlMslyiCUWlJqV9rmSCOl6+mityszBy2o97q91tR33dM+seLjq/b8ZRGSJunHDhAAusZnA97qcchgLfGjseocudNruo0qcGv7Bvo+PKOUg/F2HS23V4Ix7FWOHVaJ/TDpmX+4CodSxXPqyuEg3+ecpUMt2n4JMK/Dl0T81+suB+xKNTMIVkFPklFS5Ydc+YvfYUFRzhkyFnv0vRgKphpHz2tvbn8CnRi8hmVeoNovWguwN0mHO7YmCCFMipNvSxM9VNUlm94mDuVmVwQkN5f6Y5RTTmN5/35DswMQeLpn/V+dCCjd486689TMB3ET+nI5HovZiqmpkJRiEmPdNbGKg4b5dRpusu0bTGM4wjyWgHbQtvTdGCAoWLT98Ecgn0F3hvYb+gxDTho4TFg72VBF60IaogiyMMXG1bgj0Ugzc6flXOFMpFvNIBm/O/Fy78Pr8cpHuk6rty7/J3Tgpu1wCRfDmHJCbr2Y0VPIVykz0hNYtdFuMzrNTrPgEDlkyVXHlVDbO6xRoRCiZG1MgUfXbKOu5sfkXDNkDiR/K1Ao7btUTHnQ1qaaSC4oiS2/jbEY9oOsKS/NJJeH6bXsF+TgDWCTi7pajgjPg4bUbRxWSLvzIDE+LERpvs2+o36U3UpMU4WbVnvVb6lyKpTR0o9ykIOUricFX/bvoMipbZo3d+CZcVM3AeXC/da9SoCr4ykMkFHvyJ0mhWYz65PY2htnVXwC5/Qee08X42wYcVqOO6b7Qw08dHwPRzlFbVij0tEXdjb83FK1i63F5rUEj3tA/6q0Pj8w752HvxePWhz01tBTCWfzjy4bItby6ZNtTRQD99fICrfuU7FztaKyGijy2xGuiSr8mBC0EmwTrF4PryAotMWDMtEiEKiQ9o8rLvwRBcHbfhjDaSaqLi7wyDj1qwoJv1tQSjerPv/z/9ycvPeaNz1eCx69bzwi/6QZ1jUvJ8aAGupz6qtRVliSi7l4htjAL3FPJModi69V5yZU+jFmmUrOaqkh2aLVrpy2L+DRckOjYSSDmTzxqRlnreKaQUGRKB1E7NnMATD/Psgy/X1HvL9MWH5b5j20Bea1NdcsbOMmHy2hJJ+6qvyExne3nDg63AMHitHm71DHIpiOpLF2x705Uaa28YzaGJpeVBg6jCRkHnWdRGsFbJWJ7TTVYex2aO+2vYDTpBzh1VZC4g6oIkiZnZu0lRLgOm12ZwQoXPYBEWrOa6QH68yiejgjnzeBrud
X-OriginatorOrg: vivo.com
X-MS-Exchange-CrossTenant-Network-Message-Id:
7e410317-836e-43ca-3979-08dd7bcbe74f
X-MS-Exchange-CrossTenant-AuthSource: PUZPR06MB5676.apcprd06.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Apr 2025 03:16:24.8009
(UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 923e42dc-48d5-4cbe-b582-1a797a6412ed
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName:
HavBAu4GPE1S8qmZKTjcxLTajUGswyq0U9xvISkKI5iZHrSffZIgaw5TiYsya5N23mHdxkAPLy9GK+aHqmIX7A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: TY0PR06MB4984
Before invoke vmap, we need offer a pages pointer array which each page
need to map in vmalloc area.
But currently vmap_udmabuf only set each folio's head page into pages,
missed each offset pages when iter.
This patch set the correctly offset page in each folio into array.
Signed-off-by: Huan Yang
Fixes: 5e72b2b41a21 ("udmabuf: convert udmabuf driver to use folios")
---
drivers/dma-buf/udmabuf.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/dma-buf/udmabuf.c b/drivers/dma-buf/udmabuf.c
index 79845565089d..af5200e360a6 100644
--- a/drivers/dma-buf/udmabuf.c
+++ b/drivers/dma-buf/udmabuf.c
@@ -120,7 +120,8 @@ static int vmap_udmabuf(struct dma_buf *buf, struct iosys_map *map)
return -ENOMEM;
for (pg = 0; pg < ubuf->pagecount; pg++)
- pages[pg] = &ubuf->folios[pg]->page;
+ pages[pg] = folio_page(ubuf->folios[pg],
+ ubuf->offsets[pg] >> PAGE_SHIFT);
vaddr = vm_map_ram(pages, ubuf->pagecount, -1);
kvfree(pages);