Message ID | 9c205b2b4bdb09fc9e9d2cb2f2936ec053da1b1b.1723325900.git.christophe.jaillet@wanadoo.fr (mailing list archive) |
---|---|
State | Accepted |
Commit | ed4290f39f417793928630e85c26411db233d841 |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [net-next] net: netconsole: Constify struct config_item_type | expand |
Hello Christophe, On Sat, Aug 10, 2024 at 11:39:04PM +0200, Christophe JAILLET wrote: > 'struct config_item_type' is not modified in this driver. > > This structure is only used with config_group_init_type_name() which takes > a const struct config_item_type* as a 3rd argument. > > This also makes things consistent with 'netconsole_target_type' witch is > already const. > > Constifying this structure moves some data to a read-only section, so > increase overall security, especially when the structure holds some > function pointers. > > On a x86_64, with allmodconfig: > Before: > ====== > text data bss dec hex filename > 33007 3952 1312 38271 957f drivers/net/netconsole.o > > After: > ===== > text data bss dec hex filename > 33071 3888 1312 38271 957f drivers/net/netconsole.o > > Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Reviewed-by: Breno Leitao <leitao@debian.org> > Compile tested-only. I've tested it using a selftime I am creating, and it is all good. Thanks for the patch! --breno
Hello: This patch was applied to netdev/net-next.git (main) by Jakub Kicinski <kuba@kernel.org>: On Sat, 10 Aug 2024 23:39:04 +0200 you wrote: > 'struct config_item_type' is not modified in this driver. > > This structure is only used with config_group_init_type_name() which takes > a const struct config_item_type* as a 3rd argument. > > This also makes things consistent with 'netconsole_target_type' witch is > already const. > > [...] Here is the summary with links: - [net-next] net: netconsole: Constify struct config_item_type https://git.kernel.org/netdev/net-next/c/ed4290f39f41 You are awesome, thank you!
diff --git a/drivers/net/netconsole.c b/drivers/net/netconsole.c index ffedf7648bed..48b309e0a93a 100644 --- a/drivers/net/netconsole.c +++ b/drivers/net/netconsole.c @@ -778,7 +778,7 @@ static struct configfs_group_operations userdata_ops = { .drop_item = userdatum_drop, }; -static struct config_item_type userdata_type = { +static const struct config_item_type userdata_type = { .ct_item_ops = &userdatum_ops, .ct_group_ops = &userdata_ops, .ct_attrs = userdata_attrs,
'struct config_item_type' is not modified in this driver. This structure is only used with config_group_init_type_name() which takes a const struct config_item_type* as a 3rd argument. This also makes things consistent with 'netconsole_target_type' witch is already const. Constifying this structure moves some data to a read-only section, so increase overall security, especially when the structure holds some function pointers. On a x86_64, with allmodconfig: Before: ====== text data bss dec hex filename 33007 3952 1312 38271 957f drivers/net/netconsole.o After: ===== text data bss dec hex filename 33071 3888 1312 38271 957f drivers/net/netconsole.o Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> --- Compile tested-only. --- drivers/net/netconsole.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)