diff options
author | ru <ru@FreeBSD.org> | 2006-09-27 19:57:02 +0000 |
---|---|---|
committer | ru <ru@FreeBSD.org> | 2006-09-27 19:57:02 +0000 |
commit | 4ef62e4ca582414062d69e20a1ccdade4a110938 (patch) | |
tree | a886251dab8c19f71a5bfd0199ec1d9b327b3513 /sys/modules | |
parent | f6b387ce531fb4ba91958db5aadcb53f89d4ed1b (diff) | |
download | FreeBSD-src-4ef62e4ca582414062d69e20a1ccdade4a110938.zip FreeBSD-src-4ef62e4ca582414062d69e20a1ccdade4a110938.tar.gz |
Fix our ioctl(2) implementation when the argument is "int". New
ioctls passing integer arguments should use the _IOWINT() macro.
This fixes a lot of ioctl's not working on sparc64, most notable
being keyboard/syscons ioctls.
Full ABI compatibility is provided, with the bonus of fixing the
handling of old ioctls on sparc64.
Reviewed by: bde (with contributions)
Tested by: emax, marius
MFC after: 1 week
Diffstat (limited to 'sys/modules')
-rw-r--r-- | sys/modules/digi/digi/Makefile | 1 | ||||
-rw-r--r-- | sys/modules/if_tap/Makefile | 5 | ||||
-rw-r--r-- | sys/modules/kbdmux/Makefile | 5 | ||||
-rw-r--r-- | sys/modules/procfs/Makefile | 1 | ||||
-rw-r--r-- | sys/modules/ukbd/Makefile | 6 | ||||
-rw-r--r-- | sys/modules/vkbd/Makefile | 5 |
6 files changed, 19 insertions, 4 deletions
diff --git a/sys/modules/digi/digi/Makefile b/sys/modules/digi/digi/Makefile index 6ba9c6e..a9bd010 100644 --- a/sys/modules/digi/digi/Makefile +++ b/sys/modules/digi/digi/Makefile @@ -10,6 +10,7 @@ SRCS+= opt_compat.h .if !defined(KERNBUILDDIR) opt_compat.h: echo "#define COMPAT_43 1" > opt_compat.h + echo "#define COMPAT_FREEBSD6 1" >> opt_compat.h .endif .include <bsd.kmod.mk> diff --git a/sys/modules/if_tap/Makefile b/sys/modules/if_tap/Makefile index 3b75586..c138e71 100644 --- a/sys/modules/if_tap/Makefile +++ b/sys/modules/if_tap/Makefile @@ -5,9 +5,12 @@ .PATH: ${.CURDIR}/../../net KMOD= if_tap -SRCS= if_tap.c opt_inet.h vnode_if.h +SRCS= if_tap.c opt_compat.h opt_inet.h vnode_if.h .if !defined(KERNBUILDDIR) +opt_compat.h: + echo "#define COMPAT_FREEBSD6 1" > ${.TARGET} + opt_inet.h: echo "#define INET 1" > opt_inet.h .endif diff --git a/sys/modules/kbdmux/Makefile b/sys/modules/kbdmux/Makefile index 2d64ddf..70b39a0 100644 --- a/sys/modules/kbdmux/Makefile +++ b/sys/modules/kbdmux/Makefile @@ -4,9 +4,12 @@ .PATH: ${.CURDIR}/../../dev/kbdmux KMOD= kbdmux -SRCS= kbdmux.c opt_kbd.h bus_if.h device_if.h +SRCS= kbdmux.c opt_compat.h opt_kbd.h bus_if.h device_if.h .if !defined(KERNBUILDDIR) +opt_compat.h: + echo "#define COMPAT_FREEBSD6 1" > ${.TARGET} + opt_kbd.h: echo "#define KBD_INSTALL_CDEV 1" > ${.TARGET} .endif diff --git a/sys/modules/procfs/Makefile b/sys/modules/procfs/Makefile index 48a3e02..6c840ed 100644 --- a/sys/modules/procfs/Makefile +++ b/sys/modules/procfs/Makefile @@ -32,6 +32,7 @@ opt_compat.h: echo "#define COMPAT_43 1" > ${.TARGET} echo "#define COMPAT_FREEBSD4 1" >> ${.TARGET} echo "#define COMPAT_FREEBSD5 1" >> ${.TARGET} + echo "#define COMPAT_FREEBSD6 1" >> ${.TARGET} .if ${MACHINE_ARCH} == "amd64" echo "#define COMPAT_IA32 1" >> ${.TARGET} echo "#define COMPAT_LINUX32 1" >> ${.TARGET} diff --git a/sys/modules/ukbd/Makefile b/sys/modules/ukbd/Makefile index 80d2905..331e729 100644 --- a/sys/modules/ukbd/Makefile +++ b/sys/modules/ukbd/Makefile @@ -3,9 +3,13 @@ .PATH: ${.CURDIR}/../../dev/usb KMOD= ukbd -SRCS= bus_if.h device_if.h opt_usb.h opt_kbd.h opt_ukbd.h usbdevs.h ukbd.c +SRCS= bus_if.h device_if.h opt_compat.h opt_usb.h opt_kbd.h opt_ukbd.h \ + usbdevs.h ukbd.c .if !defined(KERNBUILDDIR) +opt_compat.h: + echo "#define COMPAT_FREEBSD6 1" > ${.TARGET} + opt_kbd.h: echo "#define KBD_INSTALL_CDEV 1" > ${.TARGET} .endif diff --git a/sys/modules/vkbd/Makefile b/sys/modules/vkbd/Makefile index 29591dc..500274c 100644 --- a/sys/modules/vkbd/Makefile +++ b/sys/modules/vkbd/Makefile @@ -4,9 +4,12 @@ .PATH: ${.CURDIR}/../../dev/vkbd KMOD= vkbd -SRCS= vkbd.c opt_kbd.h +SRCS= vkbd.c opt_compat.h opt_kbd.h .if !defined(KERNBUILDDIR) +opt_compat.h: + echo "#define COMPAT_FREEBSD6 1" > ${.TARGET} + opt_kbd.h: echo "#define KBD_INSTALL_CDEV 1" > ${.TARGET} .endif |