Messages in this thread | | | Date | Wed, 18 Nov 1998 08:28:20 -0800 (PST) | From | Linus Torvalds <> | Subject | Re: [PATCH] Re: [ipchains] logging tcp/udp port numbers |
| |
On Wed, 18 Nov 1998, Paul Rusty Russell wrote: > > The %h printk modifier is used in 5 source files, and doesn't work on > ppc and sparc (vararg passing a short is broken on these platforms it > seems).
If varargs is broken on them, then I would complain to the gcc people. I can get rid of the 'h' qualifier - I don't think it really means anything in the C language with the promotion rules - but I want to do so only after I've heard from people that gcc is going to be fixed /or/ somebody tells me that due to C promotion rules I really should get an int and cast it (ie instead of using
num = va_arg(args, short);
it might be proper to use
num = (short) va_args(args, int);
But I _really_ don't want to just silently drop a documented feature.
Why is it broken on ppc/sparc? I assume it's because they have the wrong byte order, but why does this bite only the Linux kernel - it should have bitten other things too?
Linus
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |