* [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