public inbox for linux-media@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] media: qcom: camss: avoid format string warning
@ 2026-03-20 15:18 Arnd Bergmann
  2026-03-20 15:24 ` Bryan O'Donoghue
  0 siblings, 1 reply; 2+ messages in thread
From: Arnd Bergmann @ 2026-03-20 15:18 UTC (permalink / raw)
  To: Robert Foss, Todor Tomov, Bryan O'Donoghue,
	Mauro Carvalho Chehab, Nathan Chancellor, Hans Verkuil
  Cc: Arnd Bergmann, Vladimir Zapolskiy, Nick Desaulniers,
	Bill Wendling, Justin Stitt, Hans Verkuil, Vincent Knecht,
	Wenmeng Liu, linux-media, linux-arm-msm, linux-kernel, llvm

From: Arnd Bergmann <arnd@arndb.de>

clang-22 warns about csiphy_match_clock_name() taking a variable format
string that is not checked against the 'int index' argument:

drivers/media/platform/qcom/camss/camss-csiphy.c:566:44: error: diagnostic behavior may be improved by
      adding the 'format(printf, 2, 3)' attribute to the declaration of 'csiphy_match_clock_name'
      [-Werror,-Wmissing-format-attribute]
  561 | static bool csiphy_match_clock_name(const char *clock_name, const char *format,
      | __attribute__((format(printf, 2, 3)))
  562 |                                     int index)
  563 | {
  564 |         char name[16]; /* csiphyXXX_timer\0 */
  565 |
  566 |         snprintf(name, sizeof(name), format, index);
      |                                                   ^
drivers/media/platform/qcom/camss/camss-csiphy.c:561:13: note: 'csiphy_match_clock_name' declared here
  561 | static bool csiphy_match_clock_name(const char *clock_name, const char *format,
      |             ^

Change the function to use a snprintf() style format string that allows this
to be checked at the call site.

Fixes: 0727615fb975 ("media: qcom: camss: Functionally decompose CSIPHY clock lookups")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 drivers/media/platform/qcom/camss/camss-csiphy.c | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/drivers/media/platform/qcom/camss/camss-csiphy.c b/drivers/media/platform/qcom/camss/camss-csiphy.c
index 62623393f414..78a1b568dbae 100644
--- a/drivers/media/platform/qcom/camss/camss-csiphy.c
+++ b/drivers/media/platform/qcom/camss/camss-csiphy.c
@@ -558,12 +558,16 @@ static int csiphy_init_formats(struct v4l2_subdev *sd,
 	return csiphy_set_format(sd, fh ? fh->state : NULL, &format);
 }
 
-static bool csiphy_match_clock_name(const char *clock_name, const char *format,
-				    int index)
+static bool __printf(2, 3)
+csiphy_match_clock_name(const char *clock_name, const char *format, ...)
 {
 	char name[16]; /* csiphyXXX_timer\0 */
+	va_list args;
+
+	va_start(args, format);
+	vsnprintf(name, sizeof(name), format, args);
+	va_end(args);
 
-	snprintf(name, sizeof(name), format, index);
 	return !strcmp(clock_name, name);
 }
 
-- 
2.39.5


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] media: qcom: camss: avoid format string warning
  2026-03-20 15:18 [PATCH] media: qcom: camss: avoid format string warning Arnd Bergmann
@ 2026-03-20 15:24 ` Bryan O'Donoghue
  0 siblings, 0 replies; 2+ messages in thread
From: Bryan O'Donoghue @ 2026-03-20 15:24 UTC (permalink / raw)
  To: Arnd Bergmann, Robert Foss, Todor Tomov, Mauro Carvalho Chehab,
	Nathan Chancellor, Hans Verkuil
  Cc: Arnd Bergmann, Vladimir Zapolskiy, Nick Desaulniers,
	Bill Wendling, Justin Stitt, Hans Verkuil, Vincent Knecht,
	Wenmeng Liu, linux-media, linux-arm-msm, linux-kernel, llvm

On 20/03/2026 15:18, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd@arndb.de>
> 
> clang-22 warns about csiphy_match_clock_name() taking a variable format
> string that is not checked against the 'int index' argument:
> 
> drivers/media/platform/qcom/camss/camss-csiphy.c:566:44: error: diagnostic behavior may be improved by
>        adding the 'format(printf, 2, 3)' attribute to the declaration of 'csiphy_match_clock_name'
>        [-Werror,-Wmissing-format-attribute]
>    561 | static bool csiphy_match_clock_name(const char *clock_name, const char *format,
>        | __attribute__((format(printf, 2, 3)))
>    562 |                                     int index)
>    563 | {
>    564 |         char name[16]; /* csiphyXXX_timer\0 */
>    565 |
>    566 |         snprintf(name, sizeof(name), format, index);
>        |                                                   ^
> drivers/media/platform/qcom/camss/camss-csiphy.c:561:13: note: 'csiphy_match_clock_name' declared here
>    561 | static bool csiphy_match_clock_name(const char *clock_name, const char *format,
>        |             ^
> 
> Change the function to use a snprintf() style format string that allows this
> to be checked at the call site.
> 
> Fixes: 0727615fb975 ("media: qcom: camss: Functionally decompose CSIPHY clock lookups")
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
>   drivers/media/platform/qcom/camss/camss-csiphy.c | 10 +++++++---
>   1 file changed, 7 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/media/platform/qcom/camss/camss-csiphy.c b/drivers/media/platform/qcom/camss/camss-csiphy.c
> index 62623393f414..78a1b568dbae 100644
> --- a/drivers/media/platform/qcom/camss/camss-csiphy.c
> +++ b/drivers/media/platform/qcom/camss/camss-csiphy.c
> @@ -558,12 +558,16 @@ static int csiphy_init_formats(struct v4l2_subdev *sd,
>   	return csiphy_set_format(sd, fh ? fh->state : NULL, &format);
>   }
>   
> -static bool csiphy_match_clock_name(const char *clock_name, const char *format,
> -				    int index)
> +static bool __printf(2, 3)
> +csiphy_match_clock_name(const char *clock_name, const char *format, ...)
>   {
>   	char name[16]; /* csiphyXXX_timer\0 */
> +	va_list args;
> +
> +	va_start(args, format);
> +	vsnprintf(name, sizeof(name), format, args);
> +	va_end(args);
>   
> -	snprintf(name, sizeof(name), format, index);
>   	return !strcmp(clock_name, name);
>   }
>   
Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-03-20 15:24 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-20 15:18 [PATCH] media: qcom: camss: avoid format string warning Arnd Bergmann
2026-03-20 15:24 ` Bryan O'Donoghue

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox