drivers/target/target_core_user.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
'struct nla_policy' and 'struct match_table_t' are not modified in this
driver.
Constifying these structures moves some data to a read-only section, so
increase overall security, especially when the structure holds some
function pointers, which is the case of struct nla_policy.
On a x86_64, with allmodconfig:
Before:
======
text data bss dec hex filename
93188 6933 338 100459 1886b drivers/target/target_core_user.o
After:
=====
text data bss dec hex filename
93508 6581 338 100427 1884b drivers/target/target_core_user.o
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
---
Compile tested only
---
drivers/target/target_core_user.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/target/target_core_user.c b/drivers/target/target_core_user.c
index 717931267bda..0f5d820af119 100644
--- a/drivers/target/target_core_user.c
+++ b/drivers/target/target_core_user.c
@@ -361,7 +361,7 @@ static const struct genl_multicast_group tcmu_mcgrps[] = {
[TCMU_MCGRP_CONFIG] = { .name = "config", },
};
-static struct nla_policy tcmu_attr_policy[TCMU_ATTR_MAX+1] = {
+static const struct nla_policy tcmu_attr_policy[TCMU_ATTR_MAX + 1] = {
[TCMU_ATTR_DEVICE] = { .type = NLA_STRING },
[TCMU_ATTR_MINOR] = { .type = NLA_U32 },
[TCMU_ATTR_CMD_STATUS] = { .type = NLA_S32 },
@@ -2430,7 +2430,7 @@ enum {
Opt_cmd_ring_size_mb, Opt_err,
};
-static match_table_t tokens = {
+static const match_table_t tokens = {
{Opt_dev_config, "dev_config=%s"},
{Opt_dev_size, "dev_size=%s"},
{Opt_hw_block_size, "hw_block_size=%d"},
--
2.47.0
Christophe, > 'struct nla_policy' and 'struct match_table_t' are not modified in this > driver. Applied to 6.13/scsi-staging, thanks! -- Martin K. Petersen Oracle Linux Engineering
On 11.11.24 14:10, Christophe JAILLET wrote:
> 'struct nla_policy' and 'struct match_table_t' are not modified in this
> driver.
>
> Constifying these structures moves some data to a read-only section, so
> increase overall security, especially when the structure holds some
> function pointers, which is the case of struct nla_policy.
>
> On a x86_64, with allmodconfig:
> Before:
> ======
> text data bss dec hex filename
> 93188 6933 338 100459 1886b drivers/target/target_core_user.o
>
> After:
> =====
> text data bss dec hex filename
> 93508 6581 338 100427 1884b drivers/target/target_core_user.o
>
> Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
> ---
> Compile tested only
> ---
> drivers/target/target_core_user.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/target/target_core_user.c b/drivers/target/target_core_user.c
> index 717931267bda..0f5d820af119 100644
> --- a/drivers/target/target_core_user.c
> +++ b/drivers/target/target_core_user.c
> @@ -361,7 +361,7 @@ static const struct genl_multicast_group tcmu_mcgrps[] = {
> [TCMU_MCGRP_CONFIG] = { .name = "config", },
> };
>
> -static struct nla_policy tcmu_attr_policy[TCMU_ATTR_MAX+1] = {
> +static const struct nla_policy tcmu_attr_policy[TCMU_ATTR_MAX + 1] = {
> [TCMU_ATTR_DEVICE] = { .type = NLA_STRING },
> [TCMU_ATTR_MINOR] = { .type = NLA_U32 },
> [TCMU_ATTR_CMD_STATUS] = { .type = NLA_S32 },
> @@ -2430,7 +2430,7 @@ enum {
> Opt_cmd_ring_size_mb, Opt_err,
> };
>
> -static match_table_t tokens = {
> +static const match_table_t tokens = {
> {Opt_dev_config, "dev_config=%s"},
> {Opt_dev_size, "dev_size=%s"},
> {Opt_hw_block_size, "hw_block_size=%d"},
Reviewed-by: Bodo Stroesser <bostroesser@gmail.com>
Thanks,
Bodo
© 2016 - 2026 Red Hat, Inc.