freebsd with flexible iflib nic queues
Go to file
Richard Yao e0093fea58 Linux 3.4 compat, __clear_close_on_exec replaces FD_CLR
torvalds/linux@1dce27c5aa introduced
__clear_close_on_exec() as a replacement for FD_CLR. Further commits
appear to have removed FD_CLR from the Linux source tree.  This
causes the following failure:

  error: implicit declaration of function '__FD_CLR'
  [-Werror=implicit-function-declaration]

To correct this we update the code to use the current
__clear_close_on_exec() interface for readability.  Then we introduce
an autotools check to determine if __clear_close_on_exec() is available.
If it isn't then we define some compatibility logic which used the older
FD_CLR() interface.

Signed-off-by: Richard Yao <ryao@gentoo.org>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #124
2012-06-13 16:18:51 -07:00
cmd Cleanly support debug packages 2012-02-27 14:24:22 -08:00
config Linux 3.4 compat, __clear_close_on_exec replaces FD_CLR 2012-06-13 16:18:51 -07:00
include Linux 3.4 compat, __clear_close_on_exec replaces FD_CLR 2012-06-13 16:18:51 -07:00
lib Cleanly support debug packages 2012-02-27 14:24:22 -08:00
module Linux 3.4 compat, __clear_close_on_exec replaces FD_CLR 2012-06-13 16:18:51 -07:00
patches Reimplement rwlocks for Linux lock profiling/analysis. 2009-09-18 16:09:47 -07:00
scripts Cleanly support debug packages 2012-02-27 14:24:22 -08:00
.gitignore Ignore unsigned module build products 2010-03-11 14:29:17 -08:00
AUTHORS Public Release Prep 2010-05-17 15:18:00 -07:00
autogen.sh Public Release Prep 2010-05-17 15:18:00 -07:00
ChangeLog Prep for spl-0.5.0 tag 2010-08-13 09:33:50 -07:00
configure Linux 3.4 compat, __clear_close_on_exec replaces FD_CLR 2012-06-13 16:18:51 -07:00
configure.ac Add make rule for building Arch Linux packages 2011-12-14 16:44:10 -08:00
COPYING Public Release Prep 2010-05-17 15:18:00 -07:00
DISCLAIMER Public Release Prep 2010-05-17 15:18:00 -07:00
INSTALL Public Release Prep 2010-05-17 15:18:00 -07:00
Makefile.am Add the release component to headers 2012-01-18 11:06:26 -08:00
Makefile.in Cleanly support debug packages 2012-02-27 14:24:22 -08:00
META SPL 0.6.0-rc8 2012-03-26 11:57:13 -07:00
PKGBUILD-spl-modules.in Add make rule for building Arch Linux packages 2011-12-14 16:44:10 -08:00
PKGBUILD-spl.in Add make rule for building Arch Linux packages 2011-12-14 16:44:10 -08:00
README.markdown Fix markdown rendering 2010-09-15 09:05:34 -07:00
spl_config.h.in Linux 3.4 compat, __clear_close_on_exec replaces FD_CLR 2012-06-13 16:18:51 -07:00
spl-modules.spec.in Cleanly support debug packages 2012-02-27 14:24:22 -08:00
spl.spec.in Fix rpm dependencies 2012-01-18 11:24:36 -08:00

The Solaris Porting Layer (SPL) is a Linux kernel module which provides many of the Solaris kernel APIs. This shim layer makes it possible to run Solaris kernel code in the Linux kernel with relatively minimal modification. This can be particularly useful when you want to track upstream Solaris development closely and dont want the overhead of maintaining a large patch which converts Solaris primitives to Linux primitives.

To build packages for your distribution:

$ ./configure
$ make pkg

Full documentation for building, configuring, and using the SPL can be found at: http://zfsonlinux.org