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 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 smtp.lore.kernel.org (Postfix) with ESMTPS id EF125CCA471 for ; Mon, 29 Sep 2025 20:05:03 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 2CB2D10E49B; Mon, 29 Sep 2025 20:05:03 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=collabora.com header.i=@collabora.com header.b="FaSddbAa"; dkim-atps=neutral Received: from bali.collaboradmins.com (bali.collaboradmins.com [148.251.105.195]) by gabe.freedesktop.org (Postfix) with ESMTPS id 8DA6B10E498; Mon, 29 Sep 2025 20:04:49 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1759176287; bh=8a0+2vCJjyXNTtdJZlFvg8lNK8djtqhRGCpzH9ay818=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=FaSddbAanvCPQ3ohMTVyKMYG4OP06ihGPZDgza9EwKFh7wuuRinArtJpx2ua/06cr brl58VRNx3tPr4j7uDQg6pRbbmVPjtgVfrGXpg9vMNtA9loeitCpQAqSYcsILQzGUn UHVdX77Slebrdm3ybibqtfEbGGz+PZrLrSJVKABMIwtoE1WBRmf+mBEqP4YnJJAdU9 /6gV5hEADEX3xkIYZ/IV2mXJzjvdaYxs3OtC2wabBY/PRjIPPUZaR9ae4QU3URLwlz L6nZTLMlQVxby2Ft49+qz4n1ZdN1pVGMASTObXiEINLy+beXm2Zhl8cqjH3Psys3Ob EsPLr8wt/Gpcg== Received: from debian-rockchip-rock5b-rk3588.. (unknown [IPv6:2a01:e0a:5e3:6100:826d:bc07:e98c:84a]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: loicmolinari) by bali.collaboradmins.com (Postfix) with ESMTPSA id 100FE17E02B0; Mon, 29 Sep 2025 22:04:47 +0200 (CEST) From: =?UTF-8?q?Lo=C3=AFc=20Molinari?= To: Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , Jani Nikula , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , Boris Brezillon , Rob Herring , Steven Price , Liviu Dudau , Melissa Wen , =?UTF-8?q?Ma=C3=ADra=20Canal?= , Hugh Dickins , Baolin Wang , Andrew Morton , =?UTF-8?q?Lo=C3=AFc=20Molinari?= , Al Viro , =?UTF-8?q?Miko=C5=82aj=20Wasiak?= , Christian Brauner , Nitin Gote , Andi Shyti Cc: linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org, linux-mm@kvack.org, kernel@collabora.com Subject: [PATCH 5/8] drm/v3d: Use huge tmpfs mount point helpers Date: Mon, 29 Sep 2025 22:03:13 +0200 Message-ID: <20250929200316.18417-6-loic.molinari@collabora.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20250929200316.18417-1-loic.molinari@collabora.com> References: <20250929200316.18417-1-loic.molinari@collabora.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" Make use of the new drm_gem_shmem_huge_mnt_create() and drm_gem_shmem_huge_mnt_free() helpers to avoid code duplication. drm_gem_shmem_huge_mnt_free() handles NULL pointers. Signed-off-by: Loïc Molinari --- drivers/gpu/drm/v3d/v3d_gemfs.c | 31 +++---------------------------- 1 file changed, 3 insertions(+), 28 deletions(-) diff --git a/drivers/gpu/drm/v3d/v3d_gemfs.c b/drivers/gpu/drm/v3d/v3d_gemfs.c index 8ec6ed82b3d9..f54705dba217 100644 --- a/drivers/gpu/drm/v3d/v3d_gemfs.c +++ b/drivers/gpu/drm/v3d/v3d_gemfs.c @@ -1,23 +1,11 @@ // SPDX-License-Identifier: GPL-2.0+ /* Copyright (C) 2024 Raspberry Pi */ -#include -#include -#include - #include "v3d_drv.h" -static int add_param(struct fs_context *fc, const char *key, const char *val) -{ - return vfs_parse_fs_string(fc, key, val, strlen(val)); -} - void v3d_gemfs_init(struct v3d_dev *v3d) { - struct file_system_type *type; - struct fs_context *fc; struct vfsmount *gemfs; - int ret; /* * By creating our own shmemfs mountpoint, we can pass in @@ -31,20 +19,8 @@ void v3d_gemfs_init(struct v3d_dev *v3d) if (!super_pages) goto err; - type = get_fs_type("tmpfs"); - if (!type) - goto err; - - fc = fs_context_for_mount(type, SB_KERNMOUNT); - if (IS_ERR(fc)) - goto err; - ret = add_param(fc, "source", "tmpfs"); - if (!ret) - ret = add_param(fc, "huge", "within_size"); - if (!ret) - gemfs = fc_mount_longterm(fc); - put_fs_context(fc); - if (ret) + gemfs = drm_gem_shmem_huge_mnt_create("within_size"); + if (IS_ERR(gemfs)) goto err; v3d->gemfs = gemfs; @@ -60,6 +36,5 @@ void v3d_gemfs_init(struct v3d_dev *v3d) void v3d_gemfs_fini(struct v3d_dev *v3d) { - if (v3d->gemfs) - kern_unmount(v3d->gemfs); + drm_gem_shmem_huge_mnt_free(v3d->gemfs); } -- 2.47.3