diff options
author | hselasky <hselasky@FreeBSD.org> | 2015-10-29 08:28:39 +0000 |
---|---|---|
committer | hselasky <hselasky@FreeBSD.org> | 2015-10-29 08:28:39 +0000 |
commit | 97b71ce545702c6c9c80c6d958ebd7d30f656be2 (patch) | |
tree | f9937a81e1e19355726bac644f9598a290f8a9cb /sys/conf | |
parent | 41bbd8a7cb0ba3a86302687715c12c9cf1a4b91f (diff) | |
download | FreeBSD-src-97b71ce545702c6c9c80c6d958ebd7d30f656be2.zip FreeBSD-src-97b71ce545702c6c9c80c6d958ebd7d30f656be2.tar.gz |
Finish process of moving the LinuxKPI module into the default kernel build.
- Move all files related to the LinuxKPI into sys/compat/linuxkpi and
its subfolders.
- Update sys/conf/files and some Makefiles to use new file locations.
- Added description of COMPAT_LINUXKPI to sys/conf/NOTES which in turn
adds the LinuxKPI to all LINT builds.
- The LinuxKPI can be added to the kernel by setting the
COMPAT_LINUXKPI option. The OFED kernel option no longer builds the
LinuxKPI into the kernel. This was done to keep the build rules for
the LinuxKPI in sys/conf/files simple.
- Extend the LinuxKPI module to include support for USB by moving the
Linux USB compat from usb.ko to linuxkpi.ko.
- Bump the FreeBSD_version.
- A universe kernel build has been done.
Reviewed by: np @ (cxgb and cxgbe related changes only)
Sponsored by: Mellanox Technologies
Diffstat (limited to 'sys/conf')
-rw-r--r-- | sys/conf/NOTES | 3 | ||||
-rw-r--r-- | sys/conf/files | 26 | ||||
-rw-r--r-- | sys/conf/kern.pre.mk | 6 |
3 files changed, 22 insertions, 13 deletions
diff --git a/sys/conf/NOTES b/sys/conf/NOTES index c1210e2..1afefdb 100644 --- a/sys/conf/NOTES +++ b/sys/conf/NOTES @@ -359,6 +359,9 @@ options COMPAT_FREEBSD9 # Enable FreeBSD10 compatibility syscalls options COMPAT_FREEBSD10 +# Enable Linux Kernel Programming Interface +options COMPAT_LINUXKPI + # # These three options provide support for System V Interface # Definition-style interprocess communication, in the form of shared diff --git a/sys/conf/files b/sys/conf/files index 9a6dec4..c07cf40 100644 --- a/sys/conf/files +++ b/sys/conf/files @@ -2574,7 +2574,6 @@ dev/usb/storage/ustorage_fs.c optional usfs # USB core # dev/usb/usb_busdma.c optional usb -dev/usb/usb_compat_linux.c optional usb dev/usb/usb_core.c optional usb dev/usb/usb_debug.c optional usb dev/usb/usb_dev.c optional usb @@ -3796,17 +3795,20 @@ nlm/nlm_prot_svc.c optional nfslockd | nfsd nlm/nlm_prot_xdr.c optional nfslockd | nfsd nlm/sm_inter_xdr.c optional nfslockd | nfsd -# Linux Kernel Compatibility API -ofed/include/linux/linux_kmod.c optional ofed | compat_linuxkpi \ - no-depend compile-with "${OFED_C}" -ofed/include/linux/linux_compat.c optional ofed | compat_linuxkpi \ - no-depend compile-with "${OFED_C}" -ofed/include/linux/linux_pci.c optional ofed | compat_linuxkpi \ - no-depend compile-with "${OFED_C}" -ofed/include/linux/linux_idr.c optional ofed | compat_linuxkpi \ - no-depend compile-with "${OFED_C}" -ofed/include/linux/linux_radix.c optional ofed | compat_linuxkpi \ - no-depend compile-with "${OFED_C}" +# Linux Kernel Programming Interface +compat/linuxkpi/common/src/linux_kmod.c optional compat_linuxkpi \ + no-depend compile-with "${LINUXKPI_C}" +compat/linuxkpi/common/src/linux_compat.c optional compat_linuxkpi \ + no-depend compile-with "${LINUXKPI_C}" +compat/linuxkpi/common/src/linux_pci.c optional compat_linuxkpi pci \ + no-depend compile-with "${LINUXKPI_C}" +compat/linuxkpi/common/src/linux_idr.c optional compat_linuxkpi \ + no-depend compile-with "${LINUXKPI_C}" +compat/linuxkpi/common/src/linux_radix.c optional compat_linuxkpi \ + no-depend compile-with "${LINUXKPI_C}" +compat/linuxkpi/common/src/linux_usb.c optional compat_linuxkpi usb \ + no-depend compile-with "${LINUXKPI_C}" + # OpenFabrics Enterprise Distribution (Infiniband) ofed/drivers/infiniband/core/addr.c optional ofed \ no-depend \ diff --git a/sys/conf/kern.pre.mk b/sys/conf/kern.pre.mk index 3783881..4328749 100644 --- a/sys/conf/kern.pre.mk +++ b/sys/conf/kern.pre.mk @@ -177,9 +177,13 @@ NORMAL_CTFCONVERT= @: NORMAL_LINT= ${LINT} ${LINTFLAGS} ${CFLAGS:M-[DIU]*} ${.IMPSRC} +# Linux Kernel Programming Interface C-flags +LINUXKPI_INCLUDES= -I$S/compat/linuxkpi/common/include +LINUXKPI_C= ${NORMAL_C} ${LINUXKPI_INCLUDES} + # Infiniband C flags. Correct include paths and omit errors that linux # does not honor. -OFEDINCLUDES= -I$S/ofed/include/ +OFEDINCLUDES= -I$S/ofed/include ${LINUXKPI_INCLUDES} OFEDNOERR= -Wno-cast-qual -Wno-pointer-arith OFEDCFLAGS= ${CFLAGS:N-I*} ${OFEDINCLUDES} ${CFLAGS:M-I*} ${OFEDNOERR} OFED_C_NOIMP= ${CC} -c -o ${.TARGET} ${OFEDCFLAGS} ${WERROR} ${PROF} |