Re: Zillions of warnings in -next

From: Gregory Haskins
Date: Tue Oct 27 2009 - 16:53:44 EST


>>> On 10/27/2009 at 11:25 AM, in message
<20091027152530.75ca60e4@xxxxxxxxxxxxxxxxxxx>, Alan Cox
<alan@xxxxxxxxxxxxxxxxxxx> wrote:
> I was thinking "what a lot of new warnings". Then I dug a little deeper
> and it seems that someone never bothered to try and build
> drivers/net/vbus-enet.c on a 32bit system.
>
> So would you mind fixing the 27 new warnings introduced ?
>
> Alan

I just did a 32-bit build and indeed reproduced the warnings. However, the warnings
appear to be dubious as the code is properly (afaict) annotated with explicit casts, and
I believe they are doing what I intended.

Basically I have structures that are always 64 bit (so we can have a mixed-mode 32-bit
guest talk to a 64-bit hypervisor, for instance). Therefore I am casting between native
and u64, but the compiler doesn't like this. Does anyone have any suggestions on ways
to fix this so the compiler is happy?

For instance:

struct foo {
u64 bar;
}

xmit_foo(void *ptr)
{
struct foo f;

f->bar = (u64)ptr; /* generates warning */
}

Kind Regards,
-Greg



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/