[<prev] [next>] [day] [month] [year] [list]
Message-ID: <5b7ed5a152307c7df3dbcf39b32b7c23fd8f522f.1765730638.git.christophe.jaillet@wanadoo.fr>
Date: Sun, 14 Dec 2025 17:44:14 +0100
From: Christophe JAILLET <christophe.jaillet@...adoo.fr>
To: Alexander Aring <aahringo@...hat.com>,
David Teigland <teigland@...hat.com>
Cc: linux-kernel@...r.kernel.org,
kernel-janitors@...r.kernel.org,
Christophe JAILLET <christophe.jaillet@...adoo.fr>,
gfs2@...ts.linux.dev
Subject: [PATCH] dlm: Constify struct configfs_item_operations and configfs_group_operations
'struct configfs_item_operations' and 'configfs_group_operations' are not
modified in this driver.
Constifying these structures moves some data to a read-only section, so
increases overall security, especially when the structure holds some
function pointers.
On a x86_64, with allmodconfig, as an example:
Before:
======
text data bss dec hex filename
29436 12952 384 42772 a714 fs/dlm/config.o
After:
=====
text data bss dec hex filename
30076 12312 384 42772 a714 fs/dlm/config.o
Signed-off-by: Christophe JAILLET <christophe.jaillet@...adoo.fr>
---
Compile tested only.
This change is possible since commits f2f36500a63b and f7f78098690d.
---
fs/dlm/config.c | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/fs/dlm/config.c b/fs/dlm/config.c
index a0d75b5c83c6..82cc3215663f 100644
--- a/fs/dlm/config.c
+++ b/fs/dlm/config.c
@@ -324,39 +324,39 @@ struct dlm_member_gone {
struct list_head list; /* space->members_gone */
};
-static struct configfs_group_operations clusters_ops = {
+static const struct configfs_group_operations clusters_ops = {
.make_group = make_cluster,
.drop_item = drop_cluster,
};
-static struct configfs_item_operations cluster_ops = {
+static const struct configfs_item_operations cluster_ops = {
.release = release_cluster,
};
-static struct configfs_group_operations spaces_ops = {
+static const struct configfs_group_operations spaces_ops = {
.make_group = make_space,
.drop_item = drop_space,
};
-static struct configfs_item_operations space_ops = {
+static const struct configfs_item_operations space_ops = {
.release = release_space,
};
-static struct configfs_group_operations comms_ops = {
+static const struct configfs_group_operations comms_ops = {
.make_item = make_comm,
.drop_item = drop_comm,
};
-static struct configfs_item_operations comm_ops = {
+static const struct configfs_item_operations comm_ops = {
.release = release_comm,
};
-static struct configfs_group_operations nodes_ops = {
+static const struct configfs_group_operations nodes_ops = {
.make_item = make_node,
.drop_item = drop_node,
};
-static struct configfs_item_operations node_ops = {
+static const struct configfs_item_operations node_ops = {
.release = release_node,
};
--
2.52.0
Powered by blists - more mailing lists