OpenZFS on Linux and FreeBSD
Go to file
Ned Bass 55f10ae5e9 Implementation of a regression test for TQ_FRONT.
Use 3 threads and 8 tasks.  Dispatch the final 3 tasks with TQ_FRONT.
The first three tasks keep the worker threads busy while we stuff the
queues.  Use msleep() to force a known execution order, assuming
TQ_FRONT is properly honored.  Verify that the expected completion
order occurs.

The splat_taskq_test5_order() function may be useful in more than
one test.  This commit generalizes it by renaming the function to
splat_taskq_test_order() and adding a name argument instead of
assuming SPLAT_TASKQ_TEST5_NAME as the test name.

The documentation for splat taskq regression test #5 swaps the two required
completion orders in the diagram.  This commit corrects the error.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
2010-07-01 10:59:52 -07:00
cmd Only make compiler warnings fatal with --enable-debug 2010-06-30 17:05:36 -07:00
config Remove AC_DEFINE for DEBUG/NDEBUG 2010-07-01 09:40:29 -07:00
include Implementation of the TQ_FRONT flag. 2010-07-01 10:59:38 -07:00
lib Only make compiler warnings fatal with --enable-debug 2010-06-30 17:05:36 -07:00
module Implementation of a regression test for TQ_FRONT. 2010-07-01 10:59:52 -07:00
patches Reimplement rwlocks for Linux lock profiling/analysis. 2009-09-18 16:09:47 -07:00
scripts Only make compiler warnings fatal with --enable-debug 2010-06-30 17:05:36 -07: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
COPYING Public Release Prep 2010-05-17 15:18:00 -07:00
ChangeLog Re-Prep for 0.4.9 tag with a few more fixes and updated ChangeLog 2010-05-21 14:17:44 -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
META Update META to version 0.5.0 2010-06-11 15:57:25 -07:00
Makefile.am Allow spl_config.h to be included by dependant packages (updated) 2010-03-22 14:45:33 -07:00
Makefile.in Only make compiler warnings fatal with --enable-debug 2010-06-30 17:05:36 -07:00
README.markdown Add basic README 2010-06-29 14:18:18 -07:00
autogen.sh Public Release Prep 2010-05-17 15:18:00 -07:00
configure Remove AC_DEFINE for DEBUG/NDEBUG 2010-07-01 09:40:29 -07:00
configure.ac Public Release Prep 2010-05-17 15:18:00 -07:00
spl-modules.spec.in Minor spec file cleanup for RHEL6 package dependency. 2010-05-21 11:53:49 -07:00
spl.spec.in Remove usage of the __id_u macro for portability. 2009-10-05 12:51:58 -07:00
spl_config.h.in Remove AC_DEFINE for DEBUG/NDEBUG 2010-07-01 09:40:29 -07:00

README.markdown

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.

Documentation for building, configuring, and using the SPL can be found at: http://wiki.github.com/behlendorf/spl/