64-bit shm: abi problems

Manfred Spraul (manfreds@colorfullife.com)
Sun, 12 Dec 1999 01:29:12 +0100


A few weeks ago, the shm segment size was increased from "int" to
"size_t", but unfortunately this breaks user space compatibility on all
64-bit platforms:

* the length of shmid_ds has changed. It would be easy to fix that
problem: we continue to use the current structure, and lie about
segments longer than INT_MAX.

* the parameters for the kernel sysctl have changed (from "int" to
"size_t"). I don't know if we can do that without breaking binary
compatibility

I think we should undo the size_t changes, and merge them with the
32-bit uid patches from Chris. 32-bit uids need special wrapper
functions in glibc, and thus we could solve both problems together.
[btw, glibc also uses "int" instead of "size_t" in shmget(), but SUSv2
says "size_t".]

Any other ideas?

Manfred

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