Re: Compat 32-bit syscall entry from 64-bit task!?

From: Denys Vlasenko
Date: Thu Jan 26 2012 - 13:04:39 EST


Hi Linus,

On Thu, Jan 26, 2012 at 4:47 AM, Linus Torvalds
<torvalds@xxxxxxxxxxxxxxxxxxxx> wrote:
>> Please look at strace source, get_scno() function, where
>> it reads syscall no and parameters. Let's see....
>> - POWERPC: has 32-bit and 64-bit mode
>> - X86_64: has 32-bit and 64-bit mode
>> - IA64: has i386-compat mode
>> - ARM: has more than one ABI
>> - SPARC: has 32-bit and 64-bit mode
>>
>> Do you want to re-invent a different arch-specific way to report
>> syscall type for each of these arches?
>
> I think an arch-specific one is better than trying to make some
> generic one that is messy.
>
> As you say, many architectures have multiple system call ABIs.
>
> But they tend to be very *different* issues. They can be about
> multiple ABI's, as you mention, and even when they *look* similar
> (32-bit vs 64-bit ABI's) they are actually totally different issues.
> [skip]

I don't have a particular attachment to my solution,
and I think we already talk about this problem for
far too long.

Looks like nobody is _strongly_ opposed to your patch
which uses a few bits in eflags to report bitness
of the x86 syscall.

Lets just do that already. If you commit it to kernel git,
I will immediately change strace accordingly.

--
vda
--
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/