[PATCH] clk: keystone: Fix discarded const qualifiers

Adrian Barnaś posted 1 patch 3 months, 1 week ago
drivers/clk/keystone/sci-clk.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
[PATCH] clk: keystone: Fix discarded const qualifiers
Posted by Adrian Barnaś 3 months, 1 week ago
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
Re: [PATCH] clk: keystone: Fix discarded const qualifiers
Posted by Stephen Boyd 2 months, 3 weeks ago
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
Re: [PATCH] clk: keystone: Fix discarded const qualifiers
Posted by Nishanth Menon 2 months, 3 weeks ago
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