2.6.22-rc2 built on ppc

Stefan Richter stefanr at s5r6.in-berlin.de
Mon May 21 01:53:04 EST 2007


(Adding linuxppc-dev)

Elimar Riesebieter wrote:
> Hi,
> 
> FYI, building the kernel modules with
> gcc (GCC) 4.1.3 20070514 (prerelease) (Debian 4.1.2-7)
> on my powerbook (PPC) gives:
> 
> ...
> drivers/firewire/fw-ohci.c: In function 'ar_context_tasklet':
> drivers/firewire/fw-ohci.c:357: warning: unused variable 'ohci'
> drivers/firewire/fw-ohci.c: In function 'context_release':
> drivers/firewire/fw-ohci.c:502: warning: unused variable 'card'
> drivers/firewire/fw-sbp2.c: In function 'complete_command_orb':
> drivers/firewire/fw-sbp2.c:838: warning: unused variable 'device'
> drivers/ieee1394/sbp2.c: In function 'sbp2util_remove_command_orb_pool':
> drivers/ieee1394/sbp2.c:497: warning: unused variable 'host'
> drivers/ieee1394/sbp2.c: In function 'sbp2util_mark_command_completed':
> drivers/ieee1394/sbp2.c:588: warning: unused variable 'host'
> ...


The allegedly unused variables are used in calls to dma_unmap_single(),
but only for these calls.  On PPC32, you get

	/* We do nothing. */
	#define dma_unmap_single(dev, addr, size, dir)  ((void)0)

in dma-mapping.h.  This is also the case for Linux 2.6.20.
But in Linux 2.6.19 and older, it was

	/* We do nothing. */
	#define dma_unmap_single(dev, addr, size, dir)	do { } while (0)

(Furthermore, the sbp2 driver used the pci_dma_ API in Linux 2.6.19 and
older, and fw-ohci wasn't in mainline before 2.6.22-rc1.)

I don't know what's to blame for the warnings --- new gcc versions or
the change from do { } while (0) to ((void)0)?  Either way, the compiler
should comprehend that the arguments stuffed into the dma_unmap_single
macro are _not_ unused by accident; it should stay quiet and optimize
the unused variables away if run with -Osomething.

Does somebody know more?

I'd like to avoid cluttering the drivers with __attribute((used)).


> If more info is needed, please contact me via PM, as I am not
> subscribed.

We usually keep posters Cc'ed in list replies, at least on development
lists where bug reports are welcomed.
-- 
Stefan Richter
-=====-=-=== -=-= =-=--
http://arcgraph.de/sr/



More information about the Linuxppc-dev mailing list