lkml.org 
[lkml]   [2009]   [May]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 2/2] serial: 8250_gsc: fix printk format warning
On Mon, 18 May 2009 17:11:31 +0400 Alexander Beregalov <a.beregalov@gmail.com> wrote:

> Fix this build warning:
> drivers/serial/8250_gsc.c:44: warning: format '%lx' expects type
> 'long unsigned int', but argument 2 has type 'resource_size_t'
>

The patch does more than fix a "warning". It fixes an actual error.
The caller will prepare a 64-bit argument and the callee will print
only 32 bits of it.

> ---
> drivers/serial/8250_gsc.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/serial/8250_gsc.c b/drivers/serial/8250_gsc.c
> index 418b4fe..a7b02a5 100644
> --- a/drivers/serial/8250_gsc.c
> +++ b/drivers/serial/8250_gsc.c
> @@ -41,7 +41,7 @@ static int __init serial_init_chip(struct parisc_device *dev)
> printk(KERN_INFO
> "Serial: device 0x%lx not configured.\n"
> "Enable support for Wax, Lasi, Asp or Dino.\n",
> - dev->hpa.start);
> + (unsigned long)dev->hpa.start);

Nope. hpa.start can be u32 or u64. We need to cast that to the wider
type so that it will correctly print in all circumstances.

So I changed both patches to print with %ll and to cast to
unsigned long long.


\
 
 \ /
  Last update: 2009-05-28 07:53    [W:0.033 / U:0.312 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site