[PATCH v2 2/3] lib/vsprintf: Add support for generic FOURCCs by extending %p4cc
Rasmus Villemoes
linux at rasmusvillemoes.dk
Fri Feb 21 10:29:40 UTC 2025
On Thu, Feb 20 2025, Aditya Garg <gargaditya08 at live.com> wrote:
> v2 -> Add this patch
> Documentation/core-api/printk-formats.rst | 32 +++++++++++++++++++
> lib/test_printf.c | 39 +++++++++++++++++++----
> lib/vsprintf.c | 38 ++++++++++++++++++----
Yay! Thanks for remembering to include test cases.
>
> diff --git a/lib/test_printf.c b/lib/test_printf.c
> index 59dbe4f9a..ee860327e 100644
> --- a/lib/test_printf.c
> +++ b/lib/test_printf.c
> @@ -776,21 +776,46 @@ static void __init fwnode_pointer(void)
> software_node_unregister_node_group(group);
> }
>
> +struct fourcc_struct {
> + u32 code;
> + const char *str;
> +};
> +
> +static void __init fourcc_pointer_test(const struct fourcc_struct *fc, size_t n,
> + const char *fmt)
> +{
> + size_t i;
> +
> + for (i = 0; i < n; i++)
> + test(fc[i].str, fmt, &fc[i].code);
> +}
> +
> static void __init fourcc_pointer(void)
> {
> - struct {
> - u32 code;
> - char *str;
> - } const try[] = {
> + struct fourcc_struct const try_cc[] = {
I know it matches the code it replaces, but kernel style seems to be
"const struct foo" rather than "struct foo const" (at around 130:1) -
just as you use in the new helper function.
Also, please consider changing the array, and the newly added instances,
to be static instead of automatic (our le32_to_cpu should be usable also
for static initializers).
This will conflict with the conversion-to-kunit which is in flight, but
the conflict should be trivial to resolve.
Rasmus
More information about the dri-devel
mailing list