diff mbox series

parisc: Use proper printk format for resource_size_t

Message ID 20200103163925.3967-1-krzk@kernel.org (mailing list archive)
State Accepted, archived
Headers show
Series parisc: Use proper printk format for resource_size_t | expand

Commit Message

Krzysztof Kozlowski Jan. 3, 2020, 4:39 p.m. UTC
resource_size_t should be printed with its own size-independent format
to fix warnings when compiling on 64-bit platform (e.g. with
COMPILE_TEST):

    arch/parisc/kernel/drivers.c: In function 'print_parisc_device':
    arch/parisc/kernel/drivers.c:892:9: warning:
        format '%p' expects argument of type 'void *',
        but argument 4 has type 'resource_size_t {aka unsigned int}' [-Wformat=]

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
---
 arch/parisc/kernel/drivers.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Helge Deller Jan. 14, 2020, 8:27 a.m. UTC | #1
On 03.01.20 17:39, Krzysztof Kozlowski wrote:
> resource_size_t should be printed with its own size-independent format
> to fix warnings when compiling on 64-bit platform (e.g. with
> COMPILE_TEST):
>
>     arch/parisc/kernel/drivers.c: In function 'print_parisc_device':
>     arch/parisc/kernel/drivers.c:892:9: warning:
>         format '%p' expects argument of type 'void *',
>         but argument 4 has type 'resource_size_t {aka unsigned int}' [-Wformat=]
>
> Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
> ---
>  arch/parisc/kernel/drivers.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/arch/parisc/kernel/drivers.c b/arch/parisc/kernel/drivers.c
> index a6c9f49c6612..a154de424421 100644
> --- a/arch/parisc/kernel/drivers.c
> +++ b/arch/parisc/kernel/drivers.c
> @@ -889,8 +889,8 @@ static void print_parisc_device(struct parisc_device *dev)
>  	static int count;
>
>  	print_pa_hwpath(dev, hw_path);
> -	pr_info("%d. %s at 0x%px [%s] { %d, 0x%x, 0x%.3x, 0x%.5x }",
> -		++count, dev->name, (void*) dev->hpa.start, hw_path, dev->id.hw_type,
> +	pr_info("%d. %s at %pa[p] [%s] { %d, 0x%x, 0x%.3x, 0x%.5x }",

It needs to be    %pap   instead of   %pa[p].
The documentation in Documentation/core-api/printk-formats.rst is correct, but misleading.
I corrected & applied it.
Thanks!


Helge


> +		++count, dev->name, &(dev->hpa.start), hw_path, dev->id.hw_type,
>  		dev->id.hversion_rev, dev->id.hversion, dev->id.sversion);
>
>  	if (dev->num_addrs) {
>
Krzysztof Kozlowski Jan. 14, 2020, 8:53 a.m. UTC | #2
On Tue, Jan 14, 2020 at 09:27:35AM +0100, Helge Deller wrote:
> On 03.01.20 17:39, Krzysztof Kozlowski wrote:
> > resource_size_t should be printed with its own size-independent format
> > to fix warnings when compiling on 64-bit platform (e.g. with
> > COMPILE_TEST):
> >
> >     arch/parisc/kernel/drivers.c: In function 'print_parisc_device':
> >     arch/parisc/kernel/drivers.c:892:9: warning:
> >         format '%p' expects argument of type 'void *',
> >         but argument 4 has type 'resource_size_t {aka unsigned int}' [-Wformat=]
> >
> > Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
> > ---
> >  arch/parisc/kernel/drivers.c | 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/arch/parisc/kernel/drivers.c b/arch/parisc/kernel/drivers.c
> > index a6c9f49c6612..a154de424421 100644
> > --- a/arch/parisc/kernel/drivers.c
> > +++ b/arch/parisc/kernel/drivers.c
> > @@ -889,8 +889,8 @@ static void print_parisc_device(struct parisc_device *dev)
> >  	static int count;
> >
> >  	print_pa_hwpath(dev, hw_path);
> > -	pr_info("%d. %s at 0x%px [%s] { %d, 0x%x, 0x%.3x, 0x%.5x }",
> > -		++count, dev->name, (void*) dev->hpa.start, hw_path, dev->id.hw_type,
> > +	pr_info("%d. %s at %pa[p] [%s] { %d, 0x%x, 0x%.3x, 0x%.5x }",
> 
> It needs to be    %pap   instead of   %pa[p].
> The documentation in Documentation/core-api/printk-formats.rst is correct, but misleading.
> I corrected & applied it.
> Thanks!

Damn it, you're right. Thanks for noticing!

Best regards,
Krzysztof
diff mbox series

Patch

diff --git a/arch/parisc/kernel/drivers.c b/arch/parisc/kernel/drivers.c
index a6c9f49c6612..a154de424421 100644
--- a/arch/parisc/kernel/drivers.c
+++ b/arch/parisc/kernel/drivers.c
@@ -889,8 +889,8 @@  static void print_parisc_device(struct parisc_device *dev)
 	static int count;
 
 	print_pa_hwpath(dev, hw_path);
-	pr_info("%d. %s at 0x%px [%s] { %d, 0x%x, 0x%.3x, 0x%.5x }",
-		++count, dev->name, (void*) dev->hpa.start, hw_path, dev->id.hw_type,
+	pr_info("%d. %s at %pa[p] [%s] { %d, 0x%x, 0x%.3x, 0x%.5x }",
+		++count, dev->name, &(dev->hpa.start), hw_path, dev->id.hw_type,
 		dev->id.hversion_rev, dev->id.hversion, dev->id.sversion);
 
 	if (dev->num_addrs) {