Thread (10 messages) 10 messages, 4 authors, 2014-12-04

Re: [PATCH 1/3] video: fbdev: vt8623fb: suppress build warning

From: Geert Uytterhoeven <geert@linux-m68k.org>
Date: 2014-12-04 13:29:46
Also in: lkml

On Thu, Dec 4, 2014 at 8:56 AM, Tomi Valkeinen [off-list ref] wrote:
On 04/12/14 09:46, Sudip Mukherjee wrote:
quoted
On Thu, Dec 04, 2014 at 09:05:46AM +0200, Tomi Valkeinen wrote:
quoted
On 03/12/14 20:29, Prabhakar Lad wrote:
quoted
On Wed, Dec 3, 2014 at 11:49 AM, Tomi Valkeinen [off-list ref] wrote:
quoted
On 27/11/14 00:07, Lad, Prabhakar wrote:
quoted
this patch fixes following build warning:
drivers/video/fbdev/vt8623fb.c: In function ‘vt8623_pci_probe’:
drivers/video/fbdev/vt8623fb.c:734:23: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
  par->state.vgabase = (void __iomem *) vga_res.start;
                       ^
Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
---
 drivers/video/fbdev/vt8623fb.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/video/fbdev/vt8623fb.c b/drivers/video/fbdev/vt8623fb.c
index 5c7cbc6..ea7f056 100644
--- a/drivers/video/fbdev/vt8623fb.c
+++ b/drivers/video/fbdev/vt8623fb.c
@@ -731,7 +731,7 @@ static int vt8623_pci_probe(struct pci_dev *dev, const struct pci_device_id *id)

      pcibios_bus_to_resource(dev->bus, &vga_res, &bus_reg);

-     par->state.vgabase = (void __iomem *) vga_res.start;
+     par->state.vgabase = (void __iomem *) (unsigned long) vga_res.start;
This does look quite ugly... Where does the warning come from in the
first place. Isn't vga_res.start (resource_size_t) the size of a pointer?
Yes looks ugly, I am not sure what you meant from 'where does this warning
come from' its in the commit message.
I meant why is there a warning at all. With a quick glance,
vga_res.start is the size of a pointer. So the sizes of the integer and
the pointer should be the same. But the warning still says "of different
size".
poking my nose into your discussion.
I tried to see the warning, and I re-compiled like make W=1 M=drivers/video/fbdev/ (before that make clean M=drivers/video/fbdev was done)
I can see warning with many other files, but drivers/video/fbdev/vt8623fb.o was quiet and there was no warning.
I tested with next 141203.
did i miss something in checking the warning ?
I don't see the warning either when compiling for arm or x86_64. On what
architecture do you see the warning?
On 32-bit systems with PHYS_ADDR_T_64BIT=y, resource_size_t is u64,
while pointers are still 32-bit.

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help