Messages in this thread | | | Subject | Re: compat_sys_times() bogus until jiffies >= 0. | From | Andi Kleen <> | Date | Sat, 22 Dec 2007 01:42:02 +0100 |
| |
David Miller <davem@davemloft.net> writes:
> Only on x86 platforms. Sparc, IA64, MIPS, powerpc, etc. all get this > case right.
Do they for 32bit kernels or for 64bit userland?
> Yes it's another unfortunate side effect of how error status is > indicated for x86 system calls.
Maybe I'm dense, but doesn't all the kernel code pass it the same way as the x86 syscall code? For your proposal you would need a separate error bit coming out of the sys_* to handle this case. Basically rewrite all code that ever returns errors in the kernel. Or do I miss something?
Or are you talking about solving it only for 32bit compat emulation on 64bit kernels? There it would be possible, but only doing it there and not on native 32bit systems wouldn't seem clean to me.
At least on x86-64 the compat code's (near) only goal in live is to be as compatible to 32it as possible not better.
-Andi
| |