mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-07-26 06:46:59 +08:00

These patches were generated from: https://github.com/raspberrypi/linux/commits/rpi-6.12.y With the following command: git format-patch -N v6.12.27..HEAD (HEAD -> 8d3206ee456a5ecdf9ddbfd8e5e231e4f0cd716e) Exceptions: - (def)configs patches - github workflows patches - applied & reverted patches - readme patches - wireless patches Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
63 lines
2.0 KiB
Diff
63 lines
2.0 KiB
Diff
From 53aa50017a2d7f730d4aae4bea41619d7a92bb03 Mon Sep 17 00:00:00 2001
|
|
From: =?UTF-8?q?Ma=C3=ADra=20Canal?= <mcanal@igalia.com>
|
|
Date: Mon, 23 Sep 2024 10:55:14 -0300
|
|
Subject: [PATCH] drm/v3d: Add modparam for turning off Big/Super Pages
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=UTF-8
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
Commit 0df4a13ca8bed29cbc362c99b958fbb8b27b1675 upstream
|
|
|
|
Add a modparam for turning off Big/Super Pages to make sure that if an
|
|
user doesn't want Big/Super Pages enabled, it can disabled it by setting
|
|
the modparam to false.
|
|
|
|
Signed-off-by: Maíra Canal <mcanal@igalia.com>
|
|
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
|
|
Link: https://patchwork.freedesktop.org/patch/msgid/20240923141348.2422499-11-mcanal@igalia.com
|
|
---
|
|
drivers/gpu/drm/v3d/v3d_drv.c | 7 +++++++
|
|
drivers/gpu/drm/v3d/v3d_drv.h | 1 +
|
|
drivers/gpu/drm/v3d/v3d_gemfs.c | 4 ++++
|
|
3 files changed, 12 insertions(+)
|
|
|
|
--- a/drivers/gpu/drm/v3d/v3d_drv.c
|
|
+++ b/drivers/gpu/drm/v3d/v3d_drv.c
|
|
@@ -40,6 +40,13 @@
|
|
#define DRIVER_MINOR 0
|
|
#define DRIVER_PATCHLEVEL 0
|
|
|
|
+/* Only expose the `super_pages` modparam if THP is enabled. */
|
|
+#ifdef CONFIG_TRANSPARENT_HUGEPAGE
|
|
+bool super_pages = true;
|
|
+module_param_named(super_pages, super_pages, bool, 0400);
|
|
+MODULE_PARM_DESC(super_pages, "Enable/Disable Super Pages support.");
|
|
+#endif
|
|
+
|
|
static int v3d_get_param_ioctl(struct drm_device *dev, void *data,
|
|
struct drm_file *file_priv)
|
|
{
|
|
--- a/drivers/gpu/drm/v3d/v3d_drv.h
|
|
+++ b/drivers/gpu/drm/v3d/v3d_drv.h
|
|
@@ -545,6 +545,7 @@ void v3d_invalidate_caches(struct v3d_de
|
|
void v3d_clean_caches(struct v3d_dev *v3d);
|
|
|
|
/* v3d_gemfs.c */
|
|
+extern bool super_pages;
|
|
void v3d_gemfs_init(struct v3d_dev *v3d);
|
|
void v3d_gemfs_fini(struct v3d_dev *v3d);
|
|
|
|
--- a/drivers/gpu/drm/v3d/v3d_gemfs.c
|
|
+++ b/drivers/gpu/drm/v3d/v3d_gemfs.c
|
|
@@ -20,6 +20,10 @@ void v3d_gemfs_init(struct v3d_dev *v3d)
|
|
if (!IS_ENABLED(CONFIG_TRANSPARENT_HUGEPAGE))
|
|
goto err;
|
|
|
|
+ /* The user doesn't want to enable Super Pages */
|
|
+ if (!super_pages)
|
|
+ goto err;
|
|
+
|
|
type = get_fs_type("tmpfs");
|
|
if (!type)
|
|
goto err;
|