Re: long long on 32-bit machines

From: Arnd Bergmann
Date: Thu Jan 29 2004 - 04:25:42 EST


On Thursday 29 January 2004 02:34, H. Peter Anvin wrote:

> If I remember correctly, a 6-argument system call on s390 will put a
> pointer to the last two arguments as the effective 5th argument, so this
> would not affect the system call calling convention, correct?

Almost. I think this is only relevant for mmap2(), where we pass a single
pointer to a struct with all six arguments, but the result is the same.

I don't know where I got the misinformation about the register pairs
on s390, but I verified that the problem exists on MIPS and PowerPC.
See sys32_ftruncate64 in arch/mips/kernel/linux32.c and
arch/ppc64/kernel/sys_ppc32.c. PA-RISC appearantly work around this
by defining their own system call handlers with separate high/low
arguments, so they effectively work like i386 and s390.

Arnd <><

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