[uClibc 0002084]: SysVIPC does not work on old kernels
bugs at busybox.net
bugs at busybox.net
Fri Feb 8 04:00:38 UTC 2008
The following issue has been SUBMITTED.
======================================================================
http://busybox.net/bugs/view.php?id=2084
======================================================================
Reported By: michael_d
Assigned To: uClibc
======================================================================
Project: uClibc
Issue ID: 2084
Category: Other
Reproducibility: always
Severity: minor
Priority: normal
Status: assigned
======================================================================
Date Submitted: 02-07-2008 20:00 PST
Last Modified: 02-07-2008 20:00 PST
======================================================================
Summary: SysVIPC does not work on old kernels
Description:
The functions shmctl(), semctl(), and msgctl() unconditionally or their
subcommand argument with __IPC_64. That flag was only added in Linux 2.4,
so they will always fail on older kernels.
I've prepared a patch to allow IPC to work on old kernels. Since __IPC_64
signals a different format of the syscall arguments and I haven't changed
the userspace structures, a significant amount of marshalling code needed
to be added.
The patch does need some adaptation before it can go into the mainline.
Since it is not safe to include <linux/ipc.h>, I cannot probe whether the
current kernel supports __IPC_64 or not. Thus, this patch will
unconditionally use old kernel structures. I've left a "#if 0" in
libc/misc/sysvipc/ipc.h that can be flipped to produce a library for 2.4+.
======================================================================
Issue History
Date Modified Username Field Change
======================================================================
02-07-08 20:00 michael_d New Issue
02-07-08 20:00 michael_d Status new => assigned
02-07-08 20:00 michael_d Assigned To => uClibc
02-07-08 20:00 michael_d File Added: uClibc-0.9.29-ipc32.diff
======================================================================
More information about the uClibc-cvs
mailing list