/[base]
ViewVC logotype

Revision 194910


Jump to revision: Previous Next
Author: jhb
Date: Wed Jun 24 21:10:52 2009 UTC (15 years ago)
Changed paths: 21
Log Message:
Change the ABI of some of the structures used by the SYSV IPC API:
- The uid/cuid members of struct ipc_perm are now uid_t instead of unsigned
  short.
- The gid/cgid members of struct ipc_perm are now gid_t instead of unsigned
  short.
- The mode member of struct ipc_perm is now mode_t instead of unsigned short
  (this is merely a style bug).
- The rather dubious padding fields for ABI compat with SV/I386 have been
  removed from struct msqid_ds and struct semid_ds.
- The shm_segsz member of struct shmid_ds is now a size_t instead of an
  int.  This removes the need for the shm_bsegsz member in struct
  shmid_kernel and should allow for complete support of SYSV SHM regions
  >= 2GB.
- The shm_nattch member of struct shmid_ds is now an int instead of a
  short.
- The shm_internal member of struct shmid_ds is now gone.  The internal
  VM object pointer for SHM regions has been moved into struct
  shmid_kernel.
- The existing __semctl(), msgctl(), and shmctl() system call entries are
  now marked COMPAT7 and new versions of those system calls which support
  the new ABI are now present.
- The new system calls are assigned to the FBSD-1.1 version in libc.  The
  FBSD-1.0 symbols in libc now refer to the old COMPAT7 system calls.
- A simplistic framework for tagging system calls with compatibility
  symbol versions has been added to libc.  Version tags are added to
  system calls by adding an appropriate __sym_compat() entry to
  src/lib/libc/incldue/compat.h. [1]

PR:		kern/16195 kern/113218 bin/129855
Reviewed by:	arch@, rwatson
Discussed with:	kan, kib [1]


Changed paths

Path Details
Directoryhead/lib/libc/gen/Symbol.map modified , text changed
Directoryhead/lib/libc/gen/semctl.c modified , text changed
Directoryhead/lib/libc/include/compat.h added
Directoryhead/lib/libc/sys/Makefile.inc modified , text changed
Directoryhead/lib/libc/sys/Symbol.map modified , text changed
Directoryhead/sys/compat/freebsd32/freebsd32_ipc.h modified , text changed
Directoryhead/sys/compat/freebsd32/freebsd32_misc.c modified , text changed
Directoryhead/sys/compat/freebsd32/syscalls.master modified , text changed
Directoryhead/sys/compat/linux/linux_ipc.c modified , text changed
Directoryhead/sys/compat/svr4/svr4_ipc.c modified , text changed
Directoryhead/sys/i386/ibcs2/ibcs2_ipc.c modified , text changed
Directoryhead/sys/kern/syscalls.master modified , text changed
Directoryhead/sys/kern/sysv_ipc.c modified , text changed
Directoryhead/sys/kern/sysv_msg.c modified , text changed
Directoryhead/sys/kern/sysv_sem.c modified , text changed
Directoryhead/sys/kern/sysv_shm.c modified , text changed
Directoryhead/sys/sys/ipc.h modified , text changed
Directoryhead/sys/sys/msg.h modified , text changed
Directoryhead/sys/sys/sem.h modified , text changed
Directoryhead/sys/sys/shm.h modified , text changed
Directoryhead/usr.bin/ipcs/ipcs.c modified , text changed

  ViewVC Help
Powered by ViewVC 1.1.27