drivers/clk/keystone/sci-clk.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
Add const qualifiers to the pointers returned from 'container_of' macro
to prevent breaking the const promise on const struct pointers from
parameters.
Once you have a mutable container structure pointer, you can change
structure fields through it, which violates the const guarantee.
Signed-off-by: Adrian Barnaś <abarnas@google.com>
---
drivers/clk/keystone/sci-clk.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/clk/keystone/sci-clk.c b/drivers/clk/keystone/sci-clk.c
index a4b42811de55..9d5071223f4c 100644
--- a/drivers/clk/keystone/sci-clk.c
+++ b/drivers/clk/keystone/sci-clk.c
@@ -496,8 +496,8 @@ static int ti_sci_scan_clocks_from_fw(struct sci_clk_provider *provider)
static int _cmp_sci_clk_list(void *priv, const struct list_head *a,
const struct list_head *b)
{
- struct sci_clk *ca = container_of(a, struct sci_clk, node);
- struct sci_clk *cb = container_of(b, struct sci_clk, node);
+ const struct sci_clk *ca = container_of(a, struct sci_clk, node);
+ const struct sci_clk *cb = container_of(b, struct sci_clk, node);
return _cmp_sci_clk(ca, &cb);
}
--
2.51.1.851.g4ebd6896fd-goog
Quoting Adrian Barnaś (2025-10-28 09:16:42) > Add const qualifiers to the pointers returned from 'container_of' macro > to prevent breaking the const promise on const struct pointers from > parameters. > > Once you have a mutable container structure pointer, you can change > structure fields through it, which violates the const guarantee. > > Signed-off-by: Adrian Barnaś <abarnas@google.com> > --- Applied to clk-next
On 16:16-20251028, Adrian Barnaś wrote:
> Add const qualifiers to the pointers returned from 'container_of' macro
> to prevent breaking the const promise on const struct pointers from
> parameters.
>
> Once you have a mutable container structure pointer, you can change
> structure fields through it, which violates the const guarantee.
>
> Signed-off-by: Adrian Barnaś <abarnas@google.com>
> ---
> drivers/clk/keystone/sci-clk.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/clk/keystone/sci-clk.c b/drivers/clk/keystone/sci-clk.c
> index a4b42811de55..9d5071223f4c 100644
> --- a/drivers/clk/keystone/sci-clk.c
> +++ b/drivers/clk/keystone/sci-clk.c
> @@ -496,8 +496,8 @@ static int ti_sci_scan_clocks_from_fw(struct sci_clk_provider *provider)
> static int _cmp_sci_clk_list(void *priv, const struct list_head *a,
> const struct list_head *b)
> {
> - struct sci_clk *ca = container_of(a, struct sci_clk, node);
> - struct sci_clk *cb = container_of(b, struct sci_clk, node);
> + const struct sci_clk *ca = container_of(a, struct sci_clk, node);
> + const struct sci_clk *cb = container_of(b, struct sci_clk, node);
>
> return _cmp_sci_clk(ca, &cb);
> }
> --
> 2.51.1.851.g4ebd6896fd-goog
>
>
Reviewed-by: Nishanth Menon <nm@ti.com>
--
Regards,
Nishanth Menon
Key (0xDDB5849D1736249D) / Fingerprint: F8A2 8693 54EB 8232 17A3 1A34 DDB5 849D 1736 249D
https://ti.com/opensource
© 2016 - 2026 Red Hat, Inc.