bf0c60c060
While the splat tests were originally designed to stress test the Solaris primatives. I am extending them to include some kernel compatibility tests. Certain linux APIs have changed frequently. These tests ensure that added compatibility is working properly and no unnoticed regression have slipped in. Test 1 and 2 add basic regression tests for shrink_icache_memory and shrink_dcache_memory. These are simply functional tests to ensure we can call these functions safely. Checking for correct behavior is more difficult since other running processes will influence the behavior. However, these functions are provided by the kernel so if we can successfully call them we assume they are working correctly. Test 3 checks that shrinker functions are being registered and called correctly. As of Linux 3.0 the shrinker API has changed four different times so I felt the need to add a trivial test case to ensure each variant works as expected. |
||
---|---|---|
cmd | ||
config | ||
include | ||
lib | ||
module | ||
patches | ||
scripts | ||
.gitignore | ||
AUTHORS | ||
COPYING | ||
ChangeLog | ||
DISCLAIMER | ||
INSTALL | ||
META | ||
Makefile.am | ||
Makefile.in | ||
README.markdown | ||
autogen.sh | ||
configure | ||
configure.ac | ||
spl-modules.spec.in | ||
spl.spec.in | ||
spl_config.h.in |
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 don’t 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