In the current git repository, on my amd64 machine I get the following warning on compile
drivers/pci/probe.c: In function `pci_read_bases':
drivers/pci/probe.c:166: warning: large integer implicitly truncated to unsigned type
drivers/pci/probe.c:216: warning: large integer implicitly truncated to unsigned type
I've tracked this down to pci_size, and two #define's in include/linux/pci.h
#define PCI_BASE_ADDRESS_MEM_MASK (~0x0fUL)
#define PCI_ROM_ADDRESS_MASK (~0x7ffUL)
pci_size expects 3 u32 arguments,but from what I can tell, on 64 bit arch's the two above
defines expand to 64bit values, and are truncated when being passed.
I'm not sure how to go about fixing this, if pci_size should accept a u64 or if the defines should
be changed. Is this bug dangerous? What should be done to fix it?
--
Gabriel A. Devenyi
[email protected]