Giter Site home page Giter Site logo

spl's Introduction

This repo is archived. Alternate processes for contributing ZFS changes include following the illumos procedures, or opening a PR against ZFSonLinux.

The reasoning behind this are outlined in an email to the [email protected] mailing list, which is reproduced below:

The OpenZFS code repository on github (http://github.com/openzfs/openzfs) is a clone of the illumos repo, with basically identical code. The OpenZFS repo made it easier to contribute ZFS code to illumos, by leveraging the github pull request and code review processes, and by automatically building illumos and running the ZFS Test Suite.

Unfortunately, the automated systems have atrophied and we lack the effort and interest to maintain it. Meanwhile, the illumos code review and contribution process has been working well for a lot of ZFS changes (notably including ports from Linux).

Since the utility of this repo has decreased, and the volunteer workforce isn't available to maintain it, we will be archiving http://github.com/openzfs/openzfs in the coming week. Thank you to everyone who helped maintain this infrastructure, and to those who leveraged it to contribute over 500 commits to ZFS on illumos! Alternate processes for contributing ZFS changes (including those in open PR's) include following the illumos procedures, or opening a PR against ZFSonLinux.

spl's People

Contributors

ahrens avatar andrey-ve avatar behlendorf avatar bprotopopov avatar chrisrd avatar clefru avatar dajhorn avatar dechamps avatar dpquigl avatar dweeezil avatar fabian-gruenbichler avatar fransurbo avatar gunnarbeutner avatar jengelh avatar kdomanski avatar kohsuke avatar kusumi avatar loli10k avatar lundman avatar maci0 avatar maxximino avatar nedbass avatar ofaaland avatar prakashsurya avatar prometheanfire avatar ryao avatar tonyhutter avatar tuxoko avatar verygreen avatar yshui avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

spl's Issues

zfs mount command not working, not giving any output

Sorry, I am not too familiar with ZFS, but judging from the ZFS manual, this should work. I am trying to access the partition created with Solaris 10. I'd expect to at least see an error message.

sudo zfs list
NAME USED AVAIL REFER MOUNTPOINT
rpool 49.6G 407G 34.5K /rpool
rpool/ROOT 7.72G 407G 21K legacy
rpool/ROOT/s10u8 7.72G 407G 7.72G /
rpool/dump 1.00G 407G 1.00G -
rpool/storage 16.9G 407G 16.9G /mnt/solaris
rpool/swap 24G 431G 229M -
rpool/zones 21K 407G 21K /zones
sudo /usr/sbin/zfs mount rpool/storage
echo $?
38
sudo strace /usr/sbin/zfs mount rpool/storage
execve("/usr/sbin/zfs", ["/usr/sbin/zfs", "mount", "rpool/storage"], [/* 17 vars _/]) = 0
brk(0) = 0x18618000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2ae79ad90000
uname({sys="Linux", node="betahost1", ...}) = 0
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=32243, ...}) = 0
mmap(NULL, 32243, PROT_READ, MAP_PRIVATE, 3, 0) = 0x2ae79ad91000
close(3) = 0
open("/lib64/tls/x86_64/libspl.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/lib64/tls/x86_64", 0x7fff9368adc0) = -1 ENOENT (No such file or directory)
open("/lib64/tls/libspl.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/lib64/tls", 0x7fff9368adc0) = -1 ENOENT (No such file or directory)
open("/lib64/x86_64/libspl.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/lib64/x86_64", 0x7fff9368adc0) = -1 ENOENT (No such file or directory)
open("/lib64/libspl.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/lib64", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
open("/usr/lib64/tls/x86_64/libspl.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/usr/lib64/tls/x86_64", 0x7fff9368adc0) = -1 ENOENT (No such file or directory)
open("/usr/lib64/tls/libspl.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/usr/lib64/tls", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
open("/usr/lib64/x86_64/libspl.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/usr/lib64/x86_64", 0x7fff9368adc0) = -1 ENOENT (No such file or directory)
open("/usr/lib64/libspl.so.0", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@+\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=62919, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2ae79ad99000
mmap(NULL, 2118640, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x2ae79ad9a000
mprotect(0x2ae79ad9e000, 2097152, PROT_NONE) = 0
mmap(0x2ae79af9e000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4000) = 0x2ae79af9e000
close(3) = 0
open("/lib64/libavl.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib64/tls/libavl.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib64/libavl.so.0", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\360\7\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=24349, ...}) = 0
mmap(NULL, 2103312, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x2ae79afa0000
mprotect(0x2ae79afa2000, 2093056, PROT_NONE) = 0
mmap(0x2ae79b1a1000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1000) = 0x2ae79b1a1000
close(3) = 0
open("/lib64/libefi.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib64/tls/libefi.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib64/libefi.so.0", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\200\r\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=46024, ...}) = 0
mmap(NULL, 2113392, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x2ae79b1a2000
mprotect(0x2ae79b1a6000, 2093056, PROT_NONE) = 0
mmap(0x2ae79b3a5000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x2ae79b3a5000
close(3) = 0
open("/lib64/libnvpair.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib64/tls/libnvpair.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib64/libnvpair.so.0", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320:\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=203194, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2ae79b3a6000
mmap(NULL, 2152360, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x2ae79b3a7000
mprotect(0x2ae79b3b4000, 2097152, PROT_NONE) = 0
mmap(0x2ae79b5b4000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xd000) = 0x2ae79b5b4000
close(3) = 0
open("/lib64/libunicode.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib64/tls/libunicode.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib64/libunicode.so.0", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\360\7\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=373025, ...}) = 0
mmap(NULL, 2419104, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x2ae79b5b5000
mprotect(0x2ae79b604000, 2093056, PROT_NONE) = 0
mmap(0x2ae79b803000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4e000) = 0x2ae79b803000
close(3) = 0
open("/lib64/libuutil.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib64/tls/libuutil.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib64/libuutil.so.0", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260&\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=115695, ...}) = 0
mmap(NULL, 2132952, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x2ae79b804000
mprotect(0x2ae79b80d000, 2093056, PROT_NONE) = 0
mmap(0x2ae79ba0c000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x8000) = 0x2ae79ba0c000
close(3) = 0
open("/lib64/libzpool.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib64/tls/libzpool.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib64/libzpool.so.0", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240\27\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=2908259, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2ae79ba0d000
mmap(NULL, 2907392, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x2ae79ba0e000
mprotect(0x2ae79bac2000, 2097152, PROT_NONE) = 0
mmap(0x2ae79bcc2000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xb4000) = 0x2ae79bcc2000
mmap(0x2ae79bcc8000, 48384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x2ae79bcc8000
close(3) = 0
open("/lib64/librt.so.1", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 "\2543\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=53448, ...}) = 0 mmap(0x33ac600000, 2132936, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x33ac600000 mprotect(0x33ac607000, 2097152, PROT_NONE) = 0 mmap(0x33ac807000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7000) = 0x33ac807000 close(3) = 0 open("/lib64/libzfs.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/lib64/tls/libzfs.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/lib64/libzfs.so.0", O_RDONLY) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0000u\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=633198, ...}) = 0 mmap(NULL, 2337904, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x2ae79bcd4000 mprotect(0x2ae79bd0e000, 2097152, PROT_NONE) = 0 mmap(0x2ae79bf0e000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3a000) = 0x2ae79bf0e000 close(3) = 0 open("/lib64/libm.so.6", O_RDONLY) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0>\340\2533\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=615136, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2ae79bf0f000
mmap(0x33abe00000, 2629848, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x33abe00000
mprotect(0x33abe82000, 2093056, PROT_NONE) = 0
mmap(0x33ac081000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x81000) = 0x33ac081000
close(3) = 0
open("/lib64/libuuid.so.1", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\25 \2533\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=17728, ...}) = 0
mmap(0x33ab200000, 2110416, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x33ab200000
mprotect(0x33ab203000, 2097152, PROT_NONE) = 0
mmap(0x33ab403000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x33ab403000
close(3) = 0
open("/usr/lib64/libz.so.1", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\36 \2543\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=85608, ...}) = 0
mmap(0x33ac200000, 2178600, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x33ac200000
mprotect(0x33ac214000, 2093056, PROT_NONE) = 0
mmap(0x33ac413000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x13000) = 0x33ac413000
close(3) = 0
open("/lib64/libpthread.so.0", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240W \2533\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=145824, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2ae79bf10000
mmap(0x33ab200000, 2204528, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x2ae79bf11000
mprotect(0x2ae79bf27000, 2093056, PROT_NONE) = 0
mmap(0x2ae79c126000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x15000) = 0x2ae79c126000
mmap(0x2ae79c128000, 13168, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x2ae79c128000
close(3) = 0
open("/lib64/libc.so.6", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220\332\241\2523\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1718120, ...}) = 0
mmap(0x33aaa00000, 3498328, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x33aaa00000
mprotect(0x33aab4e000, 2093056, PROT_NONE) = 0
mmap(0x33aad4d000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14d000) = 0x33aad4d000
mmap(0x33aad52000, 16728, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x33aad52000
close(3) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2ae79c12c000
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2ae79c12d000
arch_prctl(ARCH_SET_FS, 0x2ae79c12d7c0) = 0
mprotect(0x33aad4d000, 16384, PROT_READ) = 0
mprotect(0x2ae79c126000, 4096, PROT_READ) = 0
mprotect(0x33ac081000, 4096, PROT_READ) = 0
mprotect(0x33ac807000, 4096, PROT_READ) = 0
mprotect(0x33aa81b000, 4096, PROT_READ) = 0
munmap(0x2ae79ad91000, 32243) = 0
set_tid_address(0x2ae79c12d850) = 14494
set_robust_list(0x2ae79c12d860, 0x18) = 0
futex(0x7fff9368b8ec, FUTEX_WAKE_PRIVATE, 1) = 0
rt_sigaction(SIGRTMIN, {0x2ae79bf16380, [], SA_RESTORER|SA_SIGINFO, 0x2ae79bf1fb10}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {0x2ae79bf162b0, [], SA_RESTORER|SA_RESTART|SA_SIGINFO, 0x2ae79bf1fb10}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=10240_1024, rlim_max=RLIM_INFINITY}) = 0
brk(0) = 0x18618000
brk(0x18639000) = 0x18639000
open("/usr/lib/locale/locale-archive", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=56426128, ...}) = 0
mmap(NULL, 56426128, PROT_READ, MAP_PRIVATE, 3, 0) = 0x2ae79c12f000
close(3) = 0
open("/proc/mounts", O_RDONLY) = 3
open("/dev/zfs", O_RDWR) = 4
open("/proc/mounts", O_RDONLY) = 5
open("/etc/dfs/sharetab", O_RDONLY) = -1 ENOENT (No such file or directory)
close(3) = 0
close(4) = 0
close(5) = 0
exit_group(38) = ?

Some "differ in signedness" issues.

Got some "differ in signedness" warnings/errors. Here is workaround (worked for me):

  1. module/spl/spl-debug.c
--- module/spl/spl-debug.c      2010-05-25 02:21:35.000000000 +0900
+++ /module/spl/spl-debug.fixed.c       2010-06-30 12:19:56.000000000 +0900
@@ -47,17 +47,17 @@

 unsigned long spl_debug_subsys = ~0; 
 EXPORT_SYMBOL(spl_debug_subsys); 
-module_param(spl_debug_subsys, long, 0644); 
+module_param(spl_debug_subsys, ulong, 0644);
 MODULE_PARM_DESC(spl_debug_subsys, "Subsystem debugging level mask.");

 unsigned long spl_debug_mask = (D_EMERG | D_ERROR | D_WARNING | D_CONSOLE);
 EXPORT_SYMBOL(spl_debug_mask);
-module_param(spl_debug_mask, long, 0644);
+module_param(spl_debug_mask, ulong, 0644);
 MODULE_PARM_DESC(spl_debug_mask, "Debugging level mask.");

 unsigned long spl_debug_printk = D_CANTMASK;
 EXPORT_SYMBOL(spl_debug_printk);
-module_param(spl_debug_printk, long, 0644);
+module_param(spl_debug_printk, ulong, 0644);
 MODULE_PARM_DESC(spl_debug_printk, "Console printk level mask.");

 int spl_debug_mb = -1;
@@ -73,7 +73,7 @@

 unsigned int spl_debug_panic_on_bug = 0;
 EXPORT_SYMBOL(spl_debug_panic_on_bug);
-module_param(spl_debug_panic_on_bug, int, 0644);
+module_param(spl_debug_panic_on_bug, uint, 0644);
 MODULE_PARM_DESC(spl_debug_panic_on_bug, "Panic on BUG");

 static char spl_debug_file_name[PATH_MAX];
  1. module/spl/spl-generic.c
--- module/spl/spl-generic.c    2010-05-25 02:21:35.000000000 +0900
+++ module/spl/spl-generic.fixed.c     2010-06-30 14:10:59.000000000 +0900
@@ -206,7 +206,7 @@
        int rc;                                                         \
                                                                        \
        if (*str == '-') {                                              \
-               rc = ddi_strtou##type(str + 1, endptr, base, result);   \
+               rc = ddi_strto##type(str + 1, endptr, base, result);    \
                if (!rc) {                                              \
                        if (*endptr == str + 1)                         \
                                *endptr = (char *)str;                  \
@@ -214,12 +214,14 @@
                                *result = -*result;                     \
                }                                                       \
        } else {                                                        \
-               rc = ddi_strtou##type(str, endptr, base, result);       \
+               rc = ddi_strto##type(str, endptr, base, result);        \
        }                                                               \
                                                                        \
        return rc;                                                      \
 }

 define_ddi_strtoux(l, unsigned long)
 define_ddi_strtox(l, long)
 define_ddi_strtoux(ll, unsigned long long)
  1. module/spl/spl-thread.c
--- module/spl/spl-thread.c     2010-05-25 02:21:35.000000000 +0900
+++ module/spl/spl-thread.fixed.c      2010-06-30 12:43:19.000000000 +0900
@@ -123,7 +123,7 @@
        tp->tp_state = state;
        tp->tp_pri   = pri;

-       tsk = kthread_create(thread_generic_wrapper, (void *)tp, tp->tp_name);
+       tsk = kthread_create(thread_generic_wrapper, (void *)tp, "%s", tp->tp_name);
        if (IS_ERR(tsk)) {
                CERROR("Failed to create thread: %ld\n", PTR_ERR(tsk));
                RETURN(NULL);
  1. module/spl/spl-vnode.c
--- module/spl/spl-vnode.c      2010-05-25 02:21:35.000000000 +0900
+++ ../spl-0.4.9-1/module/spl/spl-vnode.c       2010-06-30 13:49:05.000000000 +0900
@@ -258,7 +258,7 @@
 static struct dentry *
 vn_lookup_hash(struct nameidata *nd)
 {
-       return lookup_one_len(nd->last.name, nd->nd_dentry, nd->last.len);
+       return lookup_one_len( (const char*) nd->last.name, nd->nd_dentry, nd->last.len);
 } /* lookup_hash() */

Kernel oops with splat on userland SIGINT

I've found that I can consistently crash (oops) the module by SIG-INTing the splat userland process during the atomicity test. I presume it has to do with writing to a defunct fd (ioctl response) or with destructing the testcase state early (_fini function called early?)

This looks, however, different from the #22, which is why I attach the other (SIGINT triggered) kernel trace as well - it is quite lengthy

Jul  7 14:49:49 localhost kernel: [  189.675967] SPL: Loaded Solaris Porting Layer v0.5.0
Jul  7 14:49:49 localhost kernel: [  189.683315] SPLAT: Loaded Solaris Porting LAyer Tests v0.5.0
Jul  7 14:50:00 localhost kernel: [  200.674771] BUG: unable to handle kernel NULL pointer dereference at 00000002
Jul  7 14:50:00 localhost kernel: [  200.677501] IP: [] __ticket_spin_lock+0x8/0x20
Jul  7 14:50:00 localhost kernel: [  200.677501] *pdpt = 0000000036e79001 *pde = 0000000000000000 
Jul  7 14:50:00 localhost kernel: [  200.677501] Oops: 0002 [#1] SMP 
Jul  7 14:50:00 localhost kernel: [  200.677501] last sysfs file: /sys/devices/pci0000:00/0000:00:1e.0/0000:05:04.0/net/eth1/brport/hold_timer
Jul  7 14:50:00 localhost kernel: [  200.677501] Modules linked in: splat spl autofs4 ib_iser rdma_cm ib_cm iw_cm snd_hda_codec_analog ib_sa ib_mad ib_core ib_addr iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi bridge stp snd_hda_intel snd_hda_codec snd_hwdep snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device usbhid usblp snd fbcon tileblit font bitblit softcursor ohci1394 lp parport asus_atk0110 intel_agp agpgart soundcore vga16fb vgastate snd_page_alloc hid ieee1394 skge ahci libahci sky2 pata_jmicron
Jul  7 14:50:00 localhost kernel: [  200.677501] 
Jul  7 14:50:00 localhost kernel: [  200.677501] Pid: 24768, comm: splat_atomic_wo Not tainted 2.6.35-rc3splice+ #1 P5B-Deluxe/System Product Name
Jul  7 14:50:00 localhost kernel: [  200.677501] EIP: 0060:[] EFLAGS: 00010246 CPU: 3
Jul  7 14:50:00 localhost kernel: [  200.677501] EIP is at __ticket_spin_lock+0x8/0x20
Jul  7 14:50:00 localhost kernel: [  200.677501] EAX: 00000002 EBX: 000aae60 ECX: ef90be34 EDX: 00000100
Jul  7 14:50:00 localhost kernel: [  200.677501] ESI: ef90be4c EDI: 00000000 EBP: efce3f40 ESP: efce3f40
Jul  7 14:50:00 localhost kernel: [  200.677501]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
Jul  7 14:50:00 localhost kernel: [  200.677501] Process splat_atomic_wo (pid: 24768, ti=efce2000 task=ef981960 task.ti=efce2000)
Jul  7 14:50:00 localhost kernel: [  200.677501] Stack:
Jul  7 14:50:00 localhost kernel: [  200.677501]  efce3f48 c05c443d efce3fa4 f8758b99 f8769868 f8761bd8 00000014 f87630d7
Jul  7 14:50:00 localhost kernel: [  200.677501] <0> 00000000 009de3e7 00000000 00000002 f6eff5a0 ef90be40 00000000 00000000
Jul  7 14:50:00 localhost kernel: [  200.677501] <0> 009de3e7 00000000 ef981960 00000020 ef90be34 00000000 f6eff5a0 f87589c0
Jul  7 14:50:00 localhost kernel: [  200.677501] Call Trace:
Jul  7 14:50:00 localhost kernel: [  200.677501]  [] ? _raw_spin_lock+0xd/0x10
Jul  7 14:50:00 localhost kernel: [  200.677501]  [] ? splat_atomic_work+0x1d9/0x340 [splat]
Jul  7 14:50:00 localhost kernel: [  200.677501]  [] ? splat_atomic_work+0x0/0x340 [splat]
Jul  7 14:50:00 localhost kernel: [  200.677501]  [] ? thread_generic_wrapper+0x5e/0x70 [spl]
Jul  7 14:50:00 localhost kernel: [  200.677501]  [] ? thread_generic_wrapper+0x0/0x70 [spl]
Jul  7 14:50:00 localhost kernel: [  200.677501]  [] ? kthread+0x74/0x80
Jul  7 14:50:00 localhost kernel: [  200.677501]  [] ? kthread+0x0/0x80
Jul  7 14:50:00 localhost kernel: [  200.677501]  [] ? kernel_thread_helper+0x6/0x10
Jul  7 14:50:00 localhost kernel: [  200.677501] Code: b8 3d 28 13 c0 e9 59 ff ff ff 90 b9 40 28 13 c0 b8 43 28 13 c0 e9 49 ff ff ff 90 90 90 90 90 90 90 90 90 55 ba 00 01 00 00 89 e5  66 0f c1 10 38 f2 74 06 f3 90 8a 10 eb f6 5d c3 8d b4 26 00 
Jul  7 14:50:00 localhost kernel: [  200.677501] EIP: [] __ticket_spin_lock+0x8/0x20 SS:ESP 0068:efce3f40
Jul  7 14:50:00 localhost kernel: [  200.677501] CR2: 0000000000000002
Jul  7 14:50:00 localhost kernel: [  200.677001] BUG: unable to handle kernel 
Jul  7 14:50:00 localhost kernel: [  200.897607] ---[ end trace 8f4bccb8b278b2b9 ]---
Jul  7 14:50:01 localhost kernel: [  200.677001] NULL pointer dereference at 00000002
Jul  7 14:50:01 localhost kernel: [  200.677001] IP: [] __ticket_spin_lock+0x8/0x20
Jul  7 14:50:01 localhost kernel: [  200.677001] *pdpt = 00000000008bc001 *pde = 0000000000000000 
Jul  7 14:50:01 localhost kernel: [  200.677001] Oops: 0002 [#2] SMP 
Jul  7 14:50:01 localhost kernel: [  200.677001] last sysfs file: /sys/devices/pci0000:00/0000:00:1e.0/0000:05:04.0/net/eth1/brport/hold_timer
Jul  7 14:50:01 localhost kernel: [  200.677001] Modules linked in: splat spl autofs4 ib_iser rdma_cm ib_cm iw_cm snd_hda_codec_analog ib_sa ib_mad ib_core ib_addr iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi bridge stp snd_hda_intel snd_hda_codec snd_hwdep snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device usbhid usblp snd fbcon tileblit font bitblit softcursor ohci1394 lp parport asus_atk0110 intel_agp agpgart soundcore vga16fb vgastate snd_page_alloc hid ieee1394 skge ahci libahci sky2 pata_jmicron
Jul  7 14:50:01 localhost kernel: [  200.677001] 
Jul  7 14:50:01 localhost kernel: [  200.677001] Pid: 24769, comm: splat_atomic_wo Tainted: G      D     2.6.35-rc3splice+ #1 P5B-Deluxe/System Product Name
Jul  7 14:50:01 localhost kernel: [  200.677001] EIP: 0060:[] EFLAGS: 00010246 CPU: 2
Jul  7 14:50:01 localhost kernel: [  200.677001] EIP is at __ticket_spin_lock+0x8/0x20
Jul  7 14:50:01 localhost kernel: [  200.677001] EAX: 00000002 EBX: 000aae60 ECX: ef90be34 EDX: 00000100
Jul  7 14:50:01 localhost kernel: [  200.677001] ESI: ef90be4c EDI: 00000001 EBP: f2f99f40 ESP: f2f99f40
Jul  7 14:50:01 localhost kernel: [  200.677001]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
Jul  7 14:50:01 localhost kernel: [  200.677001] Process splat_atomic_wo (pid: 24769, ti=f2f98000 task=ef984c20 task.ti=f2f98000)
Jul  7 14:50:01 localhost kernel: [  200.677001] Stack:
Jul  7 14:50:01 localhost kernel: [  200.677001]  f2f99f48 c05c443d f2f99fa4 f8758b99 f8769834 f8761bd8 00000014 f87630d7
Jul  7 14:50:01 localhost kernel: [  200.677001] <0> 00000001 009df391 00000000 00000002 f2f99f88 ef90be40 00000000 00000000
Jul  7 14:50:01 localhost kernel: [  200.677001] <0> 009df391 00000000 ef984c20 00000020 ef90be34 00000000 f6eff7e0 f87589c0
Jul  7 14:50:01 localhost kernel: [  200.677001] Call Trace:
Jul  7 14:50:01 localhost kernel: [  200.677001]  [] ? _raw_spin_lock+0xd/0x10
Jul  7 14:50:01 localhost kernel: [  200.677001]  [] ? splat_atomic_work+0x1d9/0x340 [splat]
Jul  7 14:50:01 localhost kernel: [  200.677001]  [] ? splat_atomic_work+0x0/0x340 [splat]
Jul  7 14:50:01 localhost kernel: [  200.677001]  [] ? thread_generic_wrapper+0x5e/0x70 [spl]
Jul  7 14:50:01 localhost kernel: [  200.677001]  [] ? thread_generic_wrapper+0x0/0x70 [spl]
Jul  7 14:50:01 localhost kernel: [  200.677001]  [] ? kthread+0x74/0x80
Jul  7 14:50:01 localhost kernel: [  200.677001]  [] ? kthread+0x0/0x80
Jul  7 14:50:01 localhost kernel: [  200.677001]  [] ? kernel_thread_helper+0x6/0x10
Jul  7 14:50:01 localhost kernel: [  200.677001] Code: b8 3d 28 13 c0 e9 59 ff ff ff 90 b9 40 28 13 c0 b8 43 28 13 c0 e9 49 ff ff ff 90 90 90 90 90 90 90 90 90 55 ba 00 01 00 00 89 e5  66 0f c1 10 38 f2 74 06 f3 90 8a 10 eb f6 5d c3 8d b4 26 00 
Jul  7 14:50:01 localhost kernel: [  200.677001] EIP: [] __ticket_spin_lock+0x8/0x20 SS:ESP 0068:f2f99f40
Jul  7 14:50:01 localhost kernel: [  200.677001] CR2: 0000000000000002
Jul  7 14:50:01 localhost kernel: [  200.900491] BUG: unable to handle kernel 
Jul  7 14:50:01 localhost kernel: [  201.196012] ---[ end trace 8f4bccb8b278b2ba ]---
Jul  7 14:50:01 localhost kernel: [  200.900491] NULL pointer dereference at 00000002
Jul  7 14:50:01 localhost kernel: [  200.900491] IP: [] __ticket_spin_lock+0x8/0x20
Jul  7 14:50:01 localhost kernel: [  200.900491] *pdpt = 0000000031057001 *pde = 0000000000000000 
Jul  7 14:50:01 localhost kernel: [  200.900491] Oops: 0002 [#3] SMP 
Jul  7 14:50:01 localhost kernel: [  200.900491] last sysfs file: /sys/devices/pci0000:00/0000:00:1e.0/0000:05:04.0/net/eth1/brport/hold_timer
Jul  7 14:50:01 localhost kernel: [  200.900491] Modules linked in: splat spl autofs4 ib_iser rdma_cm ib_cm iw_cm snd_hda_codec_analog ib_sa ib_mad ib_core ib_addr iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi bridge stp snd_hda_intel snd_hda_codec snd_hwdep snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device usbhid usblp snd fbcon tileblit font bitblit softcursor ohci1394 lp parport asus_atk0110 intel_agp agpgart soundcore vga16fb vgastate snd_page_alloc hid ieee1394 skge ahci libahci sky2 pata_jmicron
Jul  7 14:50:01 localhost kernel: [  200.900491] 
Jul  7 14:50:01 localhost kernel: [  200.900491] Pid: 24773, comm: splat_atomic_wo Tainted: G      D     2.6.35-rc3splice+ #1 P5B-Deluxe/System Product Name
Jul  7 14:50:01 localhost kernel: [  200.900491] EIP: 0060:[] EFLAGS: 00010246 CPU: 1
Jul  7 14:50:01 localhost kernel: [  200.900491] EIP is at __ticket_spin_lock+0x8/0x20
Jul  7 14:50:01 localhost kernel: [  200.900491] EAX: 00000002 EBX: 0007a120 ECX: ef90be34 EDX: 00000100
Jul  7 14:50:01 localhost kernel: [  200.900491] ESI: ef90be4c EDI: 00000005 EBP: f1c0df40 ESP: f1c0df40
Jul  7 14:50:01 localhost kernel: [  200.900491]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
Jul  7 14:50:01 localhost kernel: [  200.900491] Process splat_atomic_wo (pid: 24773, ti=f1c0c000 task=ef982610 task.ti=f1c0c000)
Jul  7 14:50:01 localhost kernel: [  200.900491] Stack:
Jul  7 14:50:01 localhost kernel: [  200.900491]  f1c0df48 c05c443d f1c0dfa4 f8758b99 f87698d0 f8761bd8 00000014 f87630d7
Jul  7 14:50:01 localhost kernel: [  200.900491] <0> 00000005 009ca2c9 00000000 00000002 efcf4b40 ef90be40 00000000 00000000
Jul  7 14:50:01 localhost kernel: [  200.900491] <0> 009ca2c9 00000000 ef982610 00000020 ef90be34 00000000 efcf4b40 f87589c0
Jul  7 14:50:01 localhost kernel: [  200.900491] Call Trace:
Jul  7 14:50:01 localhost kernel: [  200.900491]  [] ? _raw_spin_lock+0xd/0x10
Jul  7 14:50:01 localhost kernel: [  200.900491]  [] ? splat_atomic_work+0x1d9/0x340 [splat]
Jul  7 14:50:01 localhost kernel: [  200.900491]  [] ? splat_atomic_work+0x0/0x340 [splat]
Jul  7 14:50:01 localhost kernel: [  200.900491]  [] ? thread_generic_wrapper+0x5e/0x70 [spl]
Jul  7 14:50:01 localhost kernel: [  200.900491]  [] ? thread_generic_wrapper+0x0/0x70 [spl]
Jul  7 14:50:01 localhost kernel: [  200.900491]  [] ? kthread+0x74/0x80
Jul  7 14:50:01 localhost kernel: [  200.900491]  [] ? kthread+0x0/0x80
Jul  7 14:50:01 localhost kernel: [  200.900491]  [] ? kernel_thread_helper+0x6/0x10
Jul  7 14:50:01 localhost kernel: [  200.900491] Code: b8 3d 28 13 c0 e9 59 ff ff ff 90 b9 40 28 13 c0 b8 43 28 13 c0 e9 49 ff ff ff 90 90 90 90 90 90 90 90 90 55 ba 00 01 00 00 89 e5  66 0f c1 10 38 f2 74 06 f3 90 8a 10 eb f6 5d c3 8d b4 26 00 
Jul  7 14:50:01 localhost kernel: [  200.900491] EIP: [] __ticket_spin_lock+0x8/0x20 SS:ESP 0068:f1c0df40
Jul  7 14:50:01 localhost kernel: [  200.900491] CR2: 0000000000000002
Jul  7 14:50:01 localhost kernel: [  201.197315] BUG: unable to handle kernel 
Jul  7 14:50:01 localhost kernel: [  201.496471] ---[ end trace 8f4bccb8b278b2bb ]---
Jul  7 14:50:01 localhost kernel: [  201.197315] NULL pointer dereference at 00000002
Jul  7 14:50:01 localhost kernel: [  201.197315] IP: [] __ticket_spin_lock+0x8/0x20
Jul  7 14:50:01 localhost kernel: [  201.197315] *pdpt = 0000000037515001 *pde = 0000000000000000 
Jul  7 14:50:01 localhost kernel: [  201.197315] Oops: 0002 [#4] SMP 
Jul  7 14:50:01 localhost kernel: [  201.197315] last sysfs file: /sys/devices/pci0000:00/0000:00:1e.0/0000:05:04.0/net/eth1/brport/hold_timer
Jul  7 14:50:01 localhost kernel: [  201.197315] Modules linked in: splat spl autofs4 ib_iser rdma_cm ib_cm iw_cm snd_hda_codec_analog ib_sa ib_mad ib_core ib_addr iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi bridge stp snd_hda_intel snd_hda_codec snd_hwdep snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device usbhid usblp snd fbcon tileblit font bitblit softcursor ohci1394 lp parport asus_atk0110 intel_agp agpgart soundcore vga16fb vgastate snd_page_alloc hid ieee1394 skge ahci libahci sky2 pata_jmicron
Jul  7 14:50:01 localhost kernel: [  201.197315] 
Jul  7 14:50:01 localhost kernel: [  201.197315] Pid: 24772, comm: splat_atomic_wo Tainted: G      D     2.6.35-rc3splice+ #1 P5B-Deluxe/System Product Name
Jul  7 14:50:01 localhost kernel: [  201.197315] EIP: 0060:[] EFLAGS: 00010246 CPU: 0
Jul  7 14:50:01 localhost kernel: [  201.197315] EIP is at __ticket_spin_lock+0x8/0x20
Jul  7 14:50:01 localhost kernel: [  201.197315] EAX: 00000002 EBX: 000aae60 ECX: ef90be34 EDX: 00000100
Jul  7 14:50:01 localhost kernel: [  201.197315] ESI: ef90be4c EDI: 00000004 EBP: efb37f40 ESP: efb37f40
Jul  7 14:50:01 localhost kernel: [  201.197315]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
Jul  7 14:50:01 localhost kernel: [  201.197315] Process splat_atomic_wo (pid: 24772, ti=efb36000 task=ef980000 task.ti=efb36000)
Jul  7 14:50:01 localhost kernel: [  201.197315] Stack:
Jul  7 14:50:01 localhost kernel: [  201.197315]  efb37f48 c05c443d efb37fa4 f8758b99 f876989c f8761bd8 00000014 f87630d7
Jul  7 14:50:01 localhost kernel: [  201.197315] <0> 00000004 009d13bf 00000000 00000002 efcf4060 ef90be40 00000000 00000000
Jul  7 14:50:01 localhost kernel: [  201.197315] <0> 009d13bf 00000000 ef980000 00000020 ef90be34 00000000 efcf4060 f87589c0
Jul  7 14:50:01 localhost kernel: [  201.197315] Call Trace:
Jul  7 14:50:01 localhost kernel: [  201.197315]  [] ? _raw_spin_lock+0xd/0x10
Jul  7 14:50:01 localhost kernel: [  201.197315]  [] ? splat_atomic_work+0x1d9/0x340 [splat]
Jul  7 14:50:01 localhost kernel: [  201.197315]  [] ? splat_atomic_work+0x0/0x340 [splat]
Jul  7 14:50:01 localhost kernel: [  201.197315]  [] ? thread_generic_wrapper+0x5e/0x70 [spl]
Jul  7 14:50:01 localhost kernel: [  201.197315]  [] ? thread_generic_wrapper+0x0/0x70 [spl]
Jul  7 14:50:01 localhost kernel: [  201.197315]  [] ? kthread+0x74/0x80
Jul  7 14:50:01 localhost kernel: [  201.197315]  [] ? kthread+0x0/0x80
Jul  7 14:50:01 localhost kernel: [  201.197315]  [] ? kernel_thread_helper+0x6/0x10
Jul  7 14:50:01 localhost kernel: [  201.197315] Code: b8 3d 28 13 c0 e9 59 ff ff ff 90 b9 40 28 13 c0 b8 43 28 13 c0 e9 49 ff ff ff 90 90 90 90 90 90 90 90 90 55 ba 00 01 00 00 89 e5  66 0f c1 10 38 f2 74 06 f3 90 8a 10 eb f6 5d c3 8d b4 26 00 
Jul  7 14:50:01 localhost kernel: [  201.197315] EIP: [] __ticket_spin_lock+0x8/0x20 SS:ESP 0068:efb37f40
Jul  7 14:50:01 localhost kernel: [  201.197315] CR2: 0000000000000002
Jul  7 14:50:01 localhost kernel: [  200.905501] BUG: unable to handle kernel 
Jul  7 14:50:01 localhost kernel: [  201.794790] ---[ end trace 8f4bccb8b278b2bc ]---
Jul  7 14:50:01 localhost kernel: [  201.804007] NULL pointer dereference at 00000002
Jul  7 14:50:01 localhost kernel: [  201.804007] IP: [] __ticket_spin_lock+0x8/0x20
Jul  7 14:50:01 localhost kernel: [  201.804007] *pdpt = 0000000036e79001 *pde = 0000000000000000 
Jul  7 14:50:01 localhost kernel: [  201.804007] Oops: 0002 [#5] SMP 
Jul  7 14:50:01 localhost kernel: [  201.804007] last sysfs file: /sys/devices/pci0000:00/0000:00:1e.0/0000:05:04.0/net/eth1/brport/hold_timer
Jul  7 14:50:01 localhost kernel: [  201.804007] Modules linked in: splat spl autofs4 ib_iser rdma_cm ib_cm iw_cm snd_hda_codec_analog ib_sa ib_mad ib_core ib_addr iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi bridge stp snd_hda_intel snd_hda_codec snd_hwdep snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device usbhid usblp snd fbcon tileblit font bitblit softcursor ohci1394 lp parport asus_atk0110 intel_agp agpgart soundcore vga16fb vgastate snd_page_alloc hid ieee1394 skge ahci libahci sky2 pata_jmicron
Jul  7 14:50:01 localhost kernel: [  201.804007] 
Jul  7 14:50:01 localhost kernel: [  201.804007] Pid: 24770, comm: splat_atomic_wo Tainted: G      D     2.6.35-rc3splice+ #1 P5B-Deluxe/System Product Name
Jul  7 14:50:01 localhost kernel: [  201.804007] EIP: 0060:[] EFLAGS: 00010246 CPU: 3
Jul  7 14:50:01 localhost kernel: [  201.804007] EIP is at __ticket_spin_lock+0x8/0x20
Jul  7 14:50:01 localhost kernel: [  201.804007] EAX: 00000002 EBX: 000aae60 ECX: ef90be34 EDX: 00000100
Jul  7 14:50:01 localhost kernel: [  201.804007] ESI: ef90be4c EDI: 00000002 EBP: efd25f40 ESP: efd25f40
Jul  7 14:50:01 localhost kernel: [  201.804007]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
Jul  7 14:50:01 localhost kernel: [  201.804007] Process splat_atomic_wo (pid: 24770, ti=efd24000 task=ef9858d0 task.ti=efd24000)
Jul  7 14:50:01 localhost kernel: [  201.804007] Stack:
Jul  7 14:50:01 localhost kernel: [  201.804007]  efd25f48 c05c443d efd25fa4 f8758b99 f8769938 f8761bd8 00000014 f87630d7
Jul  7 14:50:01 localhost kernel: [  201.804007] <0> 00000002 009d2fa0 00000000 00000002 efcf4a80 ef90be40 00000000 00000000
Jul  7 14:50:01 localhost kernel: [  201.804007] <0> 009d2fa0 00000000 ef9858d0 00000020 ef90be34 00000000 efcf4a80 f87589c0
Jul  7 14:50:01 localhost kernel: [  201.804007] Call Trace:
Jul  7 14:50:01 localhost kernel: [  201.804007]  [] ? _raw_spin_lock+0xd/0x10
Jul  7 14:50:01 localhost kernel: [  201.804007]  [] ? splat_atomic_work+0x1d9/0x340 [splat]
Jul  7 14:50:01 localhost kernel: [  201.804007]  [] ? splat_atomic_work+0x0/0x340 [splat]
Jul  7 14:50:01 localhost kernel: [  201.804007]  [] ? thread_generic_wrapper+0x5e/0x70 [spl]
Jul  7 14:50:01 localhost kernel: [  201.804007]  [] ? thread_generic_wrapper+0x0/0x70 [spl]
Jul  7 14:50:01 localhost kernel: [  201.804007]  [] ? kthread+0x74/0x80
Jul  7 14:50:01 localhost kernel: [  201.804007]  [] ? kthread+0x0/0x80
Jul  7 14:50:01 localhost kernel: [  201.804007]  [] ? kernel_thread_helper+0x6/0x10
Jul  7 14:50:01 localhost kernel: [  201.804007] Code: b8 3d 28 13 c0 e9 59 ff ff ff 90 b9 40 28 13 c0 b8 43 28 13 c0 e9 49 ff ff ff 90 90 90 90 90 90 90 90 90 55 ba 00 01 00 00 89 e5  66 0f c1 10 38 f2 74 06 f3 90 8a 10 eb f6 5d c3 8d b4 26 00 
Jul  7 14:50:01 localhost kernel: [  201.804007] EIP: [] __ticket_spin_lock+0x8/0x20 SS:ESP 0068:efd25f40
Jul  7 14:50:01 localhost kernel: [  201.804007] CR2: 0000000000000002
Jul  7 14:50:01 localhost kernel: [  201.201001] BUG: unable to handle kernel NULL pointer dereference at 00000002
Jul  7 14:50:01 localhost kernel: [  201.201001] IP: [] __ticket_spin_lock+0x8/0x20
Jul  7 14:50:01 localhost kernel: [  201.201001] *pdpt = 0000000036e1d001 *pde = 0000000000000000 
Jul  7 14:50:01 localhost kernel: [  201.201001] Oops: 0002 [#6] SMP 
Jul  7 14:50:01 localhost kernel: [  201.201001] last sysfs file: /sys/devices/pci0000:00/0000:00:1e.0/0000:05:04.0/net/eth1/brport/hold_timer
Jul  7 14:50:01 localhost kernel: [  201.807262] ---[ end trace 8f4bccb8b278b2bd ]---
Jul  7 14:50:01 localhost kernel: [  201.201001] Modules linked in: splat spl autofs4 ib_iser rdma_cm ib_cm iw_cm snd_hda_codec_analog ib_sa ib_mad ib_core ib_addr iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi bridge stp snd_hda_intel snd_hda_codec snd_hwdep snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device usbhid usblp snd fbcon tileblit font bitblit softcursor ohci1394 lp parport asus_atk0110 intel_agp agpgart soundcore vga16fb vgastate snd_page_alloc hid ieee1394 skge ahci libahci sky2 pata_jmicron
Jul  7 14:50:01 localhost kernel: [  201.201001] 
Jul  7 14:50:01 localhost kernel: [  201.201001] Pid: 24771, comm: splat_atomic_wo Tainted: G      D     2.6.35-rc3splice+ #1 P5B-Deluxe/System Product Name
Jul  7 14:50:01 localhost kernel: [  201.201001] EIP: 0060:[] EFLAGS: 00010246 CPU: 2
Jul  7 14:50:01 localhost kernel: [  201.201001] EIP is at __ticket_spin_lock+0x8/0x20
Jul  7 14:50:01 localhost kernel: [  201.201001] EAX: 00000002 EBX: 000927c0 ECX: ef90be34 EDX: 00000100
Jul  7 14:50:01 localhost kernel: [  201.201001] ESI: ef90be4c EDI: 00000003 EBP: f1615f40 ESP: f1615f40
Jul  7 14:50:01 localhost kernel: [  201.201001]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
Jul  7 14:50:01 localhost kernel: [  201.201001] Process splat_atomic_wo (pid: 24771, ti=f1614000 task=ef983f70 task.ti=f1614000)
Jul  7 14:50:01 localhost kernel: [  201.201001] Stack:
Jul  7 14:50:01 localhost kernel: [  201.201001]  f1615f48 c05c443d f1615fa4 f8758b99 f8769904 f8761bd8 00000014 f87630d7
Jul  7 14:50:01 localhost kernel: [  201.201001] <0> 00000003 009d432c 00000000 00000002 efcf4a00 ef90be40 00000000 00000000
Jul  7 14:50:01 localhost kernel: [  201.201001] <0> 009d432c 00000000 ef983f70 00000020 ef90be34 00000000 efcf4a00 f87589c0
Jul  7 14:50:01 localhost kernel: [  201.201001] Call Trace:
Jul  7 14:50:01 localhost kernel: [  201.201001]  [] ? _raw_spin_lock+0xd/0x10
Jul  7 14:50:01 localhost kernel: [  201.201001]  [] ? splat_atomic_work+0x1d9/0x340 [splat]
Jul  7 14:50:01 localhost kernel: [  201.201001]  [] ? splat_atomic_work+0x0/0x340 [splat]
Jul  7 14:50:01 localhost kernel: [  201.201001]  [] ? thread_generic_wrapper+0x5e/0x70 [spl]
Jul  7 14:50:01 localhost kernel: [  201.201001]  [] ? thread_generic_wrapper+0x0/0x70 [spl]
Jul  7 14:50:01 localhost kernel: [  201.201001]  [] ? kthread+0x74/0x80
Jul  7 14:50:01 localhost kernel: [  201.201001]  [] ? kthread+0x0/0x80
Jul  7 14:50:01 localhost kernel: [  201.201001]  [] ? kernel_thread_helper+0x6/0x10
Jul  7 14:50:01 localhost kernel: [  201.201001] Code: b8 3d 28 13 c0 e9 59 ff ff ff 90 b9 40 28 13 c0 b8 43 28 13 c0 e9 49 ff ff ff 90 90 90 90 90 90 90 90 90 55 ba 00 01 00 00 89 e5  66 0f c1 10 38 f2 74 06 f3 90 8a 10 eb f6 5d c3 8d b4 26 00 
Jul  7 14:50:01 localhost kernel: [  201.201001] EIP: [] __ticket_spin_lock+0x8/0x20 SS:ESP 0068:f1615f40
Jul  7 14:50:01 localhost kernel: [  201.201001] CR2: 0000000000000002
Jul  7 14:50:01 localhost kernel: [  201.807605] ---[ end trace 8f4bccb8b278b2be ]---
Jul  7 14:52:48 localhost kernel: [  366.650586] BUG: unable to handle kernel NULL pointer dereference at 00000002
Jul  7 14:52:48 localhost kernel: [  366.650588] IP: [] __ticket_spin_lock+0x8/0x20
Jul  7 14:52:48 localhost kernel: [  366.650594] *pdpt = 00000000008bc001 *pde = 0000000000000000 
Jul  7 14:52:48 localhost kernel: [  366.650597] Oops: 0002 [#7] SMP 
Jul  7 14:52:48 localhost kernel: [  366.650599] last sysfs file: /sys/devices/pci0000:00/0000:00:1e.0/0000:05:04.0/net/eth1/brport/hold_timer
Jul  7 14:52:48 localhost kernel: [  366.650601] Modules linked in: splat spl autofs4 ib_iser rdma_cm ib_cm iw_cm snd_hda_codec_analog ib_sa ib_mad ib_core ib_addr iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi bridge stp snd_hda_intel snd_hda_codec snd_hwdep snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device usbhid usblp snd fbcon tileblit font bitblit softcursor ohci1394 lp parport asus_atk0110 intel_agp agpgart soundcore vga16fb vgastate snd_page_alloc hid ieee1394 skge ahci libahci sky2 pata_jmicron
Jul  7 14:52:48 localhost kernel: [  366.650622] 
Jul  7 14:52:48 localhost kernel: [  366.650624] Pid: 24813, comm: splat_atomic_wo Tainted: G      D     2.6.35-rc3splice+ #1 P5B-Deluxe/System Product Name
Jul  7 14:52:48 localhost kernel: [  366.650627] EIP: 0060:[] EFLAGS: 00010246 CPU: 1
Jul  7 14:52:48 localhost kernel: [  366.650629] EIP is at __ticket_spin_lock+0x8/0x20
Jul  7 14:52:48 localhost kernel: [  366.650630] EAX: 00000002 EBX: 0007a120 ECX: f2f3de34 EDX: 00000100
Jul  7 14:52:48 localhost kernel: [  366.650632] ESI: f2f3de4c EDI: 00000004 EBP: f1061f40 ESP: f1061f40
Jul  7 14:52:48 localhost kernel: [  366.650633]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
Jul  7 14:52:48 localhost kernel: [  366.650635] Process splat_atomic_wo (pid: 24813, ti=f1060000 task=ef9832c0 task.ti=f1060000)
Jul  7 14:52:48 localhost kernel: [  366.650636] Stack:
Jul  7 14:52:48 localhost kernel: [  366.650637]  f1061f48 c05c443d f1061fa4 f8758b99 fa46c660 f8761bd8 00000014 f87630d7
Jul  7 14:52:48 localhost kernel: [  366.650640] <0> 00000004 009b8bf0 00000000 00000002 f2e5ace0 f2f3de40 00000000 00000000
Jul  7 14:52:48 localhost kernel: [  366.650643] <0> 009b8bf0 00000000 ef9832c0 00000020 f2f3de34 00000000 f2e5ace0 f87589c0
Jul  7 14:52:48 localhost kernel: [  366.650646] Call Trace:
Jul  7 14:52:48 localhost kernel: [  366.650650]  [] ? _raw_spin_lock+0xd/0x10
Jul  7 14:52:48 localhost kernel: [  366.650655]  [] ? splat_atomic_work+0x1d9/0x340 [splat]
Jul  7 14:52:48 localhost kernel: [  366.650658]  [] ? splat_atomic_work+0x0/0x340 [splat]
Jul  7 14:52:48 localhost kernel: [  366.650665]  [] ? thread_generic_wrapper+0x5e/0x70 [spl]
Jul  7 14:52:48 localhost kernel: [  366.650670]  [] ? thread_generic_wrapper+0x0/0x70 [spl]
Jul  7 14:52:48 localhost kernel: [  366.650672]  [] ? kthread+0x74/0x80
Jul  7 14:52:48 localhost kernel: [  366.650674]  [] ? kthread+0x0/0x80
Jul  7 14:52:48 localhost kernel: [  366.650677]  [] ? kernel_thread_helper+0x6/0x10
Jul  7 14:52:48 localhost kernel: [  366.650678] Code: b8 3d 28 13 c0 e9 59 ff ff ff 90 b9 40 28 13 c0 b8 43 28 13 c0 e9 49 ff ff ff 90 90 90 90 90 90 90 90 90 55 ba 00 01 00 00 89 e5  66 0f c1 10 38 f2 74 06 f3 90 8a 10 eb f6 5d c3 8d b4 26 00 
Jul  7 14:52:48 localhost kernel: [  366.650691] EIP: [] __ticket_spin_lock+0x8/0x20 SS:ESP 0068:f1061f40
Jul  7 14:52:48 localhost kernel: [  366.650694] CR2: 0000000000000002
Jul  7 14:52:48 localhost kernel: [  366.650696] ---[ end trace 8f4bccb8b278b2bf ]---
Jul  7 14:52:48 localhost kernel: [  366.654621] BUG: unable to handle kernel NULL pointer dereference at 00000002
Jul  7 14:52:48 localhost kernel: [  366.654624] IP: [] __ticket_spin_lock+0x8/0x20
Jul  7 14:52:48 localhost kernel: [  366.654632] *pdpt = 00000000008bc001 *pde = 0000000000000000 
Jul  7 14:52:48 localhost kernel: [  366.654634] Oops: 0002 [#8] SMP 
Jul  7 14:52:48 localhost kernel: [  366.654636] last sysfs file: /sys/devices/pci0000:00/0000:00:1e.0/0000:05:04.0/net/eth1/brport/hold_timer
Jul  7 14:52:48 localhost kernel: [  366.654638] Modules linked in: splat spl autofs4 ib_iser rdma_cm ib_cm iw_cm snd_hda_codec_analog ib_sa ib_mad ib_core ib_addr iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi bridge stp snd_hda_intel snd_hda_codec snd_hwdep snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device usbhid usblp snd fbcon tileblit font bitblit softcursor ohci1394 lp parport asus_atk0110 intel_agp agpgart soundcore vga16fb vgastate snd_page_alloc hid ieee1394 skge ahci libahci sky2 pata_jmicron
Jul  7 14:52:48 localhost kernel: [  366.654660] 
Jul  7 14:52:48 localhost kernel: [  366.654662] Pid: 24809, comm: splat_atomic_wo Tainted: G      D     2.6.35-rc3splice+ #1 P5B-Deluxe/System Product Name
Jul  7 14:52:48 localhost kernel: [  366.654665] EIP: 0060:[] EFLAGS: 00010246 CPU: 2
Jul  7 14:52:48 localhost kernel: [  366.654667] EIP is at __ticket_spin_lock+0x8/0x20
Jul  7 14:52:48 localhost kernel: [  366.654668] EAX: 00000002 EBX: 0007a120 ECX: f2f3de34 EDX: 00000100
Jul  7 14:52:48 localhost kernel: [  366.654670] ESI: f2f3de4c EDI: 00000000 EBP: f6dd1f40 ESP: f6dd1f40
Jul  7 14:52:48 localhost kernel: [  366.654671]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
Jul  7 14:52:48 localhost kernel: [  366.654673] Process splat_atomic_wo (pid: 24809, ti=f6dd0000 task=ef9858d0 task.ti=f6dd0000)
Jul  7 14:52:48 localhost kernel: [  366.654674] Stack:
Jul  7 14:52:48 localhost kernel: [  366.654676]  f6dd1f48 c05c443d f6dd1fa4 f8758b99 fa46c62c f8761bd8 00000014 f87630d7
Jul  7 14:52:48 localhost kernel: [  366.654678] <0> 00000000 009bc33a 00000000 00000002 f2e5a1e0 f2f3de40 00000000 00000000
Jul  7 14:52:48 localhost kernel: [  366.654681] <0> 009bc33a 00000000 ef9858d0 00000020 f2f3de34 00000000 f2e5a1e0 f87589c0
Jul  7 14:52:48 localhost kernel: [  366.654684] Call Trace:
Jul  7 14:52:48 localhost kernel: [  366.654689]  [] ? _raw_spin_lock+0xd/0x10
Jul  7 14:52:48 localhost kernel: [  366.654694]  [] ? splat_atomic_work+0x1d9/0x340 [splat]
Jul  7 14:52:48 localhost kernel: [  366.654698]  [] ? splat_atomic_work+0x0/0x340 [splat]
Jul  7 14:52:48 localhost kernel: [  366.654706]  [] ? thread_generic_wrapper+0x5e/0x70 [spl]
Jul  7 14:52:48 localhost kernel: [  366.654711]  [] ? thread_generic_wrapper+0x0/0x70 [spl]
Jul  7 14:52:48 localhost kernel: [  366.654714]  [] ? kthread+0x74/0x80
Jul  7 14:52:48 localhost kernel: [  366.654716]  [] ? kthread+0x0/0x80
Jul  7 14:52:48 localhost kernel: [  366.654719]  [] ? kernel_thread_helper+0x6/0x10
Jul  7 14:52:48 localhost kernel: [  366.654720] Code: b8 3d 28 13 c0 e9 59 ff ff ff 90 b9 40 28 13 c0 b8 43 28 13 c0 e9 49 ff ff ff 90 90 90 90 90 90 90 90 90 55 ba 00 01 00 00 89 e5  66 0f c1 10 38 f2 74 06 f3 90 8a 10 eb f6 5d c3 8d b4 26 00 
Jul  7 14:52:48 localhost kernel: [  366.654734] EIP: [] __ticket_spin_lock+0x8/0x20 SS:ESP 0068:f6dd1f40
Jul  7 14:52:48 localhost kernel: [  366.654737] CR2: 0000000000000002
Jul  7 14:52:48 localhost kernel: [  366.654739] ---[ end trace 8f4bccb8b278b2c0 ]---
Jul  7 14:52:48 localhost kernel: [  366.658846] BUG: unable to handle kernel NULL pointer dereference at 00000002
Jul  7 14:52:48 localhost kernel: [  366.658848] IP: [] __ticket_spin_lock+0x8/0x20
Jul  7 14:52:48 localhost kernel: [  366.658852] *pdpt = 0000000036e79001 *pde = 0000000000000000 
Jul  7 14:52:48 localhost kernel: [  366.658854] Oops: 0002 [#9] SMP 
Jul  7 14:52:48 localhost kernel: [  366.658855] last sysfs file: /sys/devices/pci0000:00/0000:00:1e.0/0000:05:04.0/net/eth1/brport/hold_timer
Jul  7 14:52:48 localhost kernel: [  366.658857] Modules linked in: splat spl autofs4 ib_iser rdma_cm ib_cm iw_cm snd_hda_codec_analog ib_sa ib_mad ib_core ib_addr iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi bridge stp snd_hda_intel snd_hda_codec snd_hwdep snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device usbhid usblp snd fbcon tileblit font bitblit softcursor ohci1394 lp parport asus_atk0110 intel_agp agpgart soundcore vga16fb vgastate snd_page_alloc hid ieee1394 skge ahci libahci sky2 pata_jmicron
Jul  7 14:52:48 localhost kernel: [  366.658875] 
Jul  7 14:52:48 localhost kernel: [  366.658877] Pid: 24810, comm: splat_atomic_wo Tainted: G      D     2.6.35-rc3splice+ #1 P5B-Deluxe/System Product Name
Jul  7 14:52:48 localhost kernel: [  366.658880] EIP: 0060:[] EFLAGS: 00010246 CPU: 3
Jul  7 14:52:48 localhost kernel: [  366.658881] EIP is at __ticket_spin_lock+0x8/0x20
Jul  7 14:52:48 localhost kernel: [  366.658883] EAX: 00000002 EBX: 00061a80 ECX: f2f3de34 EDX: 00000100
Jul  7 14:52:48 localhost kernel: [  366.658885] ESI: f2f3de4c EDI: 00000001 EBP: f0bf7f40 ESP: f0bf7f40
Jul  7 14:52:48 localhost kernel: [  366.658886]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
Jul  7 14:52:48 localhost kernel: [  366.658888] Process splat_atomic_wo (pid: 24810, ti=f0bf6000 task=ef981960 task.ti=f0bf6000)
Jul  7 14:52:48 localhost kernel: [  366.658889] Stack:
Jul  7 14:52:48 localhost kernel: [  366.658890]  f0bf7f48 c05c443d f0bf7fa4 f8758b99 fa46c5f8 f8761bd8 00000014 f87630d7
Jul  7 14:52:48 localhost kernel: [  366.658893] <0> 00000001 009aea7f 00000000 00000002 f2e5a320 f2f3de40 00000000 00000000
Jul  7 14:52:48 localhost kernel: [  366.658896] <0> 009aea7f 00000000 ef981960 00000020 f2f3de34 00000000 f2e5a320 f87589c0
Jul  7 14:52:48 localhost kernel: [  366.658899] Call Trace:
Jul  7 14:52:48 localhost kernel: [  366.658901]  [] ? _raw_spin_lock+0xd/0x10
Jul  7 14:52:48 localhost kernel: [  366.658905]  [] ? splat_atomic_work+0x1d9/0x340 [splat]
Jul  7 14:52:48 localhost kernel: [  366.658909]  [] ? splat_atomic_work+0x0/0x340 [splat]
Jul  7 14:52:48 localhost kernel: [  366.658914]  [] ? thread_generic_wrapper+0x5e/0x70 [spl]
Jul  7 14:52:48 localhost kernel: [  366.658919]  [] ? thread_generic_wrapper+0x0/0x70 [spl]
Jul  7 14:52:48 localhost kernel: [  366.658921]  [] ? kthread+0x74/0x80
Jul  7 14:52:48 localhost kernel: [  366.658923]  [] ? kthread+0x0/0x80
Jul  7 14:52:48 localhost kernel: [  366.658925]  [] ? kernel_thread_helper+0x6/0x10
Jul  7 14:52:48 localhost kernel: [  366.658926] Code: b8 3d 28 13 c0 e9 59 ff ff ff 90 b9 40 28 13 c0 b8 43 28 13 c0 e9 49 ff ff ff 90 90 90 90 90 90 90 90 90 55 ba 00 01 00 00 89 e5  66 0f c1 10 38 f2 74 06 f3 90 8a 10 eb f6 5d c3 8d b4 26 00 
Jul  7 14:52:48 localhost kernel: [  366.658940] EIP: [] __ticket_spin_lock+0x8/0x20 SS:ESP 0068:f0bf7f40
Jul  7 14:52:48 localhost kernel: [  366.658942] CR2: 0000000000000002
Jul  7 14:52:48 localhost kernel: [  366.658944] ---[ end trace 8f4bccb8b278b2c1 ]---
Jul  7 14:52:48 localhost kernel: [  366.676978] BUG: unable to handle kernel NULL pointer dereference at 00000002
Jul  7 14:52:48 localhost kernel: [  366.676980] IP: [] __ticket_spin_lock+0x8/0x20
Jul  7 14:52:48 localhost kernel: [  366.676982] *pdpt = 00000000008bc001 *pde = 0000000000000000 
Jul  7 14:52:48 localhost kernel: [  366.676985] Oops: 0002 [#10] SMP 
Jul  7 14:52:48 localhost kernel: [  366.676986] last sysfs file: /sys/devices/pci0000:00/0000:00:1e.0/0000:05:04.0/net/eth1/brport/hold_timer
Jul  7 14:52:48 localhost kernel: [  366.676987] Modules linked in: splat spl autofs4 ib_iser rdma_cm ib_cm iw_cm snd_hda_codec_analog ib_sa ib_mad ib_core ib_addr iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi bridge stp snd_hda_intel snd_hda_codec snd_hwdep snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device usbhid usblp snd fbcon tileblit font bitblit softcursor ohci1394 lp parport asus_atk0110 intel_agp agpgart soundcore vga16fb vgastate snd_page_alloc hid ieee1394 skge ahci libahci sky2 pata_jmicron
Jul  7 14:52:48 localhost kernel: [  366.677000] 
Jul  7 14:52:48 localhost kernel: [  366.677000] Pid: 24811, comm: splat_atomic_wo Tainted: G      D     2.6.35-rc3splice+ #1 P5B-Deluxe/System Product Name
Jul  7 14:52:48 localhost kernel: [  366.677000] EIP: 0060:[] EFLAGS: 00010246 CPU: 2
Jul  7 14:52:48 localhost kernel: [  366.677000] EIP is at __ticket_spin_lock+0x8/0x20
Jul  7 14:52:48 localhost kernel: [  366.677000] EAX: 00000002 EBX: 00061a80 ECX: f2f3de34 EDX: 00000100
Jul  7 14:52:48 localhost kernel: [  366.677000] ESI: f2f3de4c EDI: 00000002 EBP: f2de9f40 ESP: f2de9f40
Jul  7 14:52:48 localhost kernel: [  366.677000]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
Jul  7 14:52:48 localhost kernel: [  366.677000] Process splat_atomic_wo (pid: 24811, ti=f2de8000 task=ef980000 task.ti=f2de8000)
Jul  7 14:52:48 localhost kernel: [  366.677000] Stack:
Jul  7 14:52:48 localhost kernel: [  366.677000]  f2de9f48 c05c443d f2de9fa4 f8758b99 fa46c694 f8761bd8 00000014 f87630d7
Jul  7 14:52:48 localhost kernel: [  366.677000] <0> 00000002 009b702f 00000000 00000002 f2e5a8a0 f2f3de40 00000000 00000000
Jul  7 14:52:48 localhost kernel: [  366.677000] <0> 009b702f 00000000 ef980000 00000020 f2f3de34 00000000 f2e5a8a0 f87589c0
Jul  7 14:52:48 localhost kernel: [  366.677000] Call Trace:
Jul  7 14:52:48 localhost kernel: [  366.677000]  [] ? _raw_spin_lock+0xd/0x10
Jul  7 14:52:48 localhost kernel: [  366.677000]  [] ? splat_atomic_work+0x1d9/0x340 [splat]
Jul  7 14:52:48 localhost kernel: [  366.677000]  [] ? splat_atomic_work+0x0/0x340 [splat]
Jul  7 14:52:48 localhost kernel: [  366.677000]  [] ? thread_generic_wrapper+0x5e/0x70 [spl]
Jul  7 14:52:48 localhost kernel: [  366.677000]  [] ? thread_generic_wrapper+0x0/0x70 [spl]
Jul  7 14:52:48 localhost kernel: [  366.677000]  [] ? kthread+0x74/0x80
Jul  7 14:52:48 localhost kernel: [  366.677000]  [] ? kthread+0x0/0x80
Jul  7 14:52:48 localhost kernel: [  366.677000]  [] ? kernel_thread_helper+0x6/0x10
Jul  7 14:52:48 localhost kernel: [  366.677000] Code: b8 3d 28 13 c0 e9 59 ff ff ff 90 b9 40 28 13 c0 b8 43 28 13 c0 e9 49 ff ff ff 90 90 90 90 90 90 90 90 90 55 ba 00 01 00 00 89 e5  66 0f c1 10 38 f2 74 06 f3 90 8a 10 eb f6 5d c3 8d b4 26 00 
Jul  7 14:52:48 localhost kernel: [  366.677000] EIP: [] __ticket_spin_lock+0x8/0x20 SS:ESP 0068:f2de9f40
Jul  7 14:52:48 localhost kernel: [  366.677000] CR2: 0000000000000002
Jul  7 14:52:48 localhost kernel: [  366.677078] ---[ end trace 8f4bccb8b278b2c2 ]---
Jul  7 14:52:48 localhost kernel: [  366.681427] BUG: unable to handle kernel NULL pointer dereference at 00000002
Jul  7 14:52:48 localhost kernel: [  366.681429] IP: [] __ticket_spin_lock+0x8/0x20
Jul  7 14:52:48 localhost kernel: [  366.681432] *pdpt = 00000000008bc001 *pde = 0000000000000000 
Jul  7 14:52:48 localhost kernel: [  366.681434] Oops: 0002 [#11] SMP 
Jul  7 14:52:48 localhost kernel: [  366.681435] last sysfs file: /sys/devices/pci0000:00/0000:00:1e.0/0000:05:04.0/net/eth1/brport/hold_timer
Jul  7 14:52:48 localhost kernel: [  366.681437] Modules linked in: splat spl autofs4 ib_iser rdma_cm ib_cm iw_cm snd_hda_codec_analog ib_sa ib_mad ib_core ib_addr iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi bridge stp snd_hda_intel snd_hda_codec snd_hwdep snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device usbhid usblp snd fbcon tileblit font bitblit softcursor ohci1394 lp parport asus_atk0110 intel_agp agpgart soundcore vga16fb vgastate snd_page_alloc hid ieee1394 skge ahci libahci sky2 pata_jmicron
Jul  7 14:52:48 localhost kernel: [  366.681455] 
Jul  7 14:52:48 localhost kernel: [  366.681457] Pid: 24812, comm: splat_atomic_wo Tainted: G      D     2.6.35-rc3splice+ #1 P5B-Deluxe/System Product Name
Jul  7 14:52:48 localhost kernel: [  366.681459] EIP: 0060:[] EFLAGS: 00010246 CPU: 1
Jul  7 14:52:48 localhost kernel: [  366.681461] EIP is at __ticket_spin_lock+0x8/0x20
Jul  7 14:52:48 localhost kernel: [  366.681462] EAX: 00000002 EBX: 0007a120 ECX: f2f3de34 EDX: 00000100
Jul  7 14:52:48 localhost kernel: [  366.681464] ESI: f2f3de4c EDI: 00000003 EBP: efcd3f40 ESP: efcd3f40
Jul  7 14:52:48 localhost kernel: [  366.681466]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
Jul  7 14:52:48 localhost kernel: [  366.681467] Process splat_atomic_wo (pid: 24812, ti=efcd2000 task=ef984c20 task.ti=efcd2000)
Jul  7 14:52:48 localhost kernel: [  366.681468] Stack:
Jul  7 14:52:48 localhost kernel: [  366.681469]  efcd3f48 c05c443d efcd3fa4 f8758b99 fa46c6c8 f8761bd8 00000014 f87630d7
Jul  7 14:52:48 localhost kernel: [  366.681472] <0> 00000003 009af5c9 00000000 00000002 f2e5aa40 f2f3de40 00000000 00000000
Jul  7 14:52:48 localhost kernel: [  366.681475] <0> 009af5c9 00000000 ef984c20 00000020 f2f3de34 00000000 f2e5aa40 f87589c0
Jul  7 14:52:48 localhost kernel: [  366.681478] Call Trace:
Jul  7 14:52:48 localhost kernel: [  366.681480]  [] ? _raw_spin_lock+0xd/0x10
Jul  7 14:52:48 localhost kernel: [  366.681484]  [] ? splat_atomic_work+0x1d9/0x340 [splat]
Jul  7 14:52:48 localhost kernel: [  366.681487]  [] ? splat_atomic_work+0x0/0x340 [splat]
Jul  7 14:52:48 localhost kernel: [  366.681492]  [] ? thread_generic_wrapper+0x5e/0x70 [spl]
Jul  7 14:52:48 localhost kernel: [  366.681497]  [] ? thread_generic_wrapper+0x0/0x70 [spl]
Jul  7 14:52:48 localhost kernel: [  366.681499]  [] ? kthread+0x74/0x80
Jul  7 14:52:48 localhost kernel: [  366.681501]  [] ? kthread+0x0/0x80
Jul  7 14:52:48 localhost kernel: [  366.681503]  [] ? kernel_thread_helper+0x6/0x10
Jul  7 14:52:48 localhost kernel: [  366.681504] Code: b8 3d 28 13 c0 e9 59 ff ff ff 90 b9 40 28 13 c0 b8 43 28 13 c0 e9 49 ff ff ff 90 90 90 90 90 90 90 90 90 55 ba 00 01 00 00 89 e5  66 0f c1 10 38 f2 74 06 f3 90 8a 10 eb f6 5d c3 8d b4 26 00 
Jul  7 14:52:48 localhost kernel: [  366.681517] EIP: [] __ticket_spin_lock+0x8/0x20 SS:ESP 0068:efcd3f40
Jul  7 14:52:48 localhost kernel: [  366.681520] CR2: 0000000000000002
Jul  7 14:52:48 localhost kernel: [  366.681522] ---[ end trace 8f4bccb8b278b2c3 ]---
Jul  7 14:52:48 localhost kernel: [  366.681636] BUG: unable to handle kernel NULL pointer dereference at 00000002
Jul  7 14:52:48 localhost kernel: [  366.681639] IP: [] __ticket_spin_lock+0x8/0x20
Jul  7 14:52:48 localhost kernel: [  366.681642] *pdpt = 000000003698e001 *pde = 0000000000000000 
Jul  7 14:52:48 localhost kernel: [  366.681644] Oops: 0002 [#12] SMP 
Jul  7 14:52:48 localhost kernel: [  366.681645] last sysfs file: /sys/devices/pci0000:00/0000:00:1e.0/0000:05:04.0/net/eth1/brport/hold_timer
Jul  7 14:52:48 localhost kernel: [  366.681647] Modules linked in: splat spl autofs4 ib_iser rdma_cm ib_cm iw_cm snd_hda_codec_analog ib_sa ib_mad ib_core ib_addr iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi bridge stp snd_hda_intel snd_hda_codec snd_hwdep snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device usbhid usblp snd fbcon tileblit font bitblit softcursor ohci1394 lp parport asus_atk0110 intel_agp agpgart soundcore vga16fb vgastate snd_page_alloc hid ieee1394 skge ahci libahci sky2 pata_jmicron
Jul  7 14:52:48 localhost kernel: [  366.681666] 
Jul  7 14:52:48 localhost kernel: [  366.681668] Pid: 24814, comm: splat_atomic_wo Tainted: G      D     2.6.35-rc3splice+ #1 P5B-Deluxe/System Product Name
Jul  7 14:52:48 localhost kernel: [  366.681670] EIP: 0060:[] EFLAGS: 00010246 CPU: 0
Jul  7 14:52:48 localhost kernel: [  366.681672] EIP is at __ticket_spin_lock+0x8/0x20
Jul  7 14:52:48 localhost kernel: [  366.681674] EAX: 00000002 EBX: 0007a120 ECX: f2f3de34 EDX: 00000100
Jul  7 14:52:48 localhost kernel: [  366.681675] ESI: f2f3de4c EDI: 00000005 EBP: f0d1ff40 ESP: f0d1ff40
Jul  7 14:52:48 localhost kernel: [  366.681677]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
Jul  7 14:52:48 localhost kernel: [  366.681679] Process splat_atomic_wo (pid: 24814, ti=f0d1e000 task=ef982610 task.ti=f0d1e000)
Jul  7 14:52:48 localhost kernel: [  366.681680] Stack:
Jul  7 14:52:48 localhost kernel: [  366.681681]  f0d1ff48 c05c443d f0d1ffa4 f8758b99 fa46c6fc f8761bd8 00000014 f87630d7
Jul  7 14:52:48 localhost kernel: [  366.681684] <0> 00000005 009aab99 00000000 00000002 f2e5a380 f2f3de40 00000000 00000000
Jul  7 14:52:48 localhost kernel: [  366.681686] <0> 009aab99 00000000 ef982610 00000020 f2f3de34 00000000 f2e5a380 f87589c0
Jul  7 14:52:48 localhost kernel: [  366.681689] Call Trace:
Jul  7 14:52:48 localhost kernel: [  366.681692]  [] ? _raw_spin_lock+0xd/0x10
Jul  7 14:52:48 localhost kernel: [  366.681695]  [] ? splat_atomic_work+0x1d9/0x340 [splat]
Jul  7 14:52:48 localhost kernel: [  366.681699]  [] ? splat_atomic_work+0x0/0x340 [splat]
Jul  7 14:52:48 localhost kernel: [  366.681704]  [] ? thread_generic_wrapper+0x5e/0x70 [spl]
Jul  7 14:52:48 localhost kernel: [  366.681709]  [] ? thread_generic_wrapper+0x0/0x70 [spl]
Jul  7 14:52:48 localhost kernel: [  366.681711]  [] ? kthread+0x74/0x80
Jul  7 14:52:48 localhost kernel: [  366.681713]  [] ? kthread+0x0/0x80
Jul  7 14:52:48 localhost kernel: [  366.681715]  [] ? kernel_thread_helper+0x6/0x10
Jul  7 14:52:48 localhost kernel: [  366.681716] Code: b8 3d 28 13 c0 e9 59 ff ff ff 90 b9 40 28 13 c0 b8 43 28 13 c0 e9 49 ff ff ff 90 90 90 90 90 90 90 90 90 55 ba 00 01 00 00 89 e5  66 0f c1 10 38 f2 74 06 f3 90 8a 10 eb f6 5d c3 8d b4 26 00 
Jul  7 14:52:48 localhost kernel: [  366.681730] EIP: [] __ticket_spin_lock+0x8/0x20 SS:ESP 0068:f0d1ff40
Jul  7 14:52:48 localhost kernel: [  366.681733] CR2: 0000000000000002
Jul  7 14:52:48 localhost kernel: [  366.681734] ---[ end trace 8f4bccb8b278b2c4 ]---
Jul  7 14:53:20 localhost kernel: [  400.846134] SPLAT: Unloaded Solaris Porting LAyer Tests v0.5.0

Add CONFIG_KALLSYMS_ALL check

xbmc@xbmc:~/spl-0.4.9$ uname -a
Linux xbmc 2.6.32-22-generic #33-Ubuntu SMP Wed Apr 28 13:28:05 UTC 2010 x86_64 GNU/Linux

Steps:

  1. ./configure --with-linux=/usr/src/linux-headers-2.6.32-22-generic/
  2. make
  3. sudo make install
  4. sudo modprobe splat
    FATAL: Could not load /lib/modules/2.6.32-22-generic/modules.dep: No such file or directory
  5. sudo depmod -a
  6. sudo modprobe splat
    FATAL: Error inserting splat (/lib/modules/2.6.32-22-generic/addon/spl/splat/splat.ko): Cannot assign requested address
  7. tail /var/log/messages
    Jun 1 00:09:51 xbmc kernel: [ 5482.698506] SPL: Failed user helper '/bin/sh -c awk '{ if ( $3 == "kallsyms_lookup_name") { print $1 } }' /proc/kallsyms >/proc/sys/kernel/spl/kallsyms_lookup_name', rc = 512
    Jun 1 00:09:51 xbmc kernel: [ 5482.698537] SPL: Failed to Load Solaris Porting Layer v0.4.9, rc = -99

The test ubuntu is 64 bit 10.04 minimal cd install + updates + build-essential + psmisc + linux-headers-uname -r

Regards,
jb

Alien creates wrong version debs

Currently a 'make deb' creates packages with the version '0.6.0-1'. Which is the same as I had previously :).

Alien needs the option '--keep-version' to create the correct '0.6.0-rc5'...

kmem:vmem_alloc Fail Cannot allocate memory on i386 Linux lucid 2.6.32-23-generic-pae

spl version

sehe@lucid:~/custom/spl/cmd$ git log -1 --oneline; git describe --dirty
8f813bb Proposed fix for oops on SIGINT in splat atomic:64-bit test.
spl-0.4.9-36-g8f813bb

Stock pae kernel, 8GB RAM, free:

sehe@lucid:/tmp$ uname -a
Linux lucid 2.6.32-23-generic-pae #37-Ubuntu SMP Fri Jun 11 09:26:55 UTC 2010 i686 GNU/Linux

sehe@lucid:/tmp$ free
             total       used       free     shared    buffers     cached
Mem:       8259012    6590280    1668732          0     153280    5351084
-/+ buffers/cache:    1085916    7173096
Swap:            0          0          0

Note that execution is aborted, regardless of whether the -x flag is given. This indicates an unhandled error condition to me?

Here is output of a gruesome oneliner:

for a in $(sudo ./splat -l | grep '\-\-\-' | cut -f2 -d' ' | grep -v Available); do sudo splat -c -t $a:all -v; done |& tee splat.log 

Output

SPL v0.5.0
------------------------------ Running SPLAT Tests ------------------------------
                kmem:kmem_alloc           Pass  

          kmem_alloc: 4096 byte allocations, 10/10 successful
          kmem_alloc: 8192 byte allocations, 10/10 successful
          kmem_alloc: 16384 byte allocations, 10/10 successful
          kmem_alloc: 32768 byte allocations, 10/10 successful
          kmem_alloc: 65536 byte allocations, 10/10 successful
          kmem_alloc: 131072 byte allocations, 10/10 successful

                kmem:kmem_zalloc          Pass  

         kmem_zalloc: 4096 byte allocations, 10/10 successful
         kmem_zalloc: 8192 byte allocations, 10/10 successful
         kmem_zalloc: 16384 byte allocations, 10/10 successful
         kmem_zalloc: 32768 byte allocations, 10/10 successful
         kmem_zalloc: 65536 byte allocations, 10/10 successful
         kmem_zalloc: 131072 byte allocations, 10/10 successful

                kmem:vmem_alloc           Fail  Cannot allocate memory

          vmem_alloc: 4096 byte allocations, 10/10 successful
          vmem_alloc: 8192 byte allocations, 10/10 successful
          vmem_alloc: 16384 byte allocations, 10/10 successful
          vmem_alloc: 32768 byte allocations, 10/10 successful
          vmem_alloc: 65536 byte allocations, 10/10 successful
          vmem_alloc: 131072 byte allocations, 0/10 successful

                kmem:vmem_zalloc          SPL v0.5.0
------------------------------ Running SPLAT Tests ------------------------------
               taskq:single               Pass  

              single: Taskq 'single' creating
              single: Taskq 'single' function 'splat_taskq_test13_func' dispatching
              single: Taskq 'single' waiting
              single: Taskq 'single' function 'splat_taskq_test13_func' setting flag
              single: Taskq 'single' destroying

               taskq:multiple             Pass  

            multiple: Taskq 'multiple/0' creating
            multiple: Taskq 'multiple/0' function 'splat_taskq_test2_func1' dispatching
            multiple: Taskq 'multiple/0' function 'splat_taskq_test2_func2' dispatching
            multiple: Taskq 'multiple/1' creating
            multiple: Taskq 'multiple/0' function 'splat_taskq_test2_func1' flag = 0 = 0 * 2
            multiple: Taskq 'multiple/0' function 'splat_taskq_test2_func2' flag = 1 = 0 + 1
            multiple: Taskq 'multiple/1' function 'splat_taskq_test2_func1' dispatching
            multiple: Taskq 'multiple/1' function 'splat_taskq_test2_func2' dispatching
            multiple: Taskq 'multiple/2' creating
            multiple: Taskq 'multiple/1' function 'splat_taskq_test2_func1' flag = 2 = 1 * 2
            multiple: Taskq 'multiple/1' function 'splat_taskq_test2_func2' flag = 3 = 2 + 1
            multiple: Taskq 'multiple/2' function 'splat_taskq_test2_func1' dispatching
            multiple: Taskq 'multiple/2' function 'splat_taskq_test2_func2' dispatching
            multiple: Taskq 'multiple/3' creating
            multiple: Taskq 'multiple/2' function 'splat_taskq_test2_func1' flag = 4 = 2 * 2
            multiple: Taskq 'multiple/2' function 'splat_taskq_test2_func2' flag = 5 = 4 + 1
            multiple: Taskq 'multiple/3' function 'splat_taskq_test2_func1' dispatching
            multiple: Taskq 'multiple/3' function 'splat_taskq_test2_func2' dispatching
            multiple: Taskq 'multiple/4' creating
            multiple: Taskq 'multiple/3' function 'splat_taskq_test2_func1' flag = 6 = 3 * 2
            multiple: Taskq 'multiple/3' function 'splat_taskq_test2_func2' flag = 7 = 6 + 1
            multiple: Taskq 'multiple/4' function 'splat_taskq_test2_func1' dispatching
            multiple: Taskq 'multiple/4' function 'splat_taskq_test2_func2' dispatching
            multiple: Taskq 'multiple/5' creating
            multiple: Taskq 'multiple/4' function 'splat_taskq_test2_func1' flag = 8 = 4 * 2
            multiple: Taskq 'multiple/4' function 'splat_taskq_test2_func2' flag = 9 = 8 + 1
            multiple: Taskq 'multiple/5' function 'splat_taskq_test2_func1' dispatching
            multiple: Taskq 'multiple/5' function 'splat_taskq_test2_func2' dispatching
            multiple: Taskq 'multiple/6' creating
            multiple: Taskq 'multiple/5' function 'splat_taskq_test2_func1' flag = 10 = 5 * 2
            multiple: Taskq 'multiple/5' function 'splat_taskq_test2_func2' flag = 11 = 10 + 1
            multiple: Taskq 'multiple/6' function 'splat_taskq_test2_func1' dispatching
            multiple: Taskq 'multiple/6' function 'splat_taskq_test2_func2' dispatching
            multiple: Taskq 'multiple/7' creating
            multiple: Taskq 'multiple/6' function 'splat_taskq_test2_func1' flag = 12 = 6 * 2
            multiple: Taskq 'multiple/6' function 'splat_taskq_test2_func2' flag = 13 = 12 + 1
            multiple: Taskq 'multiple/7' function 'splat_taskq_test2_func1' dispatching
            multiple: Taskq 'multiple/7' function 'splat_taskq_test2_func2' dispatching
            multiple: Taskq 'multiple/0' waiting
            multiple: Taskq 'multiple/7' function 'splat_taskq_test2_func1' flag = 14 = 7 * 2
            multiple: Taskq 'multiple/0; destroying
            multiple: Taskq 'multiple/7' function 'splat_taskq_test2_func2' flag = 15 = 14 + 1
            multiple: Taskq 'multiple/0' processed tasks in the correct order; 1 == 1
            multiple: Taskq 'multiple/1' waiting
            multiple: Taskq 'multiple/1; destroying
            multiple: Taskq 'multiple/1' processed tasks in the correct order; 3 == 3
            multiple: Taskq 'multiple/2' waiting
            multiple: Taskq 'multiple/2; destroying
            multiple: Taskq 'multiple/2' processed tasks in the correct order; 5 == 5
            multiple: Taskq 'multiple/3' waiting
            multiple: Taskq 'multiple/3; destroying
            multiple: Taskq 'multiple/3' processed tasks in the correct order; 7 == 7
            multiple: Taskq 'multiple/4' waiting
            multiple: Taskq 'multiple/4; destroying
            multiple: Taskq 'multiple/4' processed tasks in the correct order; 9 == 9
            multiple: Taskq 'multiple/5' waiting
            multiple: Taskq 'multiple/5; destroying
            multiple: Taskq 'multiple/5' processed tasks in the correct order; 11 == 11
            multiple: Taskq 'multiple/6' waiting
            multiple: Taskq 'multiple/6; destroying
            multiple: Taskq 'multiple/6' processed tasks in the correct order; 13 == 13
            multiple: Taskq 'multiple/7' waiting
            multiple: Taskq 'multiple/7; destroying
            multiple: Taskq 'multiple/7' processed tasks in the correct order; 15 == 15

               taskq:system               Pass  

              system: Taskq 'system' function 'splat_taskq_test13_func' dispatching
              system: Taskq 'system' waiting
              single: Taskq 'system' function 'splat_taskq_test13_func' setting flag

               taskq:wait                 Pass  

                wait: Taskq 'wait' creating
                wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 1 times
                wait: Taskq 'wait' waiting for 1 dispatches
                wait: Taskq 'wait' 1/1 dispatches finished
                wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 2 times
                wait: Taskq 'wait' waiting for 2 dispatches
                wait: Taskq 'wait' 2/2 dispatches finished
                wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 4 times
                wait: Taskq 'wait' waiting for 4 dispatches
                wait: Taskq 'wait' 4/4 dispatches finished
                wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 8 times
                wait: Taskq 'wait' waiting for 8 dispatches
                wait: Taskq 'wait' 8/8 dispatches finished
                wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 16 times
                wait: Taskq 'wait' waiting for 16 dispatches
                wait: Taskq 'wait' 16/16 dispatches finished
                wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 32 times
                wait: Taskq 'wait' waiting for 32 dispatches
                wait: Taskq 'wait' 32/32 dispatches finished
                wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 64 times
                wait: Taskq 'wait' waiting for 64 dispatches
                wait: Taskq 'wait' 64/64 dispatches finished
                wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 128 times
                wait: Taskq 'wait' waiting for 128 dispatches
                wait: Taskq 'wait' 128/128 dispatches finished
                wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 256 times
                wait: Taskq 'wait' waiting for 256 dispatches
                wait: Taskq 'wait' 256/256 dispatches finished
                wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 512 times
                wait: Taskq 'wait' waiting for 512 dispatches
                wait: Taskq 'wait' 512/512 dispatches finished
                wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 1024 times
                wait: Taskq 'wait' waiting for 1024 dispatches
                wait: Taskq 'wait' 1024/1024 dispatches finished
                wait: Taskq 'wait' destroying

               taskq:order                Pass  

               order: Taskq 'order' creating
               order: Taskq 'order' waiting for taskqid 3 completion
               order: Taskqid 1 complete for taskq 'order'
               order: Taskqid 2 complete for taskq 'order'
               order: Taskqid 4 complete for taskq 'order'
               order: Taskqid 5 complete for taskq 'order'
               order: Taskqid 3 complete for taskq 'order'
               order: Taskq 'order' validated correct completion order
               order: Taskq 'order' waiting for taskqid 8 completion
               order: Taskqid 8 complete for taskq 'order'
               order: Taskqid 6 complete for taskq 'order'
               order: Taskqid 7 complete for taskq 'order'
               order: Taskq 'order' validated correct completion order
               order: Taskq 'order' destroying

               taskq:front                Pass  

               front: Taskq 'front' creating
               front: Taskq 'front' waiting for taskqid 8 completion
               front: Taskqid 1 complete for taskq 'front'
               front: Taskqid 2 complete for taskq 'front'
               front: Taskqid 3 complete for taskq 'front'
               front: Taskqid 6 complete for taskq 'front'
               front: Taskqid 7 complete for taskq 'front'
               front: Taskqid 8 complete for taskq 'front'
               front: Taskqid 4 complete for taskq 'front'
               front: Taskqid 5 complete for taskq 'front'
               front: Taskq 'front' validated correct completion order
               front: Taskq 'front' destroying

SPL v0.5.0
------------------------------ Running SPLAT Tests ------------------------------
                krng:freq                 Pass  

Test 1 Number of ones: 524196
Test 1 Difference from expected: 92 Allowed: 2097

SPL v0.5.0
------------------------------ Running SPLAT Tests ------------------------------
               mutex:tryenter             Pass  

            tryenter: mutex_trylock() correctly failed when the mutex was held
            tryenter: mutex_trylock() correctly succeeded when the mutex was not held

               mutex:race                 Pass  

                race: 4 racing threads correctly entered/exited the mutex 128 times

               mutex:owned                Pass  

               owned: Correct mutex_owned() behavior

               mutex:owner                Pass  

               owned: Correct mutex_owner() behavior

SPL v0.5.0
------------------------------ Running SPLAT Tests ------------------------------
             condvar:signal1              Pass  

             signal1: condvar_test0 thread sleeping with 0 waiters
             signal1: condvar_test1 thread sleeping with 1 waiters
             signal1: condvar_test2 thread sleeping with 2 waiters
             signal1: condvar_test3 thread sleeping with 3 waiters
             signal1: condvar_test4 thread sleeping with 4 waiters
             signal1: condvar_test5 thread sleeping with 5 waiters
             signal1: condvar_test6 thread sleeping with 6 waiters
             signal1: condvar_test7 thread sleeping with 7 waiters
             signal1: condvar_test0 thread woken 7 waiters remain
             signal1: condvar_test1 thread woken 6 waiters remain
             signal1: condvar_test2 thread woken 5 waiters remain
             signal1: condvar_test3 thread woken 4 waiters remain
             signal1: condvar_test4 thread woken 3 waiters remain
             signal1: condvar_test5 thread woken 2 waiters remain
             signal1: condvar_test6 thread woken 1 waiters remain
             signal1: condvar_test7 thread woken 0 waiters remain
             signal1: Correctly woke 8 sleeping threads 1 at a time

             condvar:broadcast1           Pass  

          broadcast1: condvar_test0 thread sleeping with 0 waiters
          broadcast1: condvar_test1 thread sleeping with 1 waiters
          broadcast1: condvar_test2 thread sleeping with 2 waiters
          broadcast1: condvar_test3 thread sleeping with 3 waiters
          broadcast1: condvar_test4 thread sleeping with 4 waiters
          broadcast1: condvar_test5 thread sleeping with 5 waiters
          broadcast1: condvar_test6 thread sleeping with 6 waiters
          broadcast1: condvar_test7 thread sleeping with 7 waiters
          broadcast1: condvar_test0 thread woken 7 waiters remain
          broadcast1: condvar_test1 thread woken 6 waiters remain
          broadcast1: condvar_test4 thread woken 5 waiters remain
          broadcast1: condvar_test3 thread woken 4 waiters remain
          broadcast1: condvar_test2 thread woken 3 waiters remain
          broadcast1: condvar_test6 thread woken 2 waiters remain
          broadcast1: condvar_test7 thread woken 1 waiters remain
          broadcast1: condvar_test5 thread woken 0 waiters remain
          broadcast1: Correctly woke all 8 sleeping threads at once

             condvar:signal2              Pass  

             signal2: condvar_test0 thread sleeping with 0 waiters
             signal2: condvar_test1 thread sleeping with 1 waiters
             signal2: condvar_test2 thread sleeping with 2 waiters
             signal2: condvar_test3 thread sleeping with 3 waiters
             signal2: condvar_test4 thread sleeping with 4 waiters
             signal2: condvar_test5 thread sleeping with 5 waiters
             signal2: condvar_test6 thread sleeping with 6 waiters
             signal2: condvar_test7 thread sleeping with 7 waiters
             signal2: condvar_test0 thread woken 7 waiters remain
             signal2: condvar_test1 thread woken 6 waiters remain
             signal2: condvar_test2 thread woken 5 waiters remain
             signal2: condvar_test3 thread woken 4 waiters remain
             signal2: condvar_test4 thread woken 3 waiters remain
             signal2: condvar_test5 thread woken 2 waiters remain
             signal2: condvar_test6 thread woken 1 waiters remain
             signal2: condvar_test7 thread woken 0 waiters remain
             signal2: Correctly woke 8 sleeping threads 1 at a time

             condvar:broadcast2           Pass  

             signal2: condvar_test0 thread sleeping with 0 waiters
             signal2: condvar_test1 thread sleeping with 1 waiters
             signal2: condvar_test2 thread sleeping with 2 waiters
             signal2: condvar_test3 thread sleeping with 3 waiters
             signal2: condvar_test4 thread sleeping with 4 waiters
             signal2: condvar_test5 thread sleeping with 5 waiters
             signal2: condvar_test6 thread sleeping with 6 waiters
             signal2: condvar_test7 thread sleeping with 7 waiters
             signal2: condvar_test0 thread woken 7 waiters remain
             signal2: condvar_test1 thread woken 6 waiters remain
             signal2: condvar_test2 thread woken 5 waiters remain
             signal2: condvar_test3 thread woken 4 waiters remain
             signal2: condvar_test4 thread woken 3 waiters remain
             signal2: condvar_test5 thread woken 2 waiters remain
             signal2: condvar_test6 thread woken 1 waiters remain
             signal2: condvar_test7 thread woken 0 waiters remain
             signal2: Correctly woke 8 sleeping threads 1 at a time

             condvar:timeout              Pass  

             timeout: Thread going to sleep for 1 second and expecting to be woken by timeout
             timeout: Thread correctly timed out and was asleep for 1.0 seconds (1 second min)

SPL v0.5.0
------------------------------ Running SPLAT Tests ------------------------------
              thread:create               Pass  

              create: Thread successfully started properly

              thread:exit                 Pass  

                exit: Thread successfully exited at thread_exit()

SPL v0.5.0
------------------------------ Running SPLAT Tests ------------------------------
              rwlock:N-rd/1-wr            Pass  

           N-rd/1-wr: rwlock_wr_thr0 trying to acquire rwlock (0 holding/0 waiting)
           N-rd/1-wr: rwlock_wr_thr0 acquired rwlock (1 holding/0 waiting)
           N-rd/1-wr: rwlock_rd_thr7 trying to acquire rwlock (1 holding/0 waiting)
           N-rd/1-wr: rwlock_rd_thr3 trying to acquire rwlock (1 holding/1 waiting)
           N-rd/1-wr: rwlock_rd_thr1 trying to acquire rwlock (1 holding/1 waiting)
           N-rd/1-wr: rwlock_rd_thr4 trying to acquire rwlock (1 holding/2 waiting)
           N-rd/1-wr: rwlock_rd_thr5 trying to acquire rwlock (1 holding/3 waiting)
           N-rd/1-wr: rwlock_rd_thr6 trying to acquire rwlock (1 holding/5 waiting)
           N-rd/1-wr: rwlock_rd_thr2 trying to acquire rwlock (1 holding/6 waiting)
           N-rd/1-wr: rwlock_wr_thr0 dropped rwlock (0 holding/7 waiting)
           N-rd/1-wr: rwlock_rd_thr1 acquired rwlock (1 holding/6 waiting)
           N-rd/1-wr: rwlock_rd_thr3 acquired rwlock (2 holding/5 waiting)
           N-rd/1-wr: rwlock_rd_thr4 acquired rwlock (3 holding/4 waiting)
           N-rd/1-wr: rwlock_rd_thr6 acquired rwlock (4 holding/3 waiting)
           N-rd/1-wr: rwlock_rd_thr7 acquired rwlock (5 holding/2 waiting)
           N-rd/1-wr: rwlock_rd_thr2 acquired rwlock (6 holding/1 waiting)
           N-rd/1-wr: rwlock_rd_thr5 acquired rwlock (7 holding/0 waiting)
           N-rd/1-wr: rwlock_rd_thr5 dropped rwlock (6 holding/0 waiting)
           N-rd/1-wr: rwlock_rd_thr6 dropped rwlock (4 holding/0 waiting)
           N-rd/1-wr: rwlock_rd_thr2 dropped rwlock (4 holding/0 waiting)
           N-rd/1-wr: rwlock_rd_thr3 dropped rwlock (3 holding/0 waiting)
           N-rd/1-wr: rwlock_rd_thr7 dropped rwlock (2 holding/0 waiting)
           N-rd/1-wr: rwlock_rd_thr4 dropped rwlock (1 holding/0 waiting)
           N-rd/1-wr: rwlock_rd_thr1 dropped rwlock (0 holding/0 waiting)

              rwlock:0-rd/N-wr            Pass  

           0-rd/N-wr: 4 racing threads correctly entered/exited the rwlock 256 times

              rwlock:held                 Pass  

                held: RW_LOCK_HELD returned 1 (expected 1) when RW_READER
                held: RW_LOCK_HELD returned 0 (expected 0) when !RW_READER
                held: RW_LOCK_HELD returned 1 (expected 1) when RW_WRITER
                held: RW_LOCK_HELD returned 0 (expected 0) when !RW_WRITER
                held: RW_READ_HELD returned 1 (expected 1) when RW_READER
                held: RW_READ_HELD returned 0 (expected 0) when !RW_READER
                held: RW_READ_HELD returned 0 (expected 0) when RW_WRITER
                held: RW_READ_HELD returned 0 (expected 0) when !RW_WRITER
                held: RW_WRITE_HELD returned 0 (expected 0) when RW_READER
                held: RW_WRITE_HELD returned 0 (expected 0) when !RW_READER
                held: RW_WRITE_HELD returned 1 (expected 1) when RW_WRITER
                held: RW_WRITE_HELD returned 0 (expected 0) when !RW_WRITER

              rwlock:tryenter             Pass  

            tryenter: rw_tryenter(RW_WRITER) returned -16 (expected -16) when RW_WRITER
            tryenter: rw_tryenter(RW_READER) returned -16 (expected -16) when RW_WRITER
            tryenter: rw_tryenter(RW_WRITER) returned -16 (expected -16) when RW_READER
            tryenter: rw_tryenter(RW_READER) returned 0 (expected 0) when RW_READER
            tryenter: rw_tryenter(RW_WRITER) returned 0 (expected 0) when RW_NONE
            tryenter: rw_tryenter(RW_READER) returned 0 (expected 0) when RW_NONE

              rwlock:rw_downgrade         Pass  

        rw_downgrade: rwlock properly downgraded

              rwlock:rw_tryupgrade        Pass  

       rw_tryupgrade: rw_tryupgrade() is disabled for this arch

SPL v0.5.0
------------------------------ Running SPLAT Tests ------------------------------
                time:time1                Pass  

               time1: hz is 250

                time:time2                Pass  

               time2: time is 25711800754297
               time2: time is 25711800755047
               time2: time is 25711840513217
               time2: time is 25711880009305
               time2: time is 25711920009237
               time2: time is 25711960008089
               time2: time is 25712000013384
               time2: time is 25712040008288
               time2: time is 25712080009243
               time2: time is 25712120005983
               time2: time is 25712160005854
               time2: time is 25712200009137
               time2: time is 25712240005865
               time2: time is 25712280005821
               time2: time is 25712320008914
               time2: time is 25712360006716
               time2: time is 25712400006000
               time2: time is 25712440007764
               time2: time is 25712480006364
               time2: time is 25712520006218
               time2: time is 25712560013439
               time2: time is 25712600006561
               time2: time is 25712641525171
               time2: time is 25712681607041
               time2: time is 25712720009323
               time2: time is 25712760014556
               time2: time is 25712800008469
               time2: time is 25712840007174
               time2: time is 25712880006389
               time2: time is 25712920007566
               time2: time is 25712960008310
               time2: time is 25713000121277
               time2: time is 25713040006141
               time2: time is 25713080005970
               time2: time is 25713120007573
               time2: time is 25713160006296
               time2: time is 25713200008249
               time2: time is 25713241825132
               time2: time is 25713280008494
               time2: time is 25713320007399
               time2: time is 25713360011861
               time2: time is 25713400006819
               time2: time is 25713440008901
               time2: time is 25713480007687
               time2: time is 25713520007560
               time2: time is 25713560007558
               time2: time is 25713600007870
               time2: time is 25713641430014
               time2: time is 25713681514251
               time2: time is 25713720008775
               time2: time is 25713760020158
               time2: time is 25713800015001
               time2: time is 25713840011264
               time2: time is 25713880008175
               time2: time is 25713920006507
               time2: time is 25713960007192
               time2: time is 25714000012251
               time2: time is 25714040006346
               time2: time is 25714080007478
               time2: time is 25714120007226
               time2: time is 25714160006750
               time2: time is 25714200007909
               time2: time is 25714240006502
               time2: time is 25714280006476
               time2: time is 25714320006192
               time2: time is 25714360007078
               time2: time is 25714400007297
               time2: time is 25714440009290
               time2: time is 25714480008229
               time2: time is 25714520007037
               time2: time is 25714560007418
               time2: time is 25714600006522
               time2: time is 25714640018207
               time2: time is 25714684005910
               time2: time is 25714720009074
               time2: time is 25714760020498
               time2: time is 25714800007261
               time2: time is 25714840007510
               time2: time is 25714880008387
               time2: time is 25714920006417
               time2: time is 25714964007246
               time2: time is 25715004013217
               time2: time is 25715044034282
               time2: time is 25715084062553
               time2: time is 25715125007420
               time2: time is 25715165008018
               time2: time is 25715205009248
               time2: time is 25715245005691
               time2: time is 25715285010636
               time2: time is 25715325010891
               time2: time is 25715365007529
               time2: time is 25715405007206
               time2: time is 25715445006873
               time2: time is 25715485006679
               time2: time is 25715525006942
               time2: time is 25715565007141
               time2: time is 25715605006245
               time2: time is 25715644335507
               time2: time is 25715685005895
               time2: time is 25715725005886
               time2: time is 25715765025356

SPL v0.5.0
------------------------------ Running SPLAT Tests ------------------------------
               vnode:vn_open              Pass  

             vn_open: Successfully vn_open'ed and vn_closed test file: /etc/fstab

               vnode:vn_openat            Pass  

           vn_openat: Successfully vn_openat'ed and vn_closed test file: /etc/fstab

               vnode:vn_rdwr              Pass  

             vn_rdwr: Wrote: SPL VNode Interface Test File
             vn_rdwr: Read:  SPL VNode Interface Test File
             vn_rdwr: Successfully wrote and read expected data pattern to test file: /tmp/spl.vnode.tmp

               vnode:vn_rename            Pass  

           vn_rename: Wrote to /tmp/spl.vnode.tmp.1:  SPL VNode Interface Test File
           vn_rename: Read from /tmp/spl.vnode.tmp.2: SPL VNode Interface Test File
           vn_rename: Successfully renamed test file /tmp/spl.vnode.tmp.1 -> /tmp/spl.vnode.tmp.2 and verified data pattern

               vnode:vn_getattr           Pass  

             vn_open: Successfully vn_getattr'ed test file: /etc/fstab

               vnode:vn_sync              Pass  

             vn_sync: Successfully fsync'ed test file /tmp/spl.vnode.tmp

               vnode:vn_getf              Pass  

             vn_rdwr: Wrote: SPL VNode Interface Test File
             vn_rdwr: Read:  SPL VNode Interface Test File
             vn_rdwr: Successfully wrote and read expected data pattern to test file: /tmp/spl.vnode.tmp

SPL v0.5.0
------------------------------ Running SPLAT Tests ------------------------------
                kobj:open                 Pass  

                open: Successfully opened and closed test file: /etc/fstab

                kobj:size/read            Pass  

           size/read: 
# /etc/fstab: static file system information.
#
# Use 'blkid -o value -s UUID' to print the universally unique identifier
# for a device; this may be used with UUID= as a more robust way to name
# devices that works even if disks are added and removed. See fstab(5).
#
#                
proc            /proc           proc    nodev,noexec,nosuid 0       0
/dev/mapper/ssd-root /               ext4    relatime,errors=remount-ro 0       1
/dev/mapper/ssd-home /home           ext4    relatime,user_xattr        0       2
/dev/mapper/gentoo-root /mnt/gentoo/ auto    relatime,noauto,ro     0   0

none    /tmp        tmpfs mode=1777,auto,nodev 0 0
none    /var/tmp    tmpfs mode=1777,auto,nodev 0 0

sshfs#root@koolu:/ /koolu fuse comment=sshfs,noauto,users,allow_other,gid=1000,uid=1000,transform_symlinks 0 0

           size/read: Successfully stat'ed and read expected number of bytes (852) from test file: /etc/fstab

SPL v0.5.0
------------------------------ Running SPLAT Tests ------------------------------
              atomic:64-bit               Pass  

              64-bit: Thread 0 successfully started: 10000000/0
              64-bit: Thread 0 sleeping: 10000000/0
              64-bit: Thread 1 successfully started: 10000000/0
              64-bit: Thread 1 sleeping: 10000000/0
              64-bit: Thread 2 successfully started: 10000000/0
              64-bit: Thread 2 sleeping: 10000000/0
              64-bit: Thread 3 successfully started: 10000000/0
              64-bit: Thread 3 sleeping: 10000000/0
              64-bit: Thread 4 successfully started: 10000000/0
              64-bit: Thread 4 sleeping: 10000000/0
              64-bit: Thread 5 successfully started: 10000000/0
              64-bit: Thread 5 sleeping: 10000000/0
              64-bit: Thread 1 sleeping: 10563852/0
              64-bit: Thread 0 sleeping: 10590106/0
              64-bit: Thread 4 sleeping: 10606446/0
              64-bit: Thread 2 sleeping: 10235799/0
              64-bit: Thread 5 sleeping: 9957393/0
              64-bit: Thread 3 sleeping: 9961107/0
              64-bit: Thread 1 sleeping: 10093323/0
              64-bit: Thread 0 sleeping: 10310677/0
              64-bit: Thread 4 sleeping: 10326969/0
              64-bit: Thread 2 sleeping: 10279054/0
              64-bit: Thread 5 sleeping: 10149788/0
              64-bit: Thread 3 sleeping: 10250409/0
              64-bit: Thread 1 sleeping: 10438885/0
              64-bit: Thread 0 sleeping: 10471502/0
              64-bit: Thread 4 sleeping: 10501225/0
              64-bit: Thread 2 sleeping: 10232443/0
              64-bit: Thread 5 sleeping: 9991465/0
              64-bit: Thread 3 sleeping: 10016940/0
              64-bit: Thread 1 sleeping: 10108344/0
              64-bit: Thread 0 sleeping: 10320000/0
              64-bit: Thread 4 sleeping: 10335206/0
              64-bit: Thread 2 sleeping: 10241113/0
              64-bit: Thread 5 sleeping: 10135064/0
              64-bit: Thread 3 sleeping: 10232400/0
              64-bit: Thread 1 sleeping: 10382869/0
              64-bit: Thread 0 sleeping: 10423254/0
              64-bit: Thread 4 sleeping: 10435889/0
              64-bit: Thread 2 sleeping: 10113844/0
              64-bit: Thread 5 sleeping: 9980831/0
              64-bit: Thread 3 sleeping: 10005603/0
              64-bit: Thread 1 sleeping: 10134792/0
              64-bit: Thread 0 sleeping: 10383272/0
              64-bit: Thread 4 sleeping: 10393187/0
              64-bit: Thread 2 sleeping: 10295840/0
              64-bit: Thread 5 sleeping: 10164516/0
              64-bit: Thread 3 sleeping: 10281068/0
              64-bit: Thread 1 sleeping: 10328063/0
              64-bit: Thread 0 sleeping: 10389256/0
              64-bit: Thread 4 sleeping: 10418377/0
              64-bit: Thread 2 sleeping: 10093847/0
              64-bit: Thread 5 sleeping: 10006638/0
              64-bit: Thread 3 sleeping: 10049016/0
              64-bit: Thread 1 sleeping: 10149134/0
              64-bit: Thread 0 sleeping: 10407479/0
              64-bit: Thread 4 sleeping: 10408292/0
              64-bit: Thread 2 sleeping: 10313397/0
              64-bit: Thread 5 sleeping: 10173812/0
              64-bit: Thread 1 sleeping: 10290333/0
              64-bit: Thread 3 sleeping: 10285783/0
              64-bit: Thread 0 sleeping: 10331118/0
              64-bit: Thread 4 sleeping: 10344841/0
              64-bit: Thread 5 sleeping: 9985883/0
              64-bit: Thread 2 sleeping: 10004375/0
              64-bit: Thread 3 sleeping: 9998450/0
              64-bit: Thread 1 successfully exited: 9997921/1
              64-bit: Thread 4 successfully exited: 10219052/2
              64-bit: Thread 0 successfully exited: 10172810/3
              64-bit: Thread 5 successfully exited: 10158667/4
              64-bit: Thread 2 successfully exited: 10158628/5
              64-bit: Thread 3 successfully exited: 10000000/6
              64-bit: Success initial and final values match, 10000000 == 10000000

SPL v0.5.0
------------------------------ Running SPLAT Tests ------------------------------
                list:create/destroy       Pass  

      create/destroy: Creating list
      create/destroy: Destroying list

                list:ins/rm head          Pass  

         ins/rm head: Creating list
         ins/rm head: Adding 8 items to list head
         ins/rm head: Validating 8 item list is a stack
         ins/rm head: Removing 8 items from list head
         ins/rm head: Destroying list

                list:ins/rm tail          Pass  

         ins/rm tail: Creating list
         ins/rm tail: Adding 8 items to list tail
         ins/rm tail: Validating 8 item list is a queue
         ins/rm tail: Removing 8 items from list tail
         ins/rm tail: Destroying list

                list:insert_after         Pass  

        insert_after: Creating list
        insert_after: Adding 8 items each after the last item
        insert_after: Validating 8 item list is a queue
        insert_after: Removing 8 items from list tail
        insert_after: Destroying list

                list:insert_before        Pass  

       insert_before: Creating list
       insert_before: Adding 8 items each before the last item
       insert_before: Validating 8 item list is a queue
       insert_before: Removing 8 items from list tail
       insert_before: Destroying list

                list:remove               Pass  

              remove: Creating list
              remove: Adding 8 items to list tail
              remove: Removing 4 odd items from the list
              remove: Validating 4 item list is a queue of only even elements
              remove: Removing 4 items from list tail
              remove: Destroying list

                list:active               Pass  

              active: Creating list
              active: Init list node
              active: Insert list node
              active: Remove list node
              active: Destroying list

SPL v0.5.0
------------------------------ Running SPLAT Tests ------------------------------
             generic:ddi_strtoul          Pass  

         ddi_strtoul: Pass (0) positive: 123456789 == 123456789, 0xf8459145
         ddi_strtoul: Pass (0) negative: -123456789 == 0, 0xf33e5ecc
         ddi_strtoul: Pass (0) base: 0xabcdef == 11259375, 0xf845916b
         ddi_strtoul: Pass (34) max: 10000000000000000 == 0, 0x(null)
         ddi_strtoul: Pass (0) min: -10000000000000000 == 0, 0xf33e5ecc
         ddi_strtoul: Pass (0) invalid: 12345U == 12345, 0xf84591a3
         ddi_strtoul: Pass (0) invalid: invald == 0, 0xf33e5ecc

             generic:ddi_strtol           Pass  

         ddi_strtoul: Pass (0) positive: 123456789 == 123456789, 0xf8459145
         ddi_strtoul: Pass (0) negative: -123456789 == -123456789, 0xf33e5ed6
         ddi_strtoul: Pass (0) base: 0xabcdef == 11259375, 0xf845916b
         ddi_strtoul: Pass (34) max: 10000000000000000 == 0, 0x(null)
         ddi_strtoul: Pass (34) min: -10000000000000000 == 0, 0x(null)
         ddi_strtoul: Pass (0) invalid: 12345U == 12345, 0xf84591a3
         ddi_strtoul: Pass (0) invalid: invald == 0, 0xf33e5ecc

             generic:ddi_strtoull         Pass  

         ddi_strtoul: Pass (0) positive: 123456789 == 123456789, 0xf8459145
         ddi_strtoul: Pass (0) negative: -123456789 == 0, 0xf33e5ecc
         ddi_strtoul: Pass (0) base: 0xabcdef == 11259375, 0xf845916b
         ddi_strtoul: Pass (34) max: 10000000000000000 == 0, 0x(null)
         ddi_strtoul: Pass (0) min: -10000000000000000 == 0, 0xf33e5ecc
         ddi_strtoul: Pass (0) invalid: 12345U == 12345, 0xf84591a3
         ddi_strtoul: Pass (0) invalid: invald == 0, 0xf33e5ecc

             generic:ddi_strtoll          Pass  

         ddi_strtoul: Pass (0) positive: 123456789 == 123456789, 0xf8459145
         ddi_strtoul: Pass (0) negative: -123456789 == -123456789, 0xf33e5ed6
         ddi_strtoul: Pass (0) base: 0xabcdef == 11259375, 0xf845916b
         ddi_strtoul: Pass (34) max: 10000000000000000 == 0, 0x(null)
         ddi_strtoul: Pass (34) min: -10000000000000000 == 0, 0x(null)
         ddi_strtoul: Pass (0) invalid: 12345U == 12345, 0xf84591a3
         ddi_strtoul: Pass (0) invalid: invald == 0, 0xf33e5ecc

             generic:udivdi3              Pass  

             udivdi3: Testing unsigned 64-bit division.
             udivdi3: Passed all 2756 tests

             generic:divdi3               Pass  

              divdi3: Testing signed 64-bit division.
              divdi3: Passed all 2450 tests

SPL v0.5.0
------------------------------ Running SPLAT Tests ------------------------------
                cred:cred                 Pass  

                cred: uid: 0 ruid: 0 suid: 0 gid: 0 rgid: 0 sgid: 0
                cred: ngroups: 2 groups: 0 29 
                cred: Success sane CRED(): 0

                cred:kcred                Pass  

               kcred: uid: 0 ruid: 0 suid: 0 gid: 0 rgid: 0 sgid: 0
               kcred: ngroups: 0 groups: 
               kcred: Success sane kcred: 0

                cred:groupmember          Pass  

         groupmember: Success root gid is a member of the expected groups: 0

Debian with 2.6.26 : Compilation fails

I tried to compile spl under the regular debian stable kernel (on a 64 bit server).

Here are the results :

./configure --with-linux=/usr/src/linux-headers-2.6.26-2-common/ --with-linux-obj=/usr/src/linux-headers-2.6.26-2-amd64/ : Ok, no problems.
make : it fails

splzfs:~/spl-0.4.9# make
make  all-recursive
make[1]: Entering directory `/root/spl-0.4.9'
Making all in lib
make[2]: Entering directory `/root/spl-0.4.9/lib'
/bin/sh ../libtool  --tag=CC --silent  --mode=compile gcc -DHAVE_CONFIG_H -include ../spl_config.h    -Wall -Wstrict-prototypes -Werror -Wshadow -D__USE_LARGEFILE64 -g -O2 -MT list.lo -MD -MP -MF .deps/list.Tpo -c -o list.lo list.c
mv -f .deps/list.Tpo .deps/list.Plo
/bin/sh ../libtool  --tag=CC --silent  --mode=link gcc -Wall -Wstrict-prototypes -Werror -Wshadow -D__USE_LARGEFILE64 -g -O2   -o libcommon.la  list.lo  
make[2]: Leaving directory `/root/spl-0.4.9/lib'
Making all in cmd
make[2]: Entering directory `/root/spl-0.4.9/cmd'
gcc -DHAVE_CONFIG_H -include ../spl_config.h -I../lib    -Wall -Wstrict-prototypes -Werror -Wshadow -D__USE_LARGEFILE64 -g -O2 -MT spl.o -MD -MP -MF .deps/spl.Tpo -c -o spl.o spl.c
mv -f .deps/spl.Tpo .deps/spl.Po
/bin/sh ../libtool  --tag=CC --silent  --mode=link gcc -Wall -Wstrict-prototypes -Werror -Wshadow -D__USE_LARGEFILE64 -g -O2   -o spl spl.o  
gcc -DHAVE_CONFIG_H -include ../spl_config.h -I../lib    -Wall -Wstrict-prototypes -Werror -Wshadow -D__USE_LARGEFILE64 -g -O2 -MT splat.o -MD -MP -MF .deps/splat.Tpo -c -o splat.o splat.c
mv -f .deps/splat.Tpo .deps/splat.Po
/bin/sh ../libtool  --tag=CC --silent  --mode=link gcc -Wall -Wstrict-prototypes -Werror -Wshadow -D__USE_LARGEFILE64 -g -O2 ../lib/libcommon.la  -o splat splat.o  
make[2]: Leaving directory `/root/spl-0.4.9/cmd'
Making all in scripts
make[2]: Entering directory `/root/spl-0.4.9/scripts'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/root/spl-0.4.9/scripts'
Making all in module
make[2]: Entering directory `/root/spl-0.4.9/module'
make -C /usr/src/linux-headers-2.6.26-2-amd64/ SUBDIRS=`pwd`  O=/usr/src/linux-headers-2.6.26-2-amd64/ modules
make[3]: Entering directory `/usr/src/linux-headers-2.6.26-2-amd64'
  CC [M]  /root/spl-0.4.9/module/spl/spl-debug.o
  CC [M]  /root/spl-0.4.9/module/spl/spl-proc.o
  CC [M]  /root/spl-0.4.9/module/spl/spl-kmem.o
  CC [M]  /root/spl-0.4.9/module/spl/spl-thread.o
  CC [M]  /root/spl-0.4.9/module/spl/spl-taskq.o
  CC [M]  /root/spl-0.4.9/module/spl/spl-rwlock.o
  CC [M]  /root/spl-0.4.9/module/spl/spl-vnode.o
/root/spl-0.4.9/module/spl/spl-vnode.c: In function ‘vn_set_pwd’:
/root/spl-0.4.9/module/spl/spl-vnode.c:669: error: implicit declaration of function ‘user_path_dir’
/root/spl-0.4.9/module/spl/spl-vnode.c:673: error: implicit declaration of function ‘inode_permission’
/root/spl-0.4.9/module/spl/spl-vnode.c:673: error: ‘MAY_ACCESS’ undeclared (first use in this function)
/root/spl-0.4.9/module/spl/spl-vnode.c:673: error: (Each undeclared identifier is reported only once
/root/spl-0.4.9/module/spl/spl-vnode.c:673: error: for each function it appears in.)
make[6]: *** [/root/spl-0.4.9/module/spl/spl-vnode.o] Error 1
make[5]: *** [/root/spl-0.4.9/module/spl] Error 2
make[4]: *** [_module_/root/spl-0.4.9/module] Error 2
make[3]: *** [sub-make] Error 2
make[3]: Leaving directory `/usr/src/linux-headers-2.6.26-2-amd64'
make[2]: *** [modules] Error 2
make[2]: Leaving directory `/root/spl-0.4.9/module'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/spl-0.4.9'
make: *** [all] Error 2

Apparently, the 2.6.26 kernel doesn't have functions which are required to compile and use the SPL.

I think this problem cannot be resolved by patching the spl, I think the "only" solution is to use the backport kernel, which is reported in the issue #10

What are your thoughts about it ?

SBUG splat rwlock test 1

CentOS 5.4 with kernel
2.6.18-194.3.1.el5

SPL test fails on
splat -a
rwlock:N-rd/1-wr
Message from syslogd@ at Sat May 29 12:23:16 2010 ...
localhost kernel: SPLError: 19477:0:(splat-rwlock.c:291:splat_rwlock_test1()) SBUG

doesn't compile on 2.6.18-xen

make[2]: Entering directory /tmp/spl/scripts' make[2]: Nothing to be done forall'.
make[2]: Leaving directory /tmp/spl/scripts' Making all in module make[2]: Entering directory/tmp/spl/module'
make -C /tmp/xen-3.1.0-src-ec2-v1.4/build-linux-2.6.18-xen_x86_64/ SUBDIRS=pwd O=/tmp/xen-3.1.0-src-ec2-v1.4/build-linux-2.6.18-xen_x86_64/ modules
make[3]: Entering directory /tmp/xen-3.1.0-src-ec2-v1.4/build-linux-2.6.18-xen_x86_64' make -C /tmp/xen-3.1.0-src-ec2-v1.4/linux-2.6.18-xen O=/tmp/xen-3.1.0-src-ec2-v1.4/build-linux-2.6.18-xen_x86_64 modules CC [M] /tmp/spl/module/spl/../../module/spl/spl-debug.o CC [M] /tmp/spl/module/spl/../../module/spl/spl-proc.o CC [M] /tmp/spl/module/spl/../../module/spl/spl-kmem.o CC [M] /tmp/spl/module/spl/../../module/spl/spl-thread.o CC [M] /tmp/spl/module/spl/../../module/spl/spl-taskq.o CC [M] /tmp/spl/module/spl/../../module/spl/spl-rwlock.o CC [M] /tmp/spl/module/spl/../../module/spl/spl-vnode.o /tmp/spl/module/spl/../../module/spl/spl-vnode.c: In function 'vn_set_pwd': /tmp/spl/module/spl/../../module/spl/spl-vnode.c:732: error: 'LOOKUP_CHDIR' undeclared (first use in this function) /tmp/spl/module/spl/../../module/spl/spl-vnode.c:732: error: (Each undeclared identifier is reported only once /tmp/spl/module/spl/../../module/spl/spl-vnode.c:732: error: for each function it appears in.) make[7]: *** [/tmp/spl/module/spl/../../module/spl/spl-vnode.o] Error 1 make[6]: *** [/tmp/spl/module/spl] Error 2 make[5]: *** [_module_/tmp/spl/module] Error 2 make[4]: *** [modules] Error 2 make[3]: *** [modules] Error 2 make[3]: Leaving directory/tmp/xen-3.1.0-src-ec2-v1.4/build-linux-2.6.18-xen_x86_64'
make[2]: *** [modules] Error 2
make[2]: Leaving directory /tmp/spl/module' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory/tmp/spl'
make: *** [all] Error 2

SPL/head doesn't seem to build properly on Ubuntu 10.04 anymore

Just tried to get this working on a fresh install of Ubuntu 10.04/x64 inside a VirtualBox VM. "./configure && make && make install" went ok, but when I try to load the modules, I get this:

root@zfstest:# modprobe spl
FATAL: Error inserting spl (/lib/modules/2.6.32-22-server/addon/spl/spl/spl.ko): Cannot assign requested address
root@zfstest:
# modprobe splat
FATAL: Error inserting splat (/lib/modules/2.6.32-22-server/addon/spl/splat/splat.ko): Cannot assign requested address

No useful output in dmesg, not sure how further to debug.

SPLError: 10949:0:(dbuf.c:2095:dbuf_add_ref()) SPL PANIC

Hello,
every time I try to copy some files to the partition /dev/trunk/home1 mounted at /home/zfs_home I hit the following bug:

SPLError: 10949:0:(dbuf.c:2095:dbuf_add_ref()) SPL PANIC
SPL: Showing stack for process 10949
Pid: 10949, comm: zvol/1 Tainted: P            2.6.35-zen2 #1
Call Trace:
 [] ? spl_debug_bug+0x7e/0xd0 [spl]
 [] ? dmu_buf_add_ref+0x51/0x60 [zfs]
 [] ? dbuf_dirty+0x249/0x740 [zfs]
 [] ? dmu_buf_will_fill+0x45/0xe0 [zfs]
 [] ? dmu_write_req+0x27d/0x2b0 [zfs]
 [] ? zvol_write+0xd4/0x570 [zfs]
 [] ? mempool_free+0x7f/0x90
 [] ? mempool_free+0x7f/0x90
 [] ? __wake_up+0x3e/0x60
 [] ? taskq_thread+0x17b/0x300 [spl]
 [] ? default_wake_function+0x0/0x10
 [] ? taskq_thread+0x0/0x300 [spl]
 [] ? kthread+0x74/0x80
 [] ? kthread+0x0/0x80
 [] ? kernel_thread_helper+0x6/0x10
SPL: Dumping log to /tmp/spl-log.1284982595.10949

System: vmware, gentoo, zen-kernel-2.6.35-zen2, 32bit, booting with vmalloc=512M

$ zpool status
pool: trunk
state: ONLINE
scan: none requested
config:

    NAME        STATE     READ WRITE CKSUM
    trunk       ONLINE       0     0     0
      -0        ONLINE       0     0     0
        sdc1    ONLINE       0     0     0
        sdd1    ONLINE       0     0     0
        sde1    ONLINE       0     0     0
        sdf1    ONLINE       0     0     0
    spares
      sdg1      AVAIL

errors: No known data errors

$ zfs list
trunk 1.03G 1.89G 28.4K /trunk
trunk/home 1.03G 2.88G 38.2M -

Kind regards,
massmio

utsrelease.h

Hey,
Just a heads up, as of at least 2.6.33 utsrelease.h moved from $kernelbuild/include/linux/utsrelease.h TO $kernelbuild/include/generated/utsrelease.h

Just found that out the hard way when it wouldn't configure with the new kernel.

Hope it helps,
Dane Smith

Rebuild of spl-modules fails on Fedora 13

checking kernel source directory... /usr/src/kernels/2.6.33.5-112.fc13.x86_64
checking kernel build directory... /usr/src/kernels/2.6.33.5-112.fc13.x86_64
checking kernel source version... Not found
configure: error:
*** Cannot determine the version of the linux kernel source.
*** Please prepare the kernel before running this script
error: Bad exit status from /var/tmp/rpm-tmp.s39Xyb (%build)

SPL Module Build Isse

Hi,
x86 Gentoo Machine w/ Kernel 2.6.30-tuxonice and GCC 4.3.4 when compiling the spl module errors with:

ake[3]: Entering directory `/usr/src/linux-2.6.30-tuxonice-r6'
CC [M] /root/testing/spl-0.4.9/module/spl/spl-thread.o
cc1: warnings being treated as errors
/root/testing/spl-0.4.9/module/spl/spl-thread.c: In function '__thread_create':
/root/testing/spl-0.4.9/module/spl/spl-thread.c:126: error: format not a string literal and no format arguments
make[5]: *** [/root/testing/spl-0.4.9/module/spl/spl-thread.o] Error 1
make[4]: *** [/root/testing/spl-0.4.9/module/spl] Error 2

My amd64 Gentoo machine w/ GCC-4.3.4 but Kernel-2.6.32 compiles fine and seems to work ok.

Not sure what is causing it. Ill look into it if I have a chance tomorrow.

Hope this helps.

track changes to the arguments to fop fsync() (kernel v2.6.34-8258-g7ea8085)

From 56c5c6071588f236deb11d5822d6a0bb66b2cdea Mon Sep 17 00:00:00 2001
From: Seth Heeren 
Date: Tue, 6 Jul 2010 17:02:06 +0200
Subject: [PATCH] track changes to the arguments to fop fsync()

The file operation fsync dropped an unused struct dentry parameter

---
 module/spl/spl-debug.c |    2 +-
 module/spl/spl-vnode.c |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/module/spl/spl-debug.c b/module/spl/spl-debug.c
index 6a10862..e38b0fd 100644
--- a/module/spl/spl-debug.c
+++ b/module/spl/spl-debug.c
@@ -920,7 +920,7 @@ trace_filp_open (const char *name, int flags, int mode, int *err)
 }
 
 #define trace_filp_write(fp, b, s, p)  (fp)->f_op->write((fp), (b), (s), p)
-#define trace_filp_fsync(fp)           (fp)->f_op->fsync((fp),(fp)->f_dentry,1)
+#define trace_filp_fsync(fp)           (fp)->f_op->fsync((fp),1)
 #define trace_filp_close(f)            filp_close(f, NULL)
 #define trace_filp_poff(f)             (&(f)->f_pos)
 
diff --git a/module/spl/spl-vnode.c b/module/spl/spl-vnode.c
index b5c34fb..d9aff85 100644
--- a/module/spl/spl-vnode.c
+++ b/module/spl/spl-vnode.c
@@ -473,7 +473,7 @@ int vn_fsync(vnode_t *vp, int flags, void *x3, void *x4)
    if (flags & FDSYNC)
        datasync = 1;
 
-   RETURN(-file_fsync(vp->v_file, vp->v_file->f_dentry, datasync));
+   RETURN(-file_fsync(vp->v_file, datasync));
 } /* vn_fsync() */
 EXPORT_SYMBOL(vn_fsync);
 
-- 
1.7.0.4

zfs rollback

When attempting to rollback a snapshot I get the following error:

zfs rollback tank/fish@snap1
internal error: Unknown error 524
Aborted

This is how the volume and snapshot were created.

  1. zfs create -V 5G tank/fish
  2. mkfs.ext3 /dev/tank/fish
  3. mounted /dev/tank/fish and copied files to it.
  4. unmounted
  5. zfs snapshot tank/fish@snap1

OS: CentOS release 5.5 (Final)
Kernel: 2.6.18-194.17.4.el5
spl: spl-0.5.1
zfs: zfs-0.5.1

SPL can not build on 2.6.39 kernel

I try to compile zfs+spl on Jeremy's kernel 2.6.39-rc3 and receive error:

/tmp/spl-build-root-keyAkN9Q/BUILD/spl-0.6.0/module/spl/../../module/spl/spl-vnode.c:42: error: ‘SPIN_LOCK_UNLOCKED’ undeclared here (not in a function)
/tmp/spl-build-root-keyAkN9Q/BUILD/spl-0.6.0/module/spl/../../module/spl/spl-vnode.c: In function ‘vn_remove’:
/tmp/spl-build-root-keyAkN9Q/BUILD/spl-0.6.0/module/spl/../../module/spl/spl-vnode.c:319: error: implicit declaration of function ‘path_lookup’

As I see in kernel header file linux/spinlock_types.h, SPIN_LOCK_UNLOCKED was deprecated already in 2.6.32 and now in 2.6.39 no such definition exist.

How to install on Ubuntu 10.04

Just a guide for others (newbies). Also if I'm doing something wrong please let me know. This is a guide for how to install SPL on Ubuntu or other Debian based systems.

  1. Make sure you have Automake, alien, splat and rpm installed:
    sudo apt-get install automake rpm alien splat
  2. Download and extract the source code to /usr/src (could be anywhere)
  3. Go to folder in terminal and run
    ./configure
  4. If you see any errors, it will most likely be due to a package you are missing. Install it with the same command as above.
  5. Make the rpm
    make rpm
  6. You should see 3 *x86_64.rpm files. Install them all one by one using alien (replace filename with the name of the file)
    sudo alien -i filename

Note: When I try to convert the .rpm into a .deb I get errors, so I just went with this.

  1. Run tests using splat, first you have to enable it
    sudo modprobe splat
    sudo splat -a

Every test must pass.

Hopes this helps someone.

Compile error at linux-2.6.34-gentoo

behaviourism behlendorf-spl-5c04498 # ./configure       
checking metadata... yes
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
checking whether to enable maintainer-specific portions of Makefiles... no
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for a BSD-compatible install... /usr/bin/install -c
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for a sed that does not truncate output... /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for fgrep... /bin/grep -F
checking for ld used by gcc... /usr/x86_64-pc-linux-gnu/bin/ld
checking if the linker (/usr/x86_64-pc-linux-gnu/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking for /usr/x86_64-pc-linux-gnu/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for ar... ar
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/x86_64-pc-linux-gnu/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking spl license... GPL
checking spl config... all
checking kernel source directory... /usr/src/linux-2.6.34-gentoo
checking kernel build directory... /usr/src/linux-2.6.34-gentoo
checking kernel source version... 2.6.34-gentoo
checking kernel file name for module symbols... Module.symvers
checking whether debugging is enabled... no
checking whether basic kmem accounting is enabled... yes
checking whether detailed kmem tracking is enabled... no
checking whether atomic types use spinlocks... no
checking whether kernel defines atomic64_t... yes
checking whether kernel defines atomic64_cmpxchg... yes
checking whether kernel defines atomic64_xchg... yes
checking whether kernel defines uintptr_t... yes
checking whether INIT_WORK wants 3 args... no
checking whether register_sysctl_table() wants 2 args... no
checking whether set_shrinker() available... no
checking whether struct path used in struct nameidata... yes
checking whether symbol task_curr is exported... no
checking whether unnumbered sysctl support exists... no
checking whether fls64() is available... yes
checking whether symbol device_create is exported... yes
checking whether device_create() wants 5 args... yes
checking whether symbol class_device_create is exported... no
checking whether symbol set_normalized_timespec is exported... yes
checking whether set_normalized_timespec() is an inline... yes
checking whether timespec_sub() is available... yes
checking whether init_utsname() is available... yes
checking whether header linux/fdtable.h exists... yes
checking whether files_fdtable() is available... yes
checking whether header linux/uaccess.h exists... yes
checking whether kmalloc_node() is available... yes
checking whether symbol monotonic_clock is exported... no
checking whether struct inode has i_mutex... yes
checking whether struct mutex has owner... yes
checking whether mutex_lock_nested() is available... yes
checking whether symbol div64_64 is exported... no
checking whether symbol div64_u64 is exported... no
checking whether on_each_cpu() wants 3 args... yes
checking whether symbol kallsyms_lookup_name is exported... no
checking whether symbol get_vmalloc_info is exported... no
checking whether symbol *_pgdat exist... yes
checking whether symbol first_online_pgdat is exported... no
checking whether symbol next_online_pgdat is exported... no
checking whether symbol next_zone is exported... no
checking whether symbol pgdat_list is exported... no
checking whether global_page_state() is available... yes
checking whether page state NR_FREE_PAGES is available... yes
checking whether page state NR_INACTIVE is available... no
checking whether page state NR_INACTIVE_ANON is available... yes
checking whether page state NR_INACTIVE_FILE is available... yes
checking whether page state NR_ACTIVE is available... no
checking whether page state NR_ACTIVE_ANON is available... yes
checking whether page state NR_ACTIVE_FILE is available... yes
checking whether symbol get_zone_counts is needed... no
checking whether symbol set_fs_pwd is exported... no
checking whether set_fs_pwd() wants 2 args... yes
checking whether vfs_unlink() wants 2 args... yes
checking whether vfs_rename() wants 4 args... yes
checking whether struct cred exists... yes
checking whether symbol groups_search is exported... no
checking whether symbol __put_task_struct is exported... no
checking whether proc_handler() wants 5 args... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating lib/Makefile
config.status: creating cmd/Makefile
config.status: creating module/Makefile
config.status: creating module/spl/Makefile
config.status: creating module/splat/Makefile
config.status: creating include/Makefile
config.status: creating scripts/Makefile
config.status: creating spl.spec
config.status: creating spl-modules.spec
config.status: creating spl_config.h
config.status: executing depfiles commands
config.status: executing libtool commands
behaviourism behlendorf-spl-5c04498 # make
make  all-recursive
make[1]: Entering directory `/root/zfs/behlendorf-spl-5c04498'
Making all in lib
make[2]: Entering directory `/root/zfs/behlendorf-spl-5c04498/lib'
/bin/sh ../libtool  --tag=CC --silent  --mode=compile gcc -DHAVE_CONFIG_H -include ../spl_config.h    -Wall -Wstrict-prototypes -Werror -Wshadow -D__USE_LARGEFILE64 -g -O2 -MT list.lo -MD -MP -MF .deps/list.Tpo -c -o list.lo list.c
mv -f .deps/list.Tpo .deps/list.Plo
/bin/sh ../libtool  --tag=CC --silent  --mode=link gcc -Wall -Wstrict-prototypes -Werror -Wshadow -D__USE_LARGEFILE64 -g -O2   -o libcommon.la  list.lo  
make[2]: Leaving directory `/root/zfs/behlendorf-spl-5c04498/lib'
Making all in cmd
make[2]: Entering directory `/root/zfs/behlendorf-spl-5c04498/cmd'
gcc -DHAVE_CONFIG_H -include ../spl_config.h -I../lib    -Wall -Wstrict-prototypes -Werror -Wshadow -D__USE_LARGEFILE64 -g -O2 -MT spl.o -MD -MP -MF .deps/spl.Tpo -c -o spl.o spl.c
mv -f .deps/spl.Tpo .deps/spl.Po
/bin/sh ../libtool  --tag=CC --silent  --mode=link gcc -Wall -Wstrict-prototypes -Werror -Wshadow -D__USE_LARGEFILE64 -g -O2   -o spl spl.o  
gcc -DHAVE_CONFIG_H -include ../spl_config.h -I../lib    -Wall -Wstrict-prototypes -Werror -Wshadow -D__USE_LARGEFILE64 -g -O2 -MT splat.o -MD -MP -MF .deps/splat.Tpo -c -o splat.o splat.c
mv -f .deps/splat.Tpo .deps/splat.Po
/bin/sh ../libtool  --tag=CC --silent  --mode=link gcc -Wall -Wstrict-prototypes -Werror -Wshadow -D__USE_LARGEFILE64 -g -O2 ../lib/libcommon.la  -o splat splat.o  
make[2]: Leaving directory `/root/zfs/behlendorf-spl-5c04498/cmd'
Making all in scripts
make[2]: Entering directory `/root/zfs/behlendorf-spl-5c04498/scripts'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/root/zfs/behlendorf-spl-5c04498/scripts'
Making all in module
make[2]: Entering directory `/root/zfs/behlendorf-spl-5c04498/module'
make -C /usr/src/linux-2.6.34-gentoo SUBDIRS=`pwd`  modules
make[3]: Entering directory `/usr/src/linux-2.6.34-gentoo'
  CC [M]  /root/zfs/behlendorf-spl-5c04498/module/spl/spl-debug.o
  CC [M]  /root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.o
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:660: error: unknown field 'ctl_name' specified in initializer
cc1: warnings being treated as errors
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:660: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:668: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:668: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:676: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:676: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:684: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:684: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:690: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:690: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:698: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:698: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:706: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:706: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:714: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:714: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:722: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:722: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:727: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:727: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:733: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:733: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:741: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:741: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:748: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:748: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:755: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:755: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:762: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:762: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:774: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:774: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:782: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:782: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:790: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:790: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:798: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:798: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:806: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:806: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:814: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:814: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:822: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:822: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:828: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:828: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:836: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:836: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:849: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:849: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:861: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:861: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:871: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:871: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:883: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:883: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:905: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:905: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:913: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:913: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:921: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:921: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:930: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:930: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:939: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:939: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:945: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:945: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:952: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:952: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:959: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:959: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:969: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:969: error: initialization makes pointer from integer without a cast
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:979: error: unknown field 'ctl_name' specified in initializer
/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.c:979: error: initialization makes pointer from integer without a cast
make[5]: *** [/root/zfs/behlendorf-spl-5c04498/module/spl/spl-proc.o] Error 1
make[4]: *** [/root/zfs/behlendorf-spl-5c04498/module/spl] Error 2
make[3]: *** [_module_/root/zfs/behlendorf-spl-5c04498/module] Error 2
make[3]: Leaving directory `/usr/src/linux-2.6.34-gentoo'
make[2]: *** [modules] Error 2
make[2]: Leaving directory `/root/zfs/behlendorf-spl-5c04498/module'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/zfs/behlendorf-spl-5c04498'
make: *** [all] Error 2

ZFS causing segmentation faults and crashing the system.

I have been try to figure out what is going on with my system I have had ZFS running for a while with no issue but for some reason it will let me read ~700MB and then throws a segmentation fault and crashes the system.

This has been happening for about a week. I rebooted it today and now ZFS will simply not load.

Not sure how much of these call traces are useful but here is the one which does not allow ZFS to load at all. If you need the others just let me know and I will post them.

I'm using Ubuntu 11.04 Server. 8GB of RAM and AMD Phenom 8450e

Sep 13 16:29:40 Soundwave kernel: [ 64.961048] zfs: freeing free segment (offset=9622259040256 size=2048)
Sep 13 16:29:40 Soundwave kernel: [ 64.961058] SPLError: 2990:0:(spl-err.c:48:vpanic()) SPL PANIC
Sep 13 16:29:40 Soundwave kernel: [ 64.961060] SPL: Showing stack for process 2990
Sep 13 16:29:40 Soundwave kernel: [ 64.961064] Pid: 2990, comm: z_wr_iss/2 Tainted: P 2.6.38-11-server #48-Ubuntu
Sep 13 16:29:40 Soundwave kernel: [ 64.961067] Call Trace:
Sep 13 16:29:40 Soundwave kernel: [ 64.961084] [] ? spl_debug_dumpstack+0x27/0x40 [spl]
Sep 13 16:29:40 Soundwave kernel: [ 64.961091] [] ? spl_debug_bug+0x81/0xe0 [spl]
Sep 13 16:29:40 Soundwave kernel: [ 64.961100] [] ? vpanic+0x65/0x80 [spl]
Sep 13 16:29:40 Soundwave kernel: [ 64.961107] [] ? populate_rootfs_wait+0x158/0x820
Sep 13 16:29:40 Soundwave kernel: [ 64.961111] [] ? __kmalloc+0xff/0x140
Sep 13 16:29:40 Soundwave kernel: [ 64.961118] [] ? kmem_alloc_debug+0xbb/0x130 [spl]
Sep 13 16:29:40 Soundwave kernel: [ 64.961122] [] ? default_spin_lock_flags+0x9/0x10
Sep 13 16:29:40 Soundwave kernel: [ 64.961128] [] ? vcmn_err+0x72/0x80 [spl]
Sep 13 16:29:40 Soundwave kernel: [ 64.961133] [] ? alloc_pages_current+0xa5/0x110
Sep 13 16:29:40 Soundwave kernel: [ 64.961136] [] ? new_slab+0x1c3/0x290
Sep 13 16:29:40 Soundwave kernel: [ 64.961139] [] ? __slab_alloc+0x1b2/0x390
Sep 13 16:29:40 Soundwave kernel: [ 64.961145] [] ? kmem_alloc_debug+0xeb/0x130 [spl]
Sep 13 16:29:40 Soundwave kernel: [ 64.961198] [] ? zfs_panic_recover+0x52/0x60 [zfs]
Sep 13 16:29:40 Soundwave kernel: [ 64.961224] [] ? space_map_remove+0x20c/0x340 [zfs]
Sep 13 16:29:40 Soundwave kernel: [ 64.961244] [] ? dmu_read+0x134/0x180 [zfs]
Sep 13 16:29:40 Soundwave kernel: [ 64.961271] [] ? space_map_load+0x187/0x320 [zfs]
Sep 13 16:29:40 Soundwave kernel: [ 64.961295] [] ? metaslab_activate+0xdb/0x160 [zfs]
Sep 13 16:29:40 Soundwave kernel: [ 64.961321] [] ? metaslab_alloc+0x546/0x930 [zfs]
Sep 13 16:29:40 Soundwave kernel: [ 64.961348] [] ? zio_dva_allocate+0x96/0x370 [zfs]
Sep 13 16:29:40 Soundwave kernel: [ 64.961372] [] ? zio_push_transform+0x51/0xb0 [zfs]
Sep 13 16:29:40 Soundwave kernel: [ 64.961398] [] ? zio_checksum_compute+0xd1/0x160 [zfs]
Sep 13 16:29:40 Soundwave kernel: [ 64.961421] [] ? zio_execute+0xb0/0x150 [zfs]
Sep 13 16:29:40 Soundwave kernel: [ 64.961428] [] ? taskq_thread+0x1c0/0x390 [spl]
Sep 13 16:29:40 Soundwave kernel: [ 64.961432] [] ? default_wake_function+0x0/0x20
Sep 13 16:29:40 Soundwave kernel: [ 64.961438] [] ? taskq_thread+0x0/0x390 [spl]
Sep 13 16:29:40 Soundwave kernel: [ 64.961443] [] ? kthread+0x96/0xa0
Sep 13 16:29:40 Soundwave kernel: [ 64.961447] [] ? kernel_thread_helper+0x4/0x10
Sep 13 16:29:40 Soundwave kernel: [ 64.961450] [] ? kthread+0x0/0xa0
Sep 13 16:29:40 Soundwave kernel: [ 64.961452] [] ? kernel_thread_helper+0x0/0x10
Sep 13 16:29:40 Soundwave kernel: [ 64.961507] SPL: Dumping log to /tmp/spl-log.1315956580.2990
Sep 13 16:29:50 Soundwave x-session-manager[2691]: WARNING: Could not launch application 'gnome-user-share.desktop': Unable to start application: Failed to execute child process "/usr/lib/gnome-user-share/gnome-user-share" (No such file or directory)
Sep 13 16:32:36 Soundwave kernel: [ 241.140095] INFO: task mount.zfs:2794 blocked for more than 120 seconds.
Sep 13 16:32:36 Soundwave kernel: [ 241.140102] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
Sep 13 16:32:36 Soundwave kernel: [ 241.140108] mount.zfs D 0000000000000000 0 2794 2792 0x00000000
Sep 13 16:32:36 Soundwave kernel: [ 241.140118] ffff88020f843b48 0000000000000086 ffff88020f843fd8 ffff88020f842000
Sep 13 16:32:36 Soundwave kernel: [ 241.140126] 0000000000013d00 ffff8802096d03b8 ffff88020f843fd8 0000000000013d00
Sep 13 16:32:36 Soundwave kernel: [ 241.140133] ffffffff81a0b020 ffff8802096d0000 000000020f843b58 ffff8801f526fa80
Sep 13 16:32:36 Soundwave kernel: [ 241.140139] Call Trace:
Sep 13 16:32:36 Soundwave kernel: [ 241.140168] [] cv_wait_common+0x77/0xd0 [spl]
Sep 13 16:32:36 Soundwave kernel: [ 241.140179] [] ? autoremove_wake_function+0x0/0x40
Sep 13 16:32:36 Soundwave kernel: [ 241.140190] [] ? __mutex_unlock_slowpath+0x4c/0x60
Sep 13 16:32:36 Soundwave kernel: [ 241.140205] [] __cv_wait+0x13/0x20 [spl]
Sep 13 16:32:36 Soundwave kernel: [ 241.140280] [] txg_wait_synced+0x7b/0xa0 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.140332] [] spa_load+0x10ba/0x1400 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.140395] [] ? txg_list_create+0x2f/0x60 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.140446] [] spa_load+0x69b/0x1400 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.140501] [] spa_load_best+0x4e/0x200 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.140557] [] spa_open_common+0x14f/0x350 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.140608] [] spa_open+0x13/0x20 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.140667] [] pool_status_check+0x40/0xa0 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.140716] [] zfsdev_ioctl+0x155/0x1b0 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.140727] [] do_vfs_ioctl+0x8f/0x320
Sep 13 16:32:36 Soundwave kernel: [ 241.140733] [] sys_ioctl+0x91/0xa0
Sep 13 16:32:36 Soundwave kernel: [ 241.140740] [] system_call_fastpath+0x16/0x1b
Sep 13 16:32:36 Soundwave kernel: [ 241.140748] INFO: task z_wr_iss/0:2988 blocked for more than 120 seconds.
Sep 13 16:32:36 Soundwave kernel: [ 241.140752] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
Sep 13 16:32:36 Soundwave kernel: [ 241.140756] z_wr_iss/0 D 0000000000000000 0 2988 2 0x00000000
Sep 13 16:32:36 Soundwave kernel: [ 241.140763] ffff8801e4d37b00 0000000000000046 ffff8801e4d37fd8 ffff8801e4d36000
Sep 13 16:32:36 Soundwave kernel: [ 241.140771] 0000000000013d00 ffff8801eb975f38 ffff8801e4d37fd8 0000000000013d00
Sep 13 16:32:36 Soundwave kernel: [ 241.140779] ffff8801eba9c4a0 ffff8801eb975b80 0000020003c54c00 ffff8801e454c000
Sep 13 16:32:36 Soundwave kernel: [ 241.140786] Call Trace:
Sep 13 16:32:36 Soundwave kernel: [ 241.140792] [] __mutex_lock_slowpath+0xf7/0x180
Sep 13 16:32:36 Soundwave kernel: [ 241.140798] [] mutex_lock+0x23/0x50
Sep 13 16:32:36 Soundwave kernel: [ 241.140850] [] metaslab_alloc+0x4d9/0x930 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.140902] [] zio_dva_allocate+0x96/0x370 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.140952] [] ? zio_push_transform+0x51/0xb0 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.141003] [] ? zio_checksum_compute+0xd1/0x160 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.141052] [] zio_ready+0x332/0x3e0 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.141111] [] zio_execute+0xb0/0x150 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.141122] [] ? default_spin_lock_flags+0x9/0x10
Sep 13 16:32:36 Soundwave kernel: [ 241.141136] [] taskq_thread+0x1c0/0x390 [spl]
Sep 13 16:32:36 Soundwave kernel: [ 241.141143] [] ? default_wake_function+0x0/0x20
Sep 13 16:32:36 Soundwave kernel: [ 241.141156] [] ? taskq_thread+0x0/0x390 [spl]
Sep 13 16:32:36 Soundwave kernel: [ 241.141165] [] kthread+0x96/0xa0
Sep 13 16:32:36 Soundwave kernel: [ 241.141171] [] kernel_thread_helper+0x4/0x10
Sep 13 16:32:36 Soundwave kernel: [ 241.141177] [] ? kthread+0x0/0xa0
Sep 13 16:32:36 Soundwave kernel: [ 241.141183] [] ? kernel_thread_helper+0x0/0x10
Sep 13 16:32:36 Soundwave kernel: [ 241.141188] INFO: task z_wr_iss/2:2990 blocked for more than 120 seconds.
Sep 13 16:32:36 Soundwave kernel: [ 241.141191] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
Sep 13 16:32:36 Soundwave kernel: [ 241.141195] z_wr_iss/2 D 0000000000000002 0 2990 2 0x00000000
Sep 13 16:32:36 Soundwave kernel: [ 241.141202] ffff8801e4d3b790 0000000000000046 ffff8801e4d3bfd8 ffff8801e4d3a000
Sep 13 16:32:36 Soundwave kernel: [ 241.141208] 0000000000013d00 ffff88020b02b178 ffff8801e4d3bfd8 0000000000013d00
Sep 13 16:32:36 Soundwave kernel: [ 241.141218] ffff88020fd2db80 ffff88020b02adc0 ffff8801e4d3b758 0000000000000000
Sep 13 16:32:36 Soundwave kernel: [ 241.141229] Call Trace:
Sep 13 16:32:36 Soundwave kernel: [ 241.141240] [] spl_debug_bug+0xbd/0xe0 [spl]
Sep 13 16:32:36 Soundwave kernel: [ 241.141262] [] vpanic+0x65/0x80 [spl]
Sep 13 16:32:36 Soundwave kernel: [ 241.141271] [] ? populate_rootfs_wait+0x158/0x820
Sep 13 16:32:36 Soundwave kernel: [ 241.141281] [] ? __kmalloc+0xff/0x140
Sep 13 16:32:36 Soundwave kernel: [ 241.141296] [] ? kmem_alloc_debug+0xbb/0x130 [spl]
Sep 13 16:32:36 Soundwave kernel: [ 241.141304] [] ? default_spin_lock_flags+0x9/0x10
Sep 13 16:32:36 Soundwave kernel: [ 241.141319] [] vcmn_err+0x72/0x80 [spl]
Sep 13 16:32:36 Soundwave kernel: [ 241.141329] [] ? alloc_pages_current+0xa5/0x110
Sep 13 16:32:36 Soundwave kernel: [ 241.141335] [] ? new_slab+0x1c3/0x290
Sep 13 16:32:36 Soundwave kernel: [ 241.141340] [] ? __slab_alloc+0x1b2/0x390
Sep 13 16:32:36 Soundwave kernel: [ 241.141352] [] ? kmem_alloc_debug+0xeb/0x130 [spl]
Sep 13 16:32:36 Soundwave kernel: [ 241.141407] [] zfs_panic_recover+0x52/0x60 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.141461] [] space_map_remove+0x20c/0x340 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.141504] [] ? dmu_read+0x134/0x180 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.141563] [] space_map_load+0x187/0x320 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.141612] [] metaslab_activate+0xdb/0x160 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.141661] [] metaslab_alloc+0x546/0x930 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.141711] [] zio_dva_allocate+0x96/0x370 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.141764] [] ? zio_push_transform+0x51/0xb0 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.141814] [] ? zio_checksum_compute+0xd1/0x160 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.141864] [] zio_execute+0xb0/0x150 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.141880] [] taskq_thread+0x1c0/0x390 [spl]
Sep 13 16:32:36 Soundwave kernel: [ 241.141886] [] ? default_wake_function+0x0/0x20
Sep 13 16:32:36 Soundwave kernel: [ 241.141902] [] ? taskq_thread+0x0/0x390 [spl]
Sep 13 16:32:36 Soundwave kernel: [ 241.141911] [] kthread+0x96/0xa0
Sep 13 16:32:36 Soundwave kernel: [ 241.141919] [] kernel_thread_helper+0x4/0x10
Sep 13 16:32:36 Soundwave kernel: [ 241.141925] [] ? kthread+0x0/0xa0
Sep 13 16:32:36 Soundwave kernel: [ 241.141932] [] ? kernel_thread_helper+0x0/0x10
Sep 13 16:32:36 Soundwave kernel: [ 241.141952] INFO: task txg_sync:3152 blocked for more than 120 seconds.
Sep 13 16:32:36 Soundwave kernel: [ 241.141956] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
Sep 13 16:32:36 Soundwave kernel: [ 241.141959] txg_sync D 0000000000000001 0 3152 2 0x00000000
Sep 13 16:32:36 Soundwave kernel: [ 241.141969] ffff8801d4a97bc0 0000000000000046 ffff8801d4a97fd8 ffff8801d4a96000
Sep 13 16:32:36 Soundwave kernel: [ 241.141975] 0000000000013d00 ffff8801e4f7b178 ffff8801d4a97fd8 0000000000013d00
Sep 13 16:32:36 Soundwave kernel: [ 241.141982] ffff88020ba75b80 ffff8801e4f7adc0 ffff8801f5c52200 ffffc90018198ea8
Sep 13 16:32:36 Soundwave kernel: [ 241.141988] Call Trace:
Sep 13 16:32:36 Soundwave kernel: [ 241.142003] [] cv_wait_common+0x77/0xd0 [spl]
Sep 13 16:32:36 Soundwave kernel: [ 241.142012] [] ? autoremove_wake_function+0x0/0x40
Sep 13 16:32:36 Soundwave kernel: [ 241.142026] [] __cv_wait+0x13/0x20 [spl]
Sep 13 16:32:36 Soundwave kernel: [ 241.142073] [] zio_wait+0xf3/0x1b0 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.142121] [] dsl_pool_sync+0x2d3/0x4a0 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.142172] [] spa_sync+0x3ab/0x9b0 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.142181] [] ? autoremove_wake_function+0x16/0x40
Sep 13 16:32:36 Soundwave kernel: [ 241.142190] [] ? __wake_up+0x53/0x70
Sep 13 16:32:36 Soundwave kernel: [ 241.142241] [] txg_sync_thread+0x241/0x3c0 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.142293] [] ? txg_sync_thread+0x0/0x3c0 [zfs]
Sep 13 16:32:36 Soundwave kernel: [ 241.142313] [] thread_generic_wrapper+0x78/0x90 [spl]
Sep 13 16:32:36 Soundwave kernel: [ 241.142328] [] ? thread_generic_wrapper+0x0/0x90 [spl]
Sep 13 16:32:36 Soundwave kernel: [ 241.142336] [] kthread+0x96/0xa0
Sep 13 16:32:36 Soundwave kernel: [ 241.142342] [] kernel_thread_helper+0x4/0x10
Sep 13 16:32:36 Soundwave kernel: [ 241.142348] [] ? kthread+0x0/0xa0
Sep 13 16:32:36 Soundwave kernel: [ 241.142353] [] ? kernel_thread_helper+0x0/0x10
Sep 13 16:32:59 Soundwave kernel: [ 264.600836] show_signal_msg: 21 callbacks suppressed
Sep 13 16:32:59 Soundwave kernel: [ 264.600842] apt-get[3612]: segfault at 7fad1665b000 ip 00007fad153e0cfb sp 00007fffc58b4eb0 error 4 in libapt-pkg.so.4.10.1[7fad15392000+10b000]
Sep 13 16:34:36 Soundwave kernel: [ 361.140084] INFO: task mount.zfs:2794 blocked for more than 120 seconds.
Sep 13 16:34:36 Soundwave kernel: [ 361.140091] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
Sep 13 16:34:36 Soundwave kernel: [ 361.140097] mount.zfs D 0000000000000000 0 2794 2792 0x00000000
Sep 13 16:34:36 Soundwave kernel: [ 361.140106] ffff88020f843b48 0000000000000086 ffff88020f843fd8 ffff88020f842000
Sep 13 16:34:36 Soundwave kernel: [ 361.140114] 0000000000013d00 ffff8802096d03b8 ffff88020f843fd8 0000000000013d00
Sep 13 16:34:36 Soundwave kernel: [ 361.140122] ffffffff81a0b020 ffff8802096d0000 000000020f843b58 ffff8801f526fa80
Sep 13 16:34:36 Soundwave kernel: [ 361.140128] Call Trace:
Sep 13 16:34:36 Soundwave kernel: [ 361.140159] [] cv_wait_common+0x77/0xd0 [spl]
Sep 13 16:34:36 Soundwave kernel: [ 361.140169] [] ? autoremove_wake_function+0x0/0x40
Sep 13 16:34:36 Soundwave kernel: [ 361.140180] [] ? __mutex_unlock_slowpath+0x4c/0x60
Sep 13 16:34:36 Soundwave kernel: [ 361.140195] [] __cv_wait+0x13/0x20 [spl]
Sep 13 16:34:36 Soundwave kernel: [ 361.140275] [] txg_wait_synced+0x7b/0xa0 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.140328] [] spa_load+0x10ba/0x1400 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.140390] [] ? txg_list_create+0x2f/0x60 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.140441] [] spa_load+0x69b/0x1400 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.140497] [] spa_load_best+0x4e/0x200 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.140555] [] spa_open_common+0x14f/0x350 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.140605] [] spa_open+0x13/0x20 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.140665] [] pool_status_check+0x40/0xa0 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.140718] [] zfsdev_ioctl+0x155/0x1b0 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.140730] [] do_vfs_ioctl+0x8f/0x320
Sep 13 16:34:36 Soundwave kernel: [ 361.140737] [] sys_ioctl+0x91/0xa0
Sep 13 16:34:36 Soundwave kernel: [ 361.140743] [] system_call_fastpath+0x16/0x1b
Sep 13 16:34:36 Soundwave kernel: [ 361.140751] INFO: task z_wr_iss/0:2988 blocked for more than 120 seconds.
Sep 13 16:34:36 Soundwave kernel: [ 361.140755] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
Sep 13 16:34:36 Soundwave kernel: [ 361.140759] z_wr_iss/0 D 0000000000000000 0 2988 2 0x00000000
Sep 13 16:34:36 Soundwave kernel: [ 361.140770] ffff8801e4d37b00 0000000000000046 ffff8801e4d37fd8 ffff8801e4d36000
Sep 13 16:34:36 Soundwave kernel: [ 361.140777] 0000000000013d00 ffff8801eb975f38 ffff8801e4d37fd8 0000000000013d00
Sep 13 16:34:36 Soundwave kernel: [ 361.140784] ffff8801eba9c4a0 ffff8801eb975b80 0000020003c54c00 ffff8801e454c000
Sep 13 16:34:36 Soundwave kernel: [ 361.140790] Call Trace:
Sep 13 16:34:36 Soundwave kernel: [ 361.140796] [] __mutex_lock_slowpath+0xf7/0x180
Sep 13 16:34:36 Soundwave kernel: [ 361.140802] [] mutex_lock+0x23/0x50
Sep 13 16:34:36 Soundwave kernel: [ 361.140855] [] metaslab_alloc+0x4d9/0x930 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.140910] [] zio_dva_allocate+0x96/0x370 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.140960] [] ? zio_push_transform+0x51/0xb0 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.141014] [] ? zio_checksum_compute+0xd1/0x160 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.141063] [] zio_ready+0x332/0x3e0 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.141121] [] zio_execute+0xb0/0x150 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.141132] [] ? default_spin_lock_flags+0x9/0x10
Sep 13 16:34:36 Soundwave kernel: [ 361.141148] [] taskq_thread+0x1c0/0x390 [spl]
Sep 13 16:34:36 Soundwave kernel: [ 361.141154] [] ? default_wake_function+0x0/0x20
Sep 13 16:34:36 Soundwave kernel: [ 361.141167] [] ? taskq_thread+0x0/0x390 [spl]
Sep 13 16:34:36 Soundwave kernel: [ 361.141176] [] kthread+0x96/0xa0
Sep 13 16:34:36 Soundwave kernel: [ 361.141182] [] kernel_thread_helper+0x4/0x10
Sep 13 16:34:36 Soundwave kernel: [ 361.141188] [] ? kthread+0x0/0xa0
Sep 13 16:34:36 Soundwave kernel: [ 361.141194] [] ? kernel_thread_helper+0x0/0x10
Sep 13 16:34:36 Soundwave kernel: [ 361.141199] INFO: task z_wr_iss/2:2990 blocked for more than 120 seconds.
Sep 13 16:34:36 Soundwave kernel: [ 361.141202] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
Sep 13 16:34:36 Soundwave kernel: [ 361.141206] z_wr_iss/2 D 0000000000000002 0 2990 2 0x00000000
Sep 13 16:34:36 Soundwave kernel: [ 361.141216] ffff8801e4d3b790 0000000000000046 ffff8801e4d3bfd8 ffff8801e4d3a000
Sep 13 16:34:36 Soundwave kernel: [ 361.141222] 0000000000013d00 ffff88020b02b178 ffff8801e4d3bfd8 0000000000013d00
Sep 13 16:34:36 Soundwave kernel: [ 361.141228] ffff88020fd2db80 ffff88020b02adc0 ffff8801e4d3b758 0000000000000000
Sep 13 16:34:36 Soundwave kernel: [ 361.141235] Call Trace:
Sep 13 16:34:36 Soundwave kernel: [ 361.141248] [] spl_debug_bug+0xbd/0xe0 [spl]
Sep 13 16:34:36 Soundwave kernel: [ 361.141268] [] vpanic+0x65/0x80 [spl]
Sep 13 16:34:36 Soundwave kernel: [ 361.141278] [] ? populate_rootfs_wait+0x158/0x820
Sep 13 16:34:36 Soundwave kernel: [ 361.141284] [] ? __kmalloc+0xff/0x140
Sep 13 16:34:36 Soundwave kernel: [ 361.141299] [] ? kmem_alloc_debug+0xbb/0x130 [spl]
Sep 13 16:34:36 Soundwave kernel: [ 361.141304] [] ? default_spin_lock_flags+0x9/0x10
Sep 13 16:34:36 Soundwave kernel: [ 361.141321] [] vcmn_err+0x72/0x80 [spl]
Sep 13 16:34:36 Soundwave kernel: [ 361.141332] [] ? alloc_pages_current+0xa5/0x110
Sep 13 16:34:36 Soundwave kernel: [ 361.141338] [] ? new_slab+0x1c3/0x290
Sep 13 16:34:36 Soundwave kernel: [ 361.141344] [] ? __slab_alloc+0x1b2/0x390
Sep 13 16:34:36 Soundwave kernel: [ 361.141356] [] ? kmem_alloc_debug+0xeb/0x130 [spl]
Sep 13 16:34:36 Soundwave kernel: [ 361.141410] [] zfs_panic_recover+0x52/0x60 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.141462] [] space_map_remove+0x20c/0x340 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.141505] [] ? dmu_read+0x134/0x180 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.141561] [] space_map_load+0x187/0x320 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.141611] [] metaslab_activate+0xdb/0x160 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.141660] [] metaslab_alloc+0x546/0x930 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.141707] [] zio_dva_allocate+0x96/0x370 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.141757] [] ? zio_push_transform+0x51/0xb0 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.141810] [] ? zio_checksum_compute+0xd1/0x160 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.141858] [] zio_execute+0xb0/0x150 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.141874] [] taskq_thread+0x1c0/0x390 [spl]
Sep 13 16:34:36 Soundwave kernel: [ 361.141879] [] ? default_wake_function+0x0/0x20
Sep 13 16:34:36 Soundwave kernel: [ 361.141892] [] ? taskq_thread+0x0/0x390 [spl]
Sep 13 16:34:36 Soundwave kernel: [ 361.141901] [] kthread+0x96/0xa0
Sep 13 16:34:36 Soundwave kernel: [ 361.141910] [] kernel_thread_helper+0x4/0x10
Sep 13 16:34:36 Soundwave kernel: [ 361.141915] [] ? kthread+0x0/0xa0
Sep 13 16:34:36 Soundwave kernel: [ 361.141921] [] ? kernel_thread_helper+0x0/0x10
Sep 13 16:34:36 Soundwave kernel: [ 361.141944] INFO: task txg_sync:3152 blocked for more than 120 seconds.
Sep 13 16:34:36 Soundwave kernel: [ 361.141947] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
Sep 13 16:34:36 Soundwave kernel: [ 361.141951] txg_sync D 0000000000000001 0 3152 2 0x00000000
Sep 13 16:34:36 Soundwave kernel: [ 361.141961] ffff8801d4a97bc0 0000000000000046 ffff8801d4a97fd8 ffff8801d4a96000
Sep 13 16:34:36 Soundwave kernel: [ 361.141967] 0000000000013d00 ffff8801e4f7b178 ffff8801d4a97fd8 0000000000013d00
Sep 13 16:34:36 Soundwave kernel: [ 361.141973] ffff88020ba75b80 ffff8801e4f7adc0 ffff8801f5c52200 ffffc90018198ea8
Sep 13 16:34:36 Soundwave kernel: [ 361.141979] Call Trace:
Sep 13 16:34:36 Soundwave kernel: [ 361.141993] [] cv_wait_common+0x77/0xd0 [spl]
Sep 13 16:34:36 Soundwave kernel: [ 361.142002] [] ? autoremove_wake_function+0x0/0x40
Sep 13 16:34:36 Soundwave kernel: [ 361.142016] [] __cv_wait+0x13/0x20 [spl]
Sep 13 16:34:36 Soundwave kernel: [ 361.142065] [] zio_wait+0xf3/0x1b0 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.142117] [] dsl_pool_sync+0x2d3/0x4a0 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.142168] [] spa_sync+0x3ab/0x9b0 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.142178] [] ? autoremove_wake_function+0x16/0x40
Sep 13 16:34:36 Soundwave kernel: [ 361.142186] [] ? __wake_up+0x53/0x70
Sep 13 16:34:36 Soundwave kernel: [ 361.142236] [] txg_sync_thread+0x241/0x3c0 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.142288] [] ? txg_sync_thread+0x0/0x3c0 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.142302] [] thread_generic_wrapper+0x78/0x90 [spl]
Sep 13 16:34:36 Soundwave kernel: [ 361.142314] [] ? thread_generic_wrapper+0x0/0x90 [spl]
Sep 13 16:34:36 Soundwave kernel: [ 361.142320] [] kthread+0x96/0xa0
Sep 13 16:34:36 Soundwave kernel: [ 361.142328] [] kernel_thread_helper+0x4/0x10
Sep 13 16:34:36 Soundwave kernel: [ 361.142334] [] ? kthread+0x0/0xa0
Sep 13 16:34:36 Soundwave kernel: [ 361.142341] [] ? kernel_thread_helper+0x0/0x10
Sep 13 16:34:36 Soundwave kernel: [ 361.142349] INFO: task zpool:3489 blocked for more than 120 seconds.
Sep 13 16:34:36 Soundwave kernel: [ 361.142352] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
Sep 13 16:34:36 Soundwave kernel: [ 361.142356] zpool D 0000000000000001 0 3489 3432 0x00000000
Sep 13 16:34:36 Soundwave kernel: [ 361.142366] ffff88020f87fda8 0000000000000086 ffff88020f87ffd8 ffff88020f87e000
Sep 13 16:34:36 Soundwave kernel: [ 361.142372] 0000000000013d00 ffff8801eb9883b8 ffff88020f87ffd8 0000000000013d00
Sep 13 16:34:36 Soundwave kernel: [ 361.142381] ffff88020fd28000 ffff8801eb988000 ffff88020f87fdb8 ffffffffa08255c0
Sep 13 16:34:36 Soundwave kernel: [ 361.142387] Call Trace:
Sep 13 16:34:36 Soundwave kernel: [ 361.142393] [] __mutex_lock_slowpath+0xf7/0x180
Sep 13 16:34:36 Soundwave kernel: [ 361.142401] [] mutex_lock+0x23/0x50
Sep 13 16:34:36 Soundwave kernel: [ 361.142452] [] spa_all_configs+0x52/0x120 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.142504] [] zfs_ioc_pool_configs+0x2e/0x60 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.142556] [] zfsdev_ioctl+0xf6/0x1b0 [zfs]
Sep 13 16:34:36 Soundwave kernel: [ 361.142566] [] do_vfs_ioctl+0x8f/0x320
Sep 13 16:34:36 Soundwave kernel: [ 361.142572] [] sys_ioctl+0x91/0xa0
Sep 13 16:34:36 Soundwave kernel: [ 361.142579] [] system_call_fastpath+0x16/0x1b
Sep 13 16:35:01 Soundwave CRON[4447]: (root) CMD (command -v debian-sa1 > /dev/null && debian-sa1 1 1)
Sep 13 16:36:36 Soundwave kernel: [ 481.140121] INFO: task mount.zfs:2794 blocked for more than 120 seconds.
Sep 13 16:36:36 Soundwave kernel: [ 481.140127] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
Sep 13 16:36:36 Soundwave kernel: [ 481.140133] mount.zfs D 0000000000000000 0 2794 2792 0x00000000
Sep 13 16:36:36 Soundwave kernel: [ 481.140143] ffff88020f843b48 0000000000000086 ffff88020f843fd8 ffff88020f842000
Sep 13 16:36:36 Soundwave kernel: [ 481.140150] 0000000000013d00 ffff8802096d03b8 ffff88020f843fd8 0000000000013d00
Sep 13 16:36:36 Soundwave kernel: [ 481.140160] ffffffff81a0b020 ffff8802096d0000 000000020f843b58 ffff8801f526fa80
Sep 13 16:36:36 Soundwave kernel: [ 481.140167] Call Trace:
Sep 13 16:36:36 Soundwave kernel: [ 481.140198] [] cv_wait_common+0x77/0xd0 [spl]
Sep 13 16:36:36 Soundwave kernel: [ 481.140208] [] ? autoremove_wake_function+0x0/0x40
Sep 13 16:36:36 Soundwave kernel: [ 481.140219] [] ? __mutex_unlock_slowpath+0x4c/0x60
Sep 13 16:36:36 Soundwave kernel: [ 481.140234] [] __cv_wait+0x13/0x20 [spl]
Sep 13 16:36:36 Soundwave kernel: [ 481.140308] [] txg_wait_synced+0x7b/0xa0 [zfs]
Sep 13 16:36:36 Soundwave kernel: [ 481.140365] [] spa_load+0x10ba/0x1400 [zfs]
Sep 13 16:36:36 Soundwave kernel: [ 481.140429] [] ? txg_list_create+0x2f/0x60 [zfs]
Sep 13 16:36:36 Soundwave kernel: [ 481.140479] [] spa_load+0x69b/0x1400 [zfs]
Sep 13 16:36:36 Soundwave kernel: [ 481.140534] [] spa_load_best+0x4e/0x200 [zfs]
Sep 13 16:36:36 Soundwave kernel: [ 481.140593] [] spa_open_common+0x14f/0x350 [zfs]
Sep 13 16:36:36 Soundwave kernel: [ 481.140646] [] spa_open+0x13/0x20 [zfs]
Sep 13 16:36:36 Soundwave kernel: [ 481.140705] [] pool_status_check+0x40/0xa0 [zfs]
Sep 13 16:36:36 Soundwave kernel: [ 481.140756] [] zfsdev_ioctl+0x155/0x1b0 [zfs]
Sep 13 16:36:36 Soundwave kernel: [ 481.140765] [] do_vfs_ioctl+0x8f/0x320
Sep 13 16:36:36 Soundwave kernel: [ 481.140771] [] sys_ioctl+0x91/0xa0
Sep 13 16:36:36 Soundwave kernel: [ 481.140778] [] system_call_fastpath+0x16/0x1b

Add taskq TQ_FRONT flag

The taskq API need to be extended to support the TQ_FRONT flag. This is going to be slightly more complicated than simply adding the work item to the head of the list. The current implementation relies on the fact that all work items are added to the end of the list thus maintaining an ordered list of taskq_ids for lowest to highest. Simply placing new items at the list head will break this ordering resulting in incorrect semantics for taskq_wait{_id}().

The right way to handle this I think will be to add another high priority list of just these items which is always consumed first. This preserves the previous ordering which is important because we never want to traverse the entire pending list which may contain 1000's of entries. The taskq_wait{_id}() functions and logic for getting the next work item will need to be updated to handle this.

Finally, a splat regression test must be carefully crafted to test this flag and ensure it is behaving properly. This will ensure we got it right and we will notice a regression.

support for recent stable kernels needed.

Spl rely on ctl_name in the ctl_table structure in include/linux/sysctl.h which is eliminated starting from 2.6.33 stable (commit 86926d0096279b9739ceeff40f68d3c33b9119a9).
It does not check if linux kernel has fix for O_DSYNC flag, which was introduced by commit 6b2f3d1f769be5779b479c37800229d9a4809fc3.
On Fedora 13, with kernel 2.6.33.3-85.fc13 after fixing these 2 problems I run into next one:
{{{
$ make rpm
...
CC [M] /tmp/spl-build-seriv-jx6WvnKt/BUILD/spl-0.4.9/module/splat/splat-vnode.o
/tmp/spl-build-seriv-jx6WvnKt/BUILD/spl-0.4.9/module/splat/splat-vnode.c: In function 'fd_uninstall':
/tmp/spl-build-seriv-jx6WvnKt/BUILD/spl-0.4.9/module/splat/splat-vnode.c:427: error: 'struct files_struct' has no member named 'max_fds'
/tmp/spl-build-seriv-jx6WvnKt/BUILD/spl-0.4.9/module/splat/splat-vnode.c:430: error: 'struct files_struct' has no member named 'fd'
/tmp/spl-build-seriv-jx6WvnKt/BUILD/spl-0.4.9/module/splat/splat-vnode.c:434: error: 'struct files_struct' has no member named 'fd'
/tmp/spl-build-seriv-jx6WvnKt/BUILD/spl-0.4.9/module/splat/splat-vnode.c:435: error: 'struct files_struct' has no member named 'close_on_exec'
...
}}}
I don't know how to fix it.

System hang

I have been experiencing frequent total system hangs whilst using 0.6.0 RCs. Below is all I can find related to it in the kernel logs:
Is there somewhere else I should be looking too?

May 5 19:03:21 san kernel: [ 381.857685] SPL: Showing stack for process 3044
May 5 19:03:21 san kernel: [ 381.857696] Pid: 3044, comm: zpool Tainted: P 2.6.38-8-generic #42-Ubuntu
May 5 19:03:21 san kernel: [ 381.857702] Call Trace:
May 5 19:03:21 san kernel: [ 381.857730] [] ? spl_debug_dumpstack+0x27/0x40 [spl]
May 5 19:03:21 san kernel: [ 381.857747] [] ? kmem_alloc_debug+0x11d/0x130 [spl]
May 5 19:03:21 san kernel: [ 381.857857] [] ? zfs_ioc_pool_get_history+0xaf/0x120 [zfs]
May 5 19:03:21 san kernel: [ 381.857871] [] ? pool_namecheck+0x5e/0x160 [zcommon]
May 5 19:03:21 san kernel: [ 381.857932] [] ? zfsdev_ioctl+0xe8/0x1b0 [zfs]
May 5 19:03:21 san kernel: [ 381.857943] [] ? do_vfs_ioctl+0x8f/0x360
May 5 19:03:21 san kernel: [ 381.857952] [] ? vfs_write+0x123/0x180
May 5 19:03:21 san kernel: [ 381.857959] [] ? sys_ioctl+0x91/0xa0
May 5 19:03:21 san kernel: [ 381.857967] [] ? system_call_fastpath+0x16/0x1b

Debian with 2.6.32-bpo : Unknown symbol in module, or unknown parameter

compaq:~/spl-0.4.9# uname -a
Linux compaq 2.6.32-bpo.4-686 #1 SMP Mon Apr 12 16:20:13 UTC 2010 i686 GNU/Linux

Here are the steps to "reproduce" the error :
1- ./configure --with-linux=/usr/src/linux-headers-2.6.32-bpo.4-686/ : Ok, no problem
2- make : Ok, no problem
3- make install : Ok, no problem
4- modprobe splat : FATAL: Could not load /lib/modules/2.6.32-bpo.4-686/modules.dep: No such file or directory
5- depmod -a : Ok, no problem
6- modprobe splat :
WARNING: Error inserting spl (/lib/modules/2.6.32-bpo.4-686/addon/spl/spl/spl.ko): Unknown symbol in module, or unknown parameter (see dmesg)
FATAL: Error inserting splat (/lib/modules/2.6.32-bpo.4-686/addon/spl/splat/splat.ko): Unknown symbol in module, or unknown parameter (see dmesg)

Here is the dmesg : 
[ 1599.233791] spl: Unknown symbol first_online_pgdat
[ 1599.234545] spl: Unknown symbol next_zone
[ 1599.236933] splat: Unknown symbol __taskq_destroy
[ 1599.237080] splat: Unknown symbol spl_cleanup
[ 1599.237286] splat: Unknown symbol vn_openat
[ 1599.237426] splat: Unknown symbol __cv_destroy
[ 1599.237563] splat: Unknown symbol p0
[ 1599.237896] splat: Unknown symbol __thread_create
[ 1599.238030] splat: Unknown symbol kmem_alloc_debug
[ 1599.238172] splat: Unknown symbol spl_kmem_cache_reap_now
[ 1599.238391] splat: Unknown symbol groupmember
[ 1599.238525] splat: Unknown symbol kobj_open_file
[ 1599.238820] splat: Unknown symbol ddi_strtoll
[ 1599.238956] splat: Unknown symbol ddi_strtoull
[ 1599.239123] splat: Unknown symbol ddi_strtol
[ 1599.239282] splat: Unknown symbol __thread_exit
[ 1599.239424] splat: Unknown symbol spl_setup
[ 1599.239557] splat: Unknown symbol vn_open
[ 1599.239715] splat: Unknown symbol __cv_init
[ 1599.239848] splat: Unknown symbol vn_releasef
[ 1599.240049] splat: Unknown symbol spl_kmem_cache_alloc
[ 1599.240356] splat: Unknown symbol __taskq_wait_id
[ 1599.240566] splat: Unknown symbol kobj_read_file
[ 1599.240782] splat: Unknown symbol spl_kmem_cache_create
[ 1599.241118] splat: Unknown symbol crfree
[ 1599.241336] splat: Unknown symbol __cv_wait
[ 1599.241547] splat: Unknown symbol vn_remove
[ 1599.241792] splat: Unknown symbol __taskq_create
[ 1599.242042] splat: Unknown symbol spl_kmem_availrmem
[ 1599.242252] splat: Unknown symbol __cv_broadcast
[ 1599.242394] splat: Unknown symbol crgetgid
[ 1599.242553] splat: Unknown symbol crgetsgid
[ 1599.242810] splat: Unknown symbol spl_debug_bug
[ 1599.242954] splat: Unknown symbol system_taskq
[ 1599.243098] splat: Unknown symbol vmem_free_debug
[ 1599.243279] splat: Unknown symbol __cv_timedwait
[ 1599.243499] splat: Unknown symbol __taskq_wait
[ 1599.243635] splat: Unknown symbol crgetrgid
[ 1599.243817] splat: Unknown symbol __cv_signal
[ 1599.243950] splat: Unknown symbol vn_getf
[ 1599.244177] splat: Unknown symbol vmem_size
[ 1599.244391] splat: Unknown symbol spl_kmem_cache_destroy
[ 1599.244622] splat: Unknown symbol crgetuid
[ 1599.244835] splat: Unknown symbol __gethrtime
[ 1599.245163] splat: Unknown symbol ddi_strtoul
[ 1599.245375] splat: Unknown symbol spl_kmem_cache_free
[ 1599.245580] splat: Unknown symbol vmem_alloc_debug
[ 1599.245845] splat: Unknown symbol crgetsuid
[ 1599.246106] splat: Unknown symbol vn_rdwr
[ 1599.246290] splat: Unknown symbol __taskq_dispatch
[ 1599.246421] splat: Unknown symbol crgetgroups
[ 1599.246567] splat: Unknown symbol vn_rename
[ 1599.246846] splat: Unknown symbol kobj_get_filesize
[ 1599.246977] splat: Unknown symbol crgetngroups
[ 1599.247153] splat: Unknown symbol kobj_close_file
[ 1599.247294] splat: Unknown symbol rootdir
[ 1599.247423] splat: Unknown symbol kmem_free_debug
[ 1599.247618] splat: Unknown symbol vn_getattr
[ 1599.247758] splat: Unknown symbol crgetruid
[ 1599.247906] splat: Unknown symbol vn_close
[ 1599.248081] splat: Unknown symbol crhold
[ 1599.248580] splat: Unknown symbol vn_fsync

It's a Debian 5.0 "Lenny", with all the tools needed for compilation.

Thank you.

XDR Regression Tests

The XDR implementation currently does not have any regression tests as part of the SPLAT test framework. While I'm not aware of any issues with the XDR code we do need to add some regression tests to make sure nothing gets accidentally broken.

Taskq locking optimization

Recent oprofile results suggest that the tq->tq_lock can be highly contended on 16-core when your attempting perform a large number of small work items. This results in a significant impact to taskq throughput at lots of wasted cpu cycles, 19% according to oprofile. Additionally, this lock has to disable interrupts so there may be wide spread performance implications. This appears to be much less of an issue on smaller SMP systems.

To address this issue we need to look in to refactoring the taskq code to minimize the length of time this lock is held. Currently this single lock protects everything is the taskq structure all the values, flags, list heads, and wait queues. This was done to keep the implementation simple but we could benefit from finer grained locking and clever use of atomic types.

Fundamentally, the only the pending and priority lists need to be protected by a spin_lock_irqsave which disables interrupts. This is done to ensure that while one of the taskq threads is dequeuing a request with the lock held, we never service an interrupt which dispatched a new item to the same taskq. This would lead to a deadlock. If we can minimize what need to be locked in taskq_dispatch() say by making it atomic, or using per-cpu data structures, we can then minimize the need to use spin_lock_irqsave().

In fact as of 2.6.36 we can take advantage of some new kernel infrastructure. It's in this release that concurrency managed work queues (cmwq) first appear and they perform a very similar function to taskq. So much so that it appears we should be able to layer the taskq API on top of cmwqs. This has a lot of advantages including keeping the kernel thread count to a minimum. The previous workqueues were not used for the taskq's because the API was for to limited, incidentally the kernel developers decided the same thing which is why we now have cmwq's.

Anyway, that's great for folks running bleeding edge kernels but we may still want to look in to optimizing the existing taskq implementation. This support is so new it likely won't be appearing in things like RHEL6 which is what we'll likely be using.

ASSERTION(sks->sks_magic == SKS_MAGIC) failed

SPLError: 52:0:(spl-kmem.c:1009:spl_slab_free()) ASSERTION(sks->sks_magic ==SKS_MAGIC) failed
SPLError: 52:0:(spl-kmem.c:1009:spl_slab_free()) SPL PANIC
SPL: Showing stack for process 52
Pid: 52, comm: events/1 Tainted: P           ----------------  2.6.32-14chaos #1
Call Trace:
 [] spl_debug_dumpstack+0x27/0x40 [spl]
 [] spl_debug_bug+0x81/0xd0 [spl]
 [] spl_slab_reclaim+0x59f/0x5f0 [spl]
 [] ? spl_cache_age+0x0/0xc0 [spl]
 [] spl_cache_age+0x38/0xc0 [spl]
 [] worker_thread+0x170/0x2a0
 [] ? autoremove_wake_function+0x0/0x40
 [] ? worker_thread+0x0/0x2a0
 [] kthread+0x96/0xa0
 [] child_rip+0xa/0x20
 [] ? kthread+0x0/0xa0
 [] ? child_rip+0x0/0x20
SPL: Dumping log to /tmp/spl-log.1297451700.52

Got this while poking around in a zfs filesystem created using the zpl branch. Here was the specific sequence of commands leading up to it.

# zeno1 /var/dumps/ned/zfs > ./cmd/zfs/zfs  mount lustre-zeno1/fish
# zeno1 /var/dumps/ned/zfs > cd /mnt
# zeno1 /mnt > ls -l
total 54136109
drwx------ 2 root root           2 Feb 11 10:48 asdf
lrwxrwxrwx 1 root root           3 Feb 11 09:21 bar -> 
lrwxrwxrwx 1 root root           4 Feb 11 10:48 f -> 
-rw------- 1 root root           2 Feb 11 09:20 foo
lrwxrwxrwx 1 root root           1 Feb 11 10:49 g -> 
-rw------- 1 root root  2949586944 Feb 10 13:29 random
-rw------- 1 root root   116256768 Feb 10 13:30 random2
-rw------- 1 root root 44683722752 Feb 10 13:51 zero
-rw------- 1 root root  7527590912 Feb 10 13:51 zero2
# zeno1 /mnt > rm *
rm: cannot remove `asdf': Is a directory
# zeno1 /mnt > ls
asdf
# zeno1 /mnt > ls -l
total 3
drwx------ 2 root root 2 Feb 11 10:48 asdf
# zeno1 /mnt > rm -rf asdf
# zeno1 /mnt > ls -l
total 0
# zeno1 /mnt > touch foo
# zeno1 /mnt > ln -s foo bar
# zeno1 /mnt > cd bar
# zeno1 /mnt/bar > ls -l
Message from syslogd@zeno1 at Feb 11 11:15:00 ...
 kernel:SPLError: 52:0:(spl-kmem.c:1009:spl_slab_free()) ASSERTION(sks->sks_magic == SKS_MAGIC) failed

Message from syslogd@zeno1 at Feb 11 11:15:00 ...
 kernel:SPLError: 52:0:(spl-kmem.c:1009:spl_slab_free()) SPL PANIC

total 1
lrwxrwxrwx 1 root root 3 Feb 11 11:14 bar -> 
-rw------- 1 root root 0 Feb 11 11:14 foo

Disabled rw_tryupgrade() for newer kernels

VERIFY(rc = rw_tryenter_locked(SEM(&dn->dn_struct_rwlock))) failed
SPLError: 24204:0:(dnode.c:923:dnode_new_blkid()) SBUG

For kernels using the CONFIG_RWSEM_GENERIC_SPINLOCK implementation everything is fine. But if your kernel is building with the arch specific rwsems then rw_tryupgrade() has been disabled until it can be implemented correctly. In particular, the x86 implementation now leverages atomic primitives for serialization rather than spinlocks. So to get this working again it will need to be implemented as a cmpxchg for x86 and likely something similar for other arches we are interested in. For now it's safest to simply disable it.

SPL module does not build on rt patchset

There is a great patchset around for the kernel, called the "real-time" patchset.

Unfortunately, the SPL module does not seem compatible with this patchset.

I'm getting the following error when doing a "make deb" on 3.0.0-1-rt-amd64:

make -C /usr/src/linux-headers-3.0.0-1-rt-amd64 SUBDIRS=pwd O=/usr/src/linux-headers-3.0.0-1-rt-amd64 modules
make[5]: Entering directory /usr/src/linux-headers-3.0.0-1-rt-amd64' CC [M] /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/module/spl/../../module/spl/spl-debug.o CC [M] /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/module/spl/../../module/spl/spl-proc.o CC [M] /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/module/spl/../../module/spl/spl-kmem.o CC [M] /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/module/spl/../../module/spl/spl-thread.o CC [M] /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/module/spl/../../module/spl/spl-taskq.o CC [M] /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/module/spl/../../module/spl/spl-rwlock.o In file included from /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/module/spl/../../module/spl/spl-rwlock.c:27:0: /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/include/sys/rwlock.h: In function 'spl_rw_set_owner': /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/include/sys/rwlock.h:55:9: error: 'struct rw_semaphore' has no member named 'wait_lock' /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/include/sys/rwlock.h:57:9: error: 'struct rw_semaphore' has no member named 'wait_lock' /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/include/sys/rwlock.h: In function 'spl_rw_clear_owner': /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/include/sys/rwlock.h:65:9: error: 'struct rw_semaphore' has no member named 'wait_lock' /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/include/sys/rwlock.h:67:9: error: 'struct rw_semaphore' has no member named 'wait_lock' /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/include/sys/rwlock.h: In function 'rw_owner': /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/include/sys/rwlock.h:76:9: error: 'struct rw_semaphore' has no member named 'wait_lock' /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/include/sys/rwlock.h:78:9: error: 'struct rw_semaphore' has no member named 'wait_lock' /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/include/sys/rwlock.h: In function 'RW_READ_HELD': /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/include/sys/rwlock.h:86:10: error: 'struct rw_semaphore' has no member named 'wait_lock' /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/include/sys/rwlock.h:86:10: error: 'struct rw_semaphore' has no member named 'wait_lock' /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/include/sys/rwlock.h: In function 'RW_WRITE_HELD': /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/include/sys/rwlock.h:93:10: error: 'struct rw_semaphore' has no member named 'wait_lock' /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/include/sys/rwlock.h:93:10: error: 'struct rw_semaphore' has no member named 'wait_lock' /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/include/sys/rwlock.h: In function 'RW_LOCK_HELD': /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/include/sys/rwlock.h:100:9: error: 'struct rw_semaphore' has no member named 'wait_lock' /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/include/sys/rwlock.h:100:9: error: 'struct rw_semaphore' has no member named 'wait_lock' /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/module/spl/../../module/spl/spl-rwlock.c: In function '__rwsem_wake_one_writer_locked': /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/module/spl/../../module/spl/spl-rwlock.c:56:12: error: 'struct rw_semaphore' has no member named 'activity' /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/module/spl/../../module/spl/spl-rwlock.c:58:18: error: 'struct rw_semaphore' has no member named 'wait_list' /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/module/spl/../../module/spl/spl-rwlock.c: In function '__up_read_locked': /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/module/spl/../../module/spl/spl-rwlock.c:73:18: error: 'struct rw_semaphore' has no member named 'activity' /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/module/spl/../../module/spl/spl-rwlock.c:73:53: error: 'struct rw_semaphore' has no member named 'wait_list' /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/module/spl/../../module/spl/spl-rwlock.c: In function '__down_write_trylock_locked': /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/module/spl/../../module/spl/spl-rwlock.c:84:16: error: 'struct rw_semaphore' has no member named 'activity' /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/module/spl/../../module/spl/spl-rwlock.c:84:50: error: 'struct rw_semaphore' has no member named 'wait_list' /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/module/spl/../../module/spl/spl-rwlock.c:85:20: error: 'struct rw_semaphore' has no member named 'activity' make[9]: *** [/tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/module/spl/../../module/spl/spl-rwlock.o] Error 1 make[8]: *** [/tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/module/spl] Error 2 make[7]: *** [_module_/tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/module] Error 2 make[6]: *** [sub-make] Error 2 make[5]: *** [all] Error 2 make[5]: Leaving directory/usr/src/linux-headers-3.0.0-1-rt-amd64'
make[4]: *** [modules] Error 2
make[4]: Leaving directory /tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0/module' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory/tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/tmp/spl-build-root-E4TfT7OM/BUILD/spl-0.6.0'
error: Bad exit status from /tmp/spl-build-root-E4TfT7OM/TMP/rpm-tmp.VaFi4t (%build)

RPM build errors:
Bad exit status from /tmp/spl-build-root-E4TfT7OM/TMP/rpm-tmp.VaFi4t (%build)
make[1]: *** [rpm-common] Error 1
make[1]: Leaving directory `/root/spl-0.6.0-rc5'
make: *** [rpm-modules] Error 2

Kernel oops with splat on 2.6.35-rc3

It seems that splat may overdraw vmap/vmalloc and have an unchecked NULL reference:

[   48.505423] SPL: Loaded Solaris Porting Layer v0.5.0
[   48.521175] SPLAT: Loaded Solaris Porting LAyer Tests v0.5.0
[  557.027296] vmap allocation for size 4198400 failed: use vmalloc= to increase size.
[  557.054972] BUG: unable to handle kernel NULL pointer dereference at (null)
[  557.054979] IP: [] splat_kmem_test4+0x7f/0x1d0 [splat]
[  557.054985] *pdpt = 000000002e729001 *pde = 0000000000000000 
[  557.054989] Oops: 0000 [#1] SMP 
[  557.054991] last sysfs file: /sys/devices/pci0000:00/0000:00:1e.0/0000:05:04.0/local_cpus
[  557.054994] Modules linked in: splat spl crc32c binfmt_misc ppdev nfsd lockd nfs_acl auth_rpcgss sunrpc exportfs ipt_MASQUERADE iptable_nat nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 xt_state nf_conntrack ipt_REJECT xt_tcpudp iptable_filter ip_tables x_tables kvm_intel kvm snd_hda_codec_analog autofs4 snd_hda_intel snd_hda_codec snd_hwdep snd_pcm_oss snd_mixer_oss snd_pcm ib_iser rdma_cm ib_cm iw_cm snd_seq_dummy snd_seq_oss ib_sa snd_seq_midi ib_mad snd_rawmidi ib_core ib_addr snd_seq_midi_event snd_seq snd_timer iscsi_tcp libiscsi_tcp fbcon tileblit font bitblit softcursor bridge snd_seq_device stp vga16fb libiscsi vgastate scsi_transport_iscsi snd nvidia(P) usblp asus_atk0110 lp usbhid soundcore ohci1394 snd_page_alloc parport intel_agp agpgart hid sky2 ieee1394 ahci pata_jmicron skge libahci
[  557.055044] 
[  557.055047] Pid: 4984, comm: splat Tainted: P            2.6.35-rc3splice+ #5 P5B-Deluxe/System Product Name
[  557.055049] EIP: 0060:[] EFLAGS: 00010246 CPU: 3
[  557.055052] EIP is at splat_kmem_test4+0x7f/0x1d0 [splat]
[  557.055054] EAX: 00000000 EBX: 00000000 ECX: edc87260 EDX: 00000009
[  557.055055] ESI: 00000000 EDI: 00400000 EBP: edcf9e98 ESP: edcf9e30
[  557.055057]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
[  557.055059] Process splat (pid: 4984, ti=edcf8000 task=ed67e580 task.ti=edcf8000)
[  557.055061] Stack:
[  557.055062]  000000cd f87c1b48 00000014 f87c5885 00200000 0000000a 0000000a edcf9e70
[  557.055067] <0> 00000000 00000009 00400000 ec41fb00 00000009 ff03c000 fcd82000 fd184000
[  557.055072] <0> fd586000 fd988000 fdd8a000 fe18c000 fe58e000 fe990000 00000000 ec41fb00
[  557.055077] Call Trace:
[  557.055082]  [] ? splat_ioctl+0x3e9/0x640 [splat]
[  557.055087]  [] ? _raw_spin_lock_irqsave+0x2f/0x50
[  557.055091]  [] ? remove_wait_queue+0x41/0x50
[  557.055093]  [] ? _lock_kernel+0x3f/0x8a
[  557.055097]  [] ? xen_flush_tlb_others+0x6/0xe0
[  557.055099]  [] ? vfs_ioctl+0x8c/0xb0
[  557.055101]  [] ? do_vfs_ioctl+0x72/0x590
[  557.055105]  [] ? tty_ldisc_deref+0xd/0x10
[  557.055107]  [] ? tty_write+0x1b8/0x210
[  557.055109]  [] ? n_tty_write+0x0/0x3d0
[  557.055113]  [] ? vfs_write+0x12f/0x1a0
[  557.055115]  [] ? tty_write+0x0/0x210
[  557.055117]  [] ? sys_ioctl+0x67/0x80
[  557.055120]  [] ? sysenter_do_call+0x12/0x28
[  557.055123]  [] ? xen_flush_tlb_others+0x6/0xe0
[  557.055124] Code: 75 bc 31 c0 c7 45 c8 00 00 00 00 c7 45 b8 00 00 00 00 66 90 8b 55 c8 31 db 8b 74 95 cc eb 0c 90 8d 74 26 00 83 c3 01 39 fb 7d 41 <80> 3c 1e 00 74 f3 8b 45 c4 8b 50 70 89 d0 89 55 b4 e8 7b 29 e1 
[  557.055153] EIP: [] splat_kmem_test4+0x7f/0x1d0 [splat] SS:ESP 0068:edcf9e30
[  557.055157] CR2: 0000000000000000
[  557.055160] ---[ end trace bb1ca29a979e93fb ]---

splat -a resulted in taskq:front fail

Following: http://zfsonlinux.org/spl-regression-suite.html
splat -a resulted in one fail:
taskq:front Fail Invalid or incomplete multibyte or wide character

running with splat -av, everything passed... Re-ran splat -a, everything passed.
ryan@lap:/usr/src/spl-0.6.0-rc1$ sudo splat -a
------------------------------ Running SPLAT Tests ------------------------------
kmem:kmem_alloc Pass
kmem:kmem_zalloc Pass
kmem:vmem_alloc Pass
kmem:vmem_zalloc Pass
kmem:slab_small Pass
kmem:slab_large Pass
kmem:slab_align Pass
kmem:slab_reap Pass
kmem:slab_age Pass
kmem:slab_lock Pass
kmem:slab_overcommit Pass
kmem:vmem_size Pass
taskq:single Pass
taskq:multiple Pass
taskq:system Pass
taskq:wait Pass
taskq:order Pass
taskq:front Fail Invalid or incomplete multibyte or wide character
krng:freq Pass
mutex:tryenter Pass
mutex:race Pass
mutex:owned Pass
mutex:owner Pass
condvar:signal1 Pass
condvar:broadcast1 Pass
condvar:signal2 Pass
condvar:broadcast2 Pass
condvar:timeout Pass
thread:create Pass
thread:exit Pass
thread:tsd Pass
rwlock:N-rd/1-wr Pass
rwlock:0-rd/N-wr Pass
rwlock:held Pass
rwlock:tryenter Pass
rwlock:rw_downgrade Pass
rwlock:rw_tryupgrade Pass
time:time1 Pass
time:time2 Pass
vnode:vn_open Pass
vnode:vn_openat Pass
vnode:vn_rdwr Pass
vnode:vn_rename Pass
vnode:vn_getattr Pass
vnode:vn_sync Pass
vnode:vn_getf Pass
kobj:open Pass
kobj:size/read Pass
atomic:64-bit Pass
list:create/destroy Pass
list:ins/rm head Pass
list:ins/rm tail Pass
list:insert_after Pass
list:insert_before Pass
list:remove Pass
list:active Pass
generic:ddi_strtoul Pass
generic:ddi_strtol Pass
generic:ddi_strtoull Pass
generic:ddi_strtoll Pass
generic:udivdi3 Pass
generic:divdi3 Pass
cred:cred Pass
cred:kcred Pass
cred:groupmember Pass
ryan@lap:/usr/src/spl-0.6.0-rc1$ sudo splat -av
SPL v0.6.0
------------------------------ Running SPLAT Tests ------------------------------
kmem:kmem_alloc Pass

      kmem_alloc: 4096 byte allocations, 10/10 successful
      kmem_alloc: 8192 byte allocations, 10/10 successful
      kmem_alloc: 16384 byte allocations, 10/10 successful
      kmem_alloc: 32768 byte allocations, 10/10 successful
      kmem_alloc: 65536 byte allocations, 10/10 successful
      kmem_alloc: 131072 byte allocations, 10/10 successful

            kmem:kmem_zalloc          Pass  

     kmem_zalloc: 4096 byte allocations, 10/10 successful
     kmem_zalloc: 8192 byte allocations, 10/10 successful
     kmem_zalloc: 16384 byte allocations, 10/10 successful
     kmem_zalloc: 32768 byte allocations, 10/10 successful
     kmem_zalloc: 65536 byte allocations, 10/10 successful
     kmem_zalloc: 131072 byte allocations, 10/10 successful

            kmem:vmem_alloc           Pass  

      vmem_alloc: 4096 byte allocations, 10/10 successful
      vmem_alloc: 8192 byte allocations, 10/10 successful
      vmem_alloc: 16384 byte allocations, 10/10 successful
      vmem_alloc: 32768 byte allocations, 10/10 successful
      vmem_alloc: 65536 byte allocations, 10/10 successful
      vmem_alloc: 131072 byte allocations, 10/10 successful
      vmem_alloc: 262144 byte allocations, 10/10 successful
      vmem_alloc: 524288 byte allocations, 10/10 successful
      vmem_alloc: 1048576 byte allocations, 10/10 successful
      vmem_alloc: 2097152 byte allocations, 10/10 successful
      vmem_alloc: 4194304 byte allocations, 10/10 successful

            kmem:vmem_zalloc          Pass  

     vmem_zalloc: 4096 byte allocations, 10/10 successful
     vmem_zalloc: 8192 byte allocations, 10/10 successful
     vmem_zalloc: 16384 byte allocations, 10/10 successful
     vmem_zalloc: 32768 byte allocations, 10/10 successful
     vmem_zalloc: 65536 byte allocations, 10/10 successful
     vmem_zalloc: 131072 byte allocations, 10/10 successful
     vmem_zalloc: 262144 byte allocations, 10/10 successful
     vmem_zalloc: 524288 byte allocations, 10/10 successful
     vmem_zalloc: 1048576 byte allocations, 10/10 successful
     vmem_zalloc: 2097152 byte allocations, 10/10 successful
     vmem_zalloc: 4194304 byte allocations, 10/10 successful

            kmem:slab_small           Pass  

      slab_small: Successfully ran ctors/dtors for 144 elements in 'kmem_test'
      slab_small: Successfully ran ctors/dtors for 144 elements in 'kmem_test'
      slab_small: Successfully ran ctors/dtors for 144 elements in 'kmem_test'

            kmem:slab_large           Pass  

      slab_large: Successfully ran ctors/dtors for 63 elements in 'kmem_test'
      slab_large: Successfully ran ctors/dtors for 45 elements in 'kmem_test'
      slab_large: Successfully ran ctors/dtors for 31 elements in 'kmem_test'

            kmem:slab_align           Pass  

      slab_align: Successfully ran ctors/dtors for 160 elements in 'kmem_test'
      slab_align: Successfully ran ctors/dtors for 156 elements in 'kmem_test'
      slab_align: Successfully ran ctors/dtors for 144 elements in 'kmem_test'
      slab_align: Successfully ran ctors/dtors for 189 elements in 'kmem_test'
      slab_align: Successfully ran ctors/dtors for 168 elements in 'kmem_test'
      slab_align: Successfully ran ctors/dtors for 189 elements in 'kmem_test'
      slab_align: Successfully ran ctors/dtors for 189 elements in 'kmem_test'
      slab_align: Successfully ran ctors/dtors for 126 elements in 'kmem_test'
      slab_align: Successfully ran ctors/dtors for 126 elements in 'kmem_test'
      slab_align: Successfully ran ctors/dtors for 63 elements in 'kmem_test'

            kmem:slab_reap            Pass  

       slab_reap: kmem_test cache objects 1045, slabs 19/19 objs 1024/1045 mags 204/256 0/256 
       slab_reap: kmem_test cache objects 1045, slabs 19/19 objs 1024/1045 mags 204/256 204/256 
       slab_reap: kmem_test cache objects 1045, slabs 17/19 objs 768/1045 mags 204/256 152/256 
       slab_reap: kmem_test cache objects 1045, slabs 15/19 objs 640/1045 mags 204/256 228/256 
       slab_reap: kmem_test cache objects 1045, slabs 10/19 objs 384/1045 mags 204/256 176/256 
       slab_reap: kmem_test cache objects 1045, slabs 10/19 objs 384/1045 mags 204/256 180/256 
       slab_reap: kmem_test cache objects 1045, slabs 10/19 objs 384/1045 mags 204/256 180/256 
       slab_reap: kmem_test cache objects 1045, slabs 10/19 objs 384/1045 mags 204/256 180/256 
       slab_reap: kmem_test cache objects 1045, slabs 10/19 objs 384/1045 mags 204/256 180/256 
       slab_reap: kmem_test cache objects 1045, slabs 10/19 objs 384/1045 mags 204/256 180/256 
       slab_reap: kmem_test cache objects 1045, slabs 10/19 objs 384/1045 mags 204/256 180/256 
       slab_reap: kmem_test cache objects 1045, slabs 10/19 objs 384/1045 mags 204/256 180/256 
       slab_reap: kmem_test cache objects 1045, slabs 10/19 objs 384/1045 mags 204/256 180/256 
       slab_reap: kmem_test cache objects 1045, slabs 10/19 objs 384/1045 mags 204/256 180/256 
       slab_reap: kmem_test cache objects 1045, slabs 10/19 objs 384/1045 mags 204/256 180/256 
       slab_reap: kmem_test cache objects 1045, slabs 10/19 objs 384/1045 mags 204/256 180/256 
       slab_reap: kmem_test cache objects 1045, slabs 10/19 objs 384/1045 mags 204/256 180/256 
       slab_reap: kmem_test cache objects 1045, slabs 10/19 objs 384/1045 mags 204/256 180/256 
       slab_reap: kmem_test cache objects 935, slabs 10/17 objs 384/935 mags 204/256 180/256 
       slab_reap: kmem_test cache objects 825, slabs 10/15 objs 384/825 mags 204/256 180/256 
       slab_reap: kmem_test cache objects 550, slabs 7/10 objs 256/550 mags 204/256 52/256 
       slab_reap: kmem_test cache objects 550, slabs 4/10 objs 128/550 mags 76/256 52/256 
       slab_reap: kmem_test cache objects 550, slabs 4/10 objs 128/550 mags 76/256 52/256 
       slab_reap: kmem_test cache objects 550, slabs 4/10 objs 128/550 mags 76/256 52/256 
       slab_reap: kmem_test cache objects 550, slabs 4/10 objs 128/550 mags 76/256 52/256 
       slab_reap: kmem_test cache objects 550, slabs 0/10 objs 0/550 mags 0/256 0/256 
       slab_reap: kmem_test cache objects 550, slabs 0/10 objs 0/550 mags 0/256 0/256 
       slab_reap: kmem_test cache objects 550, slabs 0/10 objs 0/550 mags 0/256 0/256 
       slab_reap: kmem_test cache objects 550, slabs 0/10 objs 0/550 mags 0/256 0/256 
       slab_reap: kmem_test cache objects 550, slabs 0/10 objs 0/550 mags 0/256 0/256 
       slab_reap: kmem_test cache objects 550, slabs 0/10 objs 0/550 mags 0/256 0/256 
       slab_reap: kmem_test cache objects 550, slabs 0/10 objs 0/550 mags 0/256 0/256 
       slab_reap: kmem_test cache objects 550, slabs 0/10 objs 0/550 mags 0/256 0/256 
       slab_reap: kmem_test cache objects 550, slabs 0/10 objs 0/550 mags 0/256 0/256 
       slab_reap: kmem_test cache objects 550, slabs 0/10 objs 0/550 mags 0/256 0/256 
       slab_reap: kmem_test cache objects 550, slabs 0/10 objs 0/550 mags 0/256 0/256 
       slab_reap: kmem_test cache objects 220, slabs 0/4 objs 0/220 mags 0/256 0/256 
       slab_reap: kmem_test cache objects 220, slabs 0/4 objs 0/220 mags 0/256 0/256 
       slab_reap: kmem_test cache objects 220, slabs 0/4 objs 0/220 mags 0/256 0/256 
       slab_reap: kmem_test cache objects 220, slabs 0/4 objs 0/220 mags 0/256 0/256 
       slab_reap: kmem_test cache objects 220, slabs 0/4 objs 0/220 mags 0/256 0/256 
       slab_reap: kmem_test cache objects 0, slabs 0/0 objs 0/0 mags 0/256 0/256 
       slab_reap: Successfully created 1024 objects in cache kmem_test and reclaimed them

            kmem:slab_age             Pass  

        slab_age: kmem_test cache objects 131120, slabs 6/2384 objs 256/131120 mags 0/256 256/256 
        slab_age: kmem_test cache objects 131120, slabs 6/2384 objs 256/131120 mags 0/256 256/256 
        slab_age: kmem_test cache objects 131120, slabs 6/2384 objs 256/131120 mags 0/256 256/256 
        slab_age: kmem_test cache objects 131120, slabs 6/2384 objs 256/131120 mags 0/256 256/256 
        slab_age: kmem_test cache objects 131120, slabs 6/2384 objs 256/131120 mags 0/256 256/256 
        slab_age: kmem_test cache objects 131120, slabs 6/2384 objs 256/131120 mags 0/256 256/256 
        slab_age: kmem_test cache objects 131120, slabs 6/2384 objs 256/131120 mags 0/256 256/256 
        slab_age: kmem_test cache objects 131120, slabs 6/2384 objs 256/131120 mags 0/256 256/256 
        slab_age: kmem_test cache objects 131120, slabs 6/2384 objs 256/131120 mags 0/256 256/256 
        slab_age: kmem_test cache objects 131120, slabs 6/2384 objs 256/131120 mags 0/256 256/256 
        slab_age: kmem_test cache objects 131120, slabs 6/2384 objs 256/131120 mags 0/256 256/256 
        slab_age: kmem_test cache objects 131120, slabs 6/2384 objs 256/131120 mags 0/256 256/256 
        slab_age: kmem_test cache objects 131120, slabs 6/2384 objs 256/131120 mags 0/256 256/256 
        slab_age: kmem_test cache objects 131120, slabs 6/2384 objs 256/131120 mags 0/256 256/256 
        slab_age: kmem_test cache objects 131120, slabs 6/2384 objs 256/131120 mags 0/256 256/256 
        slab_age: kmem_test cache objects 131120, slabs 6/2384 objs 256/131120 mags 0/256 256/256 
        slab_age: kmem_test cache objects 131120, slabs 6/2384 objs 256/131120 mags 0/256 256/256 
        slab_age: kmem_test cache objects 131120, slabs 6/2384 objs 256/131120 mags 0/256 256/256 
        slab_age: kmem_test cache objects 131120, slabs 6/2384 objs 256/131120 mags 0/256 256/256 
        slab_age: kmem_test cache objects 131120, slabs 6/2384 objs 256/131120 mags 0/256 256/256 
        slab_age: kmem_test cache objects 330, slabs 4/6 objs 128/330 mags 0/256 128/256 
        slab_age: kmem_test cache objects 330, slabs 4/6 objs 128/330 mags 0/256 128/256 
        slab_age: kmem_test cache objects 330, slabs 4/6 objs 128/330 mags 0/256 128/256 
        slab_age: kmem_test cache objects 330, slabs 4/6 objs 128/330 mags 0/256 128/256 
        slab_age: kmem_test cache objects 330, slabs 4/6 objs 128/330 mags 0/256 128/256 
        slab_age: kmem_test cache objects 330, slabs 0/6 objs 0/330 mags 0/256 0/256 
        slab_age: kmem_test cache objects 330, slabs 0/6 objs 0/330 mags 0/256 0/256 
        slab_age: kmem_test cache objects 330, slabs 0/6 objs 0/330 mags 0/256 0/256 
        slab_age: kmem_test cache objects 330, slabs 0/6 objs 0/330 mags 0/256 0/256 
        slab_age: kmem_test cache objects 330, slabs 0/6 objs 0/330 mags 0/256 0/256 
        slab_age: kmem_test cache objects 330, slabs 0/6 objs 0/330 mags 0/256 0/256 
        slab_age: kmem_test cache objects 330, slabs 0/6 objs 0/330 mags 0/256 0/256 
        slab_age: kmem_test cache objects 330, slabs 0/6 objs 0/330 mags 0/256 0/256 
        slab_age: kmem_test cache objects 330, slabs 0/6 objs 0/330 mags 0/256 0/256 
        slab_age: kmem_test cache objects 330, slabs 0/6 objs 0/330 mags 0/256 0/256 
        slab_age: kmem_test cache objects 330, slabs 0/6 objs 0/330 mags 0/256 0/256 
        slab_age: kmem_test cache objects 220, slabs 0/4 objs 0/220 mags 0/256 0/256 
        slab_age: kmem_test cache objects 220, slabs 0/4 objs 0/220 mags 0/256 0/256 
        slab_age: kmem_test cache objects 220, slabs 0/4 objs 0/220 mags 0/256 0/256 
        slab_age: kmem_test cache objects 220, slabs 0/4 objs 0/220 mags 0/256 0/256 
        slab_age: kmem_test cache objects 220, slabs 0/4 objs 0/220 mags 0/256 0/256 
        slab_age: kmem_test cache objects 0, slabs 0/0 objs 0/0 mags 0/256 0/256 
        slab_age: Successfully created 131072 objects in cache kmem_test and reclaimed them

            kmem:slab_lock            Pass  

       slab_lock: name                    time (sec)    slabs           objs        hash
       slab_lock:                               tot/max/calc    tot/max/calc
       slab_lock: kmem_test-16-1          0.000000000   2/2/1   144/128/32
       slab_lock: kmem_test-16-2          0.000000000   2/2/2   144/128/64
       slab_lock: kmem_test-16-4          0.010000000   2/2/4   144/128/128
       slab_lock: kmem_test-16-8          0.000000000   2/2/8   144/128/256
       slab_lock: kmem_test-16-16         0.010000000   4/4/16  288/256/512
       slab_lock: kmem_test-16-32         0.000000000   2/2/32  144/128/1024
       slab_lock: kmem_test-16-64         0.010000000   6/6/64  432/384/2048
       slab_lock: kmem_test-16-128        0.010000000   4/4/128 288/256/4096
       slab_lock: kmem_test-16-256        0.010000000   8/8/256 576/512/8192
       slab_lock: kmem_test-16-512        0.000000000   15/15/512   1080/1024/16384
       slab_lock: name                    time (sec)    slabs           objs        hash
       slab_lock:                               tot/max/calc    tot/max/calc
       slab_lock: kmem_test-32-1          0.010000000   6/5/1   336/256/32
       slab_lock: kmem_test-32-2          0.010000000   6/5/2   336/256/64
       slab_lock: kmem_test-32-4          0.010000000   5/5/4   280/256/128
       slab_lock: kmem_test-32-8          0.000000000   6/5/8   336/256/256
       slab_lock: kmem_test-32-16         0.010000000   6/5/16  336/256/512
       slab_lock: kmem_test-32-32         0.010000000   5/5/32  280/256/1024
       slab_lock: kmem_test-32-64         0.010000000   7/7/64  392/384/2048
       slab_lock: kmem_test-32-128        0.010000000   5/5/128 280/256/4096
       slab_lock: kmem_test-32-256        0.010000000   11/10/256   616/512/8192
       slab_lock: name                    time (sec)    slabs           objs        hash
       slab_lock:                               tot/max/calc    tot/max/calc
       slab_lock: kmem_test-64-1          0.000000000   7/7/1   266/256/32
       slab_lock: kmem_test-64-2          0.020000000   11/11/2 418/384/64
       slab_lock: kmem_test-64-4          0.030000000   11/11/4 418/384/128
       slab_lock: kmem_test-64-8          0.000000000   4/4/8   152/128/256
       slab_lock: kmem_test-64-16         0.010000000   4/4/16  152/128/512
       slab_lock: kmem_test-64-32         0.010000000   4/4/32  152/128/1024
       slab_lock: kmem_test-64-64         0.000000000   4/4/64  152/128/2048
       slab_lock: kmem_test-64-128        0.010000000   4/4/128 152/128/4096
       slab_lock: name                    time (sec)    slabs           objs        hash
       slab_lock:                               tot/max/calc    tot/max/calc
       slab_lock: kmem_test-128-1         0.000000000   3/3/1   144/128/32
       slab_lock: kmem_test-128-2         0.010000000   3/3/2   144/128/64
       slab_lock: kmem_test-128-4         0.000000000   3/3/4   144/128/128
       slab_lock: kmem_test-128-8         0.010000000   3/3/8   144/128/256
       slab_lock: kmem_test-128-16        0.000000000   3/3/16  144/128/512
       slab_lock: kmem_test-128-32        0.010000000   6/6/32  288/256/1024
       slab_lock: kmem_test-128-64        0.000000000   3/3/64  144/128/2048
       slab_lock: name                    time (sec)    slabs           objs        hash
       slab_lock:                               tot/max/calc    tot/max/calc
       slab_lock: kmem_test-256-1         0.010000000   3/3/1   165/128/32
       slab_lock: kmem_test-256-2         0.000000000   3/3/2   165/128/64
       slab_lock: kmem_test-256-4         0.010000000   3/3/4   165/128/128
       slab_lock: kmem_test-256-8         0.010000000   6/5/8   330/256/256
       slab_lock: kmem_test-256-16        0.000000000   3/3/16  165/128/512
       slab_lock: kmem_test-256-32        0.010000000   3/3/32  165/128/1024
       slab_lock: name                    time (sec)    slabs           objs        hash
       slab_lock:                               tot/max/calc    tot/max/calc
       slab_lock: kmem_test-512-1         0.000000000   3/3/1   177/128/32
       slab_lock: kmem_test-512-2         0.020000000   3/3/2   177/128/64
       slab_lock: kmem_test-512-4         0.000000000   3/3/4   177/128/128
       slab_lock: kmem_test-512-8         0.010000000   3/3/8   177/128/256
       slab_lock: kmem_test-512-16        0.000000000   3/3/16  177/128/512
       slab_lock: name                    time (sec)    slabs           objs        hash
       slab_lock:                               tot/max/calc    tot/max/calc
       slab_lock: kmem_test-1024-1        0.010000000   4/3/1   244/128/32
       slab_lock: kmem_test-1024-2        0.010000000   2/2/2   122/64/64
       slab_lock: kmem_test-1024-4        0.010000000   2/2/4   122/64/128
       slab_lock: kmem_test-1024-8        0.010000000   2/2/8   122/64/256
       slab_lock: name                    time (sec)    slabs           objs        hash
       slab_lock:                               tot/max/calc    tot/max/calc
       slab_lock: kmem_test-2048-1        0.010000000   2/2/1   124/64/32
       slab_lock: kmem_test-2048-2        0.000000000   2/2/2   124/64/64
       slab_lock: kmem_test-2048-4        0.010000000   2/2/4   124/64/128
       slab_lock: name                    time (sec)    slabs           objs        hash
       slab_lock:                               tot/max/calc    tot/max/calc
       slab_lock: kmem_test-4096-1        0.010000000   1/1/1   63/32/32
       slab_lock: kmem_test-4096-2        0.000000000   1/1/2   63/32/64
       slab_lock: name                    time (sec)    slabs           objs        hash
       slab_lock:                               tot/max/calc    tot/max/calc
       slab_lock: kmem_test-8192-1        0.000000000   1/1/1   63/32/32
       slab_lock: name                    time (sec)    slabs           objs        hash
       slab_lock:                               tot/max/calc    tot/max/calc
       slab_lock: name                    time (sec)    slabs           objs        hash
       slab_lock:                               tot/max/calc    tot/max/calc
       slab_lock: name                    time (sec)    slabs           objs        hash
       slab_lock:                               tot/max/calc    tot/max/calc
       slab_lock: name                    time (sec)    slabs           objs        hash
       slab_lock:                               tot/max/calc    tot/max/calc
       slab_lock: name                    time (sec)    slabs           objs        hash
       slab_lock:                               tot/max/calc    tot/max/calc
       slab_lock: name                    time (sec)    slabs           objs        hash
       slab_lock:                               tot/max/calc    tot/max/calc
       slab_lock: name                    time (sec)    slabs           objs        hash
       slab_lock:                               tot/max/calc    tot/max/calc

            kmem:slab_overcommit      Pass  

 slab_overcommit: name                    time (sec)    slabs           objs        hash
 slab_overcommit:                               tot/max/calc    tot/max/calc
 slab_overcommit: kmem_test-262144-2560   1.170000000   107/77/2560 6741/4851/81920

            kmem:vmem_size            Pass  

       vmem_size: Vmem alloc=586371072 free=35183785717759 total=35184372088831
       vmem_size: Alloc 8388608 bytes
       vmem_size: Vmem alloc=594784256 free=35183777304575 total=35184372088831
       vmem_size: Free 8388608 bytes
       vmem_size: VMEM_ALLOC within tolerance: ~0% (24576/8388608)
       vmem_size: VMEM_FREE within tolerance:  ~0% (24576/8388608)

           taskq:single               Pass  

          single: Taskq 'single' creating
          single: Taskq 'single' function 'splat_taskq_test13_func' dispatching
          single: Taskq 'single' waiting
          single: Taskq 'single' function 'splat_taskq_test13_func' setting flag
          single: Taskq 'single' destroying

           taskq:multiple             Pass  

        multiple: Taskq 'multiple/0' creating
        multiple: Taskq 'multiple/0' function 'splat_taskq_test2_func1' dispatching
        multiple: Taskq 'multiple/0' function 'splat_taskq_test2_func2' dispatching
        multiple: Taskq 'multiple/1' creating
        multiple: Taskq 'multiple/0' function 'splat_taskq_test2_func1' flag = 0 = 0 * 2
        multiple: Taskq 'multiple/0' function 'splat_taskq_test2_func2' flag = 1 = 0 + 1
        multiple: Taskq 'multiple/1' function 'splat_taskq_test2_func1' dispatching
        multiple: Taskq 'multiple/1' function 'splat_taskq_test2_func2' dispatching
        multiple: Taskq 'multiple/2' creating
        multiple: Taskq 'multiple/1' function 'splat_taskq_test2_func1' flag = 2 = 1 * 2
        multiple: Taskq 'multiple/1' function 'splat_taskq_test2_func2' flag = 3 = 2 + 1
        multiple: Taskq 'multiple/2' function 'splat_taskq_test2_func1' dispatching
        multiple: Taskq 'multiple/2' function 'splat_taskq_test2_func2' dispatching
        multiple: Taskq 'multiple/3' creating
        multiple: Taskq 'multiple/2' function 'splat_taskq_test2_func1' flag = 4 = 2 * 2
        multiple: Taskq 'multiple/2' function 'splat_taskq_test2_func2' flag = 5 = 4 + 1
        multiple: Taskq 'multiple/3' function 'splat_taskq_test2_func1' dispatching
        multiple: Taskq 'multiple/3' function 'splat_taskq_test2_func2' dispatching
        multiple: Taskq 'multiple/4' creating
        multiple: Taskq 'multiple/3' function 'splat_taskq_test2_func1' flag = 6 = 3 * 2
        multiple: Taskq 'multiple/3' function 'splat_taskq_test2_func2' flag = 7 = 6 + 1
        multiple: Taskq 'multiple/4' function 'splat_taskq_test2_func1' dispatching
        multiple: Taskq 'multiple/4' function 'splat_taskq_test2_func2' dispatching
        multiple: Taskq 'multiple/5' creating
        multiple: Taskq 'multiple/4' function 'splat_taskq_test2_func1' flag = 8 = 4 * 2
        multiple: Taskq 'multiple/4' function 'splat_taskq_test2_func2' flag = 9 = 8 + 1
        multiple: Taskq 'multiple/5' function 'splat_taskq_test2_func1' dispatching
        multiple: Taskq 'multiple/5' function 'splat_taskq_test2_func2' dispatching
        multiple: Taskq 'multiple/6' creating
        multiple: Taskq 'multiple/5' function 'splat_taskq_test2_func1' flag = 10 = 5 * 2
        multiple: Taskq 'multiple/5' function 'splat_taskq_test2_func2' flag = 11 = 10 + 1
        multiple: Taskq 'multiple/6' function 'splat_taskq_test2_func1' dispatching
        multiple: Taskq 'multiple/6' function 'splat_taskq_test2_func2' dispatching
        multiple: Taskq 'multiple/7' creating
        multiple: Taskq 'multiple/6' function 'splat_taskq_test2_func1' flag = 12 = 6 * 2
        multiple: Taskq 'multiple/6' function 'splat_taskq_test2_func2' flag = 13 = 12 + 1
        multiple: Taskq 'multiple/7' function 'splat_taskq_test2_func1' dispatching
        multiple: Taskq 'multiple/7' function 'splat_taskq_test2_func2' dispatching
        multiple: Taskq 'multiple/0' waiting
        multiple: Taskq 'multiple/0; destroying
        multiple: Taskq 'multiple/0' processed tasks in the correct order; 1 == 1
        multiple: Taskq 'multiple/1' waiting
        multiple: Taskq 'multiple/1; destroying
        multiple: Taskq 'multiple/1' processed tasks in the correct order; 3 == 3
        multiple: Taskq 'multiple/2' waiting
        multiple: Taskq 'multiple/2; destroying
        multiple: Taskq 'multiple/2' processed tasks in the correct order; 5 == 5
        multiple: Taskq 'multiple/3' waiting
        multiple: Taskq 'multiple/3; destroying
        multiple: Taskq 'multiple/3' processed tasks in the correct order; 7 == 7
        multiple: Taskq 'multiple/4' waiting
        multiple: Taskq 'multiple/4; destroying
        multiple: Taskq 'multiple/4' processed tasks in the correct order; 9 == 9
        multiple: Taskq 'multiple/5' waiting
        multiple: Taskq 'multiple/5; destroying
        multiple: Taskq 'multiple/5' processed tasks in the correct order; 11 == 11
        multiple: Taskq 'multiple/6' waiting
        multiple: Taskq 'multiple/6; destroying
        multiple: Taskq 'multiple/6' processed tasks in the correct order; 13 == 13
        multiple: Taskq 'multiple/7' waiting
        multiple: Taskq 'multiple/7' function 'splat_taskq_test2_func1' flag = 14 = 7 * 2
        multiple: Taskq 'multiple/7' function 'splat_taskq_test2_func2' flag = 15 = 14 + 1
        multiple: Taskq 'multiple/7; destroying
        multiple: Taskq 'multiple/7' processed tasks in the correct order; 15 == 15

           taskq:system               Pass  

          system: Taskq 'system' function 'splat_taskq_test13_func' dispatching
          system: Taskq 'system' waiting
          single: Taskq 'system' function 'splat_taskq_test13_func' setting flag

           taskq:wait                 Pass  

            wait: Taskq 'wait' creating (50/2147483647/1024)
            wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 1 times
            wait: Taskq 'wait' waiting for 1 dispatches
            wait: Taskq 'wait' 1/1 dispatches finished
            wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 2 times
            wait: Taskq 'wait' waiting for 2 dispatches
            wait: Taskq 'wait' 2/2 dispatches finished
            wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 4 times
            wait: Taskq 'wait' waiting for 4 dispatches
            wait: Taskq 'wait' 4/4 dispatches finished
            wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 8 times
            wait: Taskq 'wait' waiting for 8 dispatches
            wait: Taskq 'wait' 8/8 dispatches finished
            wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 16 times
            wait: Taskq 'wait' waiting for 16 dispatches
            wait: Taskq 'wait' 16/16 dispatches finished
            wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 32 times
            wait: Taskq 'wait' waiting for 32 dispatches
            wait: Taskq 'wait' 32/32 dispatches finished
            wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 64 times
            wait: Taskq 'wait' waiting for 64 dispatches
            wait: Taskq 'wait' 64/64 dispatches finished
            wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 128 times
            wait: Taskq 'wait' waiting for 128 dispatches
            wait: Taskq 'wait' 128/128 dispatches finished
            wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 256 times
            wait: Taskq 'wait' waiting for 256 dispatches
            wait: Taskq 'wait' 256/256 dispatches finished
            wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 512 times
            wait: Taskq 'wait' waiting for 512 dispatches
            wait: Taskq 'wait' 512/512 dispatches finished
            wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 1024 times
            wait: Taskq 'wait' waiting for 1024 dispatches
            wait: Taskq 'wait' 1024/1024 dispatches finished
            wait: Taskq 'wait' destroying
            wait: Taskq 'wait' creating (1/1/32)
            wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 1 times
            wait: Taskq 'wait' waiting for 1 dispatches
            wait: Taskq 'wait' 1/1 dispatches finished
            wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 2 times
            wait: Taskq 'wait' waiting for 2 dispatches
            wait: Taskq 'wait' 2/2 dispatches finished
            wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 4 times
            wait: Taskq 'wait' waiting for 4 dispatches
            wait: Taskq 'wait' 4/4 dispatches finished
            wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 8 times
            wait: Taskq 'wait' waiting for 8 dispatches
            wait: Taskq 'wait' 8/8 dispatches finished
            wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 16 times
            wait: Taskq 'wait' waiting for 16 dispatches
            wait: Taskq 'wait' 16/16 dispatches finished
            wait: Taskq 'wait' function 'splat_taskq_test4_func' dispatched 32 times
            wait: Taskq 'wait' waiting for 32 dispatches
            wait: Taskq 'wait' 32/32 dispatches finished
            wait: Taskq 'wait' destroying

           taskq:order                Pass  

           order: Taskq 'order' creating
           order: Taskq 'order' waiting for taskqid 3 completion
           order: Taskqid 1 complete for taskq 'order'
           order: Taskqid 2 complete for taskq 'order'
           order: Taskqid 4 complete for taskq 'order'
           order: Taskqid 5 complete for taskq 'order'
           order: Taskqid 3 complete for taskq 'order'
           order: Taskq 'order' validated correct completion order
           order: Taskq 'order' waiting for taskqid 8 completion
           order: Taskqid 8 complete for taskq 'order'
           order: Taskqid 6 complete for taskq 'order'
           order: Taskqid 7 complete for taskq 'order'
           order: Taskq 'order' validated correct completion order
           order: Taskq 'order' destroying

           taskq:front                Pass  

           front: Taskq 'front' creating
           front: Taskq 'front' waiting for taskqid 8 completion
           front: Taskqid 1 complete for taskq 'front'
           front: Taskqid 2 complete for taskq 'front'
           front: Taskqid 3 complete for taskq 'front'
           front: Taskqid 6 complete for taskq 'front'
           front: Taskqid 7 complete for taskq 'front'
           front: Taskqid 8 complete for taskq 'front'
           front: Taskqid 4 complete for taskq 'front'
           front: Taskqid 5 complete for taskq 'front'
           front: Taskq 'front' validated correct completion order
           front: Taskq 'front' destroying

            krng:freq                 Pass  

Test 1 Number of ones: 524267
Test 1 Difference from expected: 21 Allowed: 2097

           mutex:tryenter             Pass  

        tryenter: mutex_trylock() correctly failed when the mutex was held
        tryenter: mutex_trylock() correctly succeeded when the mutex was not held

           mutex:race                 Pass  

            race: 2 racing threads correctly entered/exited the mutex 128 times

           mutex:owned                Pass  

           owned: Correct mutex_owned() behavior

           mutex:owner                Pass  

           owned: Correct mutex_owner() behavior

         condvar:signal1              Pass  

         signal1: condvar_test0 thread sleeping with 0 waiters
         signal1: condvar_test1 thread sleeping with 1 waiters
         signal1: condvar_test3 thread sleeping with 2 waiters
         signal1: condvar_test5 thread sleeping with 3 waiters
         signal1: condvar_test7 thread sleeping with 4 waiters
         signal1: condvar_test2 thread sleeping with 5 waiters
         signal1: condvar_test4 thread sleeping with 6 waiters
         signal1: condvar_test6 thread sleeping with 7 waiters
         signal1: condvar_test0 thread woken 7 waiters remain
         signal1: condvar_test1 thread woken 6 waiters remain
         signal1: condvar_test3 thread woken 5 waiters remain
         signal1: condvar_test5 thread woken 4 waiters remain
         signal1: condvar_test7 thread woken 3 waiters remain
         signal1: condvar_test2 thread woken 2 waiters remain
         signal1: condvar_test4 thread woken 1 waiters remain
         signal1: condvar_test6 thread woken 0 waiters remain
         signal1: Correctly woke 8 sleeping threads 1 at a time

         condvar:broadcast1           Pass  

      broadcast1: condvar_test1 thread sleeping with 0 waiters
      broadcast1: condvar_test2 thread sleeping with 1 waiters
      broadcast1: condvar_test4 thread sleeping with 2 waiters
      broadcast1: condvar_test6 thread sleeping with 3 waiters
      broadcast1: condvar_test0 thread sleeping with 4 waiters
      broadcast1: condvar_test3 thread sleeping with 5 waiters
      broadcast1: condvar_test5 thread sleeping with 6 waiters
      broadcast1: condvar_test7 thread sleeping with 7 waiters
      broadcast1: condvar_test3 thread woken 7 waiters remain
      broadcast1: condvar_test1 thread woken 6 waiters remain
      broadcast1: condvar_test5 thread woken 5 waiters remain
      broadcast1: condvar_test2 thread woken 4 waiters remain
      broadcast1: condvar_test7 thread woken 3 waiters remain
      broadcast1: condvar_test4 thread woken 2 waiters remain
      broadcast1: condvar_test6 thread woken 1 waiters remain
      broadcast1: condvar_test0 thread woken 0 waiters remain
      broadcast1: Correctly woke all 8 sleeping threads at once

         condvar:signal2              Pass  

         signal2: condvar_test2 thread sleeping with 0 waiters
         signal2: condvar_test4 thread sleeping with 1 waiters
         signal2: condvar_test6 thread sleeping with 2 waiters
         signal2: condvar_test0 thread sleeping with 3 waiters
         signal2: condvar_test1 thread sleeping with 4 waiters
         signal2: condvar_test3 thread sleeping with 5 waiters
         signal2: condvar_test5 thread sleeping with 6 waiters
         signal2: condvar_test7 thread sleeping with 7 waiters
         signal2: condvar_test2 thread woken 7 waiters remain
         signal2: condvar_test4 thread woken 6 waiters remain
         signal2: condvar_test6 thread woken 5 waiters remain
         signal2: condvar_test0 thread woken 4 waiters remain
         signal2: condvar_test1 thread woken 3 waiters remain
         signal2: condvar_test3 thread woken 2 waiters remain
         signal2: condvar_test5 thread woken 1 waiters remain
         signal2: condvar_test7 thread woken 0 waiters remain
         signal2: Correctly woke 8 sleeping threads 1 at a time

         condvar:broadcast2           Pass  

         signal2: condvar_test2 thread sleeping with 0 waiters
         signal2: condvar_test4 thread sleeping with 1 waiters
         signal2: condvar_test6 thread sleeping with 2 waiters
         signal2: condvar_test1 thread sleeping with 3 waiters
         signal2: condvar_test3 thread sleeping with 4 waiters
         signal2: condvar_test5 thread sleeping with 5 waiters
         signal2: condvar_test7 thread sleeping with 6 waiters
         signal2: condvar_test0 thread sleeping with 7 waiters
         signal2: condvar_test2 thread woken 7 waiters remain
         signal2: condvar_test4 thread woken 6 waiters remain
         signal2: condvar_test6 thread woken 5 waiters remain
         signal2: condvar_test1 thread woken 4 waiters remain
         signal2: condvar_test3 thread woken 3 waiters remain
         signal2: condvar_test5 thread woken 2 waiters remain
         signal2: condvar_test7 thread woken 1 waiters remain
         signal2: condvar_test0 thread woken 0 waiters remain
         signal2: Correctly woke 8 sleeping threads 1 at a time

         condvar:timeout              Pass  

         timeout: Thread going to sleep for 1 second and expecting to be woken by timeout
         timeout: Thread correctly timed out and was asleep for 1.0 seconds (1 second min)

          thread:create               Pass  

          create: Thread successfully started properly

          thread:exit                 Pass  

            exit: Thread successfully exited at thread_exit()

          thread:tsd                  Pass  

             tsd: Thread specific data verified

          rwlock:N-rd/1-wr            Pass  

       N-rd/1-wr: rwlock_wr_thr0 trying to acquire rwlock (0 holding/0 waiting)
       N-rd/1-wr: rwlock_wr_thr0 acquired rwlock (1 holding/0 waiting)
       N-rd/1-wr: rwlock_rd_thr3 trying to acquire rwlock (1 holding/0 waiting)
       N-rd/1-wr: rwlock_rd_thr1 trying to acquire rwlock (1 holding/1 waiting)
       N-rd/1-wr: rwlock_rd_thr2 trying to acquire rwlock (1 holding/2 waiting)
       N-rd/1-wr: rwlock_rd_thr5 trying to acquire rwlock (1 holding/3 waiting)
       N-rd/1-wr: rwlock_rd_thr6 trying to acquire rwlock (1 holding/4 waiting)
       N-rd/1-wr: rwlock_rd_thr4 trying to acquire rwlock (1 holding/5 waiting)
       N-rd/1-wr: rwlock_rd_thr7 trying to acquire rwlock (1 holding/6 waiting)
       N-rd/1-wr: rwlock_wr_thr0 dropped rwlock (0 holding/7 waiting)
       N-rd/1-wr: rwlock_rd_thr2 acquired rwlock (1 holding/6 waiting)
       N-rd/1-wr: rwlock_rd_thr6 acquired rwlock (2 holding/5 waiting)
       N-rd/1-wr: rwlock_rd_thr4 acquired rwlock (3 holding/4 waiting)
       N-rd/1-wr: rwlock_rd_thr3 acquired rwlock (4 holding/3 waiting)
       N-rd/1-wr: rwlock_rd_thr1 acquired rwlock (5 holding/2 waiting)
       N-rd/1-wr: rwlock_rd_thr5 acquired rwlock (6 holding/1 waiting)
       N-rd/1-wr: rwlock_rd_thr7 acquired rwlock (7 holding/0 waiting)
       N-rd/1-wr: rwlock_rd_thr7 dropped rwlock (6 holding/0 waiting)
       N-rd/1-wr: rwlock_rd_thr3 dropped rwlock (5 holding/0 waiting)
       N-rd/1-wr: rwlock_rd_thr5 dropped rwlock (4 holding/0 waiting)
       N-rd/1-wr: rwlock_rd_thr4 dropped rwlock (3 holding/0 waiting)
       N-rd/1-wr: rwlock_rd_thr1 dropped rwlock (2 holding/0 waiting)
       N-rd/1-wr: rwlock_rd_thr6 dropped rwlock (1 holding/0 waiting)
       N-rd/1-wr: rwlock_rd_thr2 dropped rwlock (0 holding/0 waiting)

          rwlock:0-rd/N-wr            Pass  

       0-rd/N-wr: 2 racing threads correctly entered/exited the rwlock 256 times

          rwlock:held                 Pass  

            held: RW_LOCK_HELD returned 1 (expected 1) when RW_READER
            held: RW_LOCK_HELD returned 0 (expected 0) when !RW_READER
            held: RW_LOCK_HELD returned 1 (expected 1) when RW_WRITER
            held: RW_LOCK_HELD returned 0 (expected 0) when !RW_WRITER
            held: RW_READ_HELD returned 1 (expected 1) when RW_READER
            held: RW_READ_HELD returned 0 (expected 0) when !RW_READER
            held: RW_READ_HELD returned 0 (expected 0) when RW_WRITER
            held: RW_READ_HELD returned 0 (expected 0) when !RW_WRITER
            held: RW_WRITE_HELD returned 0 (expected 0) when RW_READER
            held: RW_WRITE_HELD returned 0 (expected 0) when !RW_READER
            held: RW_WRITE_HELD returned 1 (expected 1) when RW_WRITER
            held: RW_WRITE_HELD returned 0 (expected 0) when !RW_WRITER

          rwlock:tryenter             Pass  

        tryenter: rw_tryenter(RW_WRITER) returned -16 (expected -16) when RW_WRITER
        tryenter: rw_tryenter(RW_READER) returned -16 (expected -16) when RW_WRITER
        tryenter: rw_tryenter(RW_WRITER) returned -16 (expected -16) when RW_READER
        tryenter: rw_tryenter(RW_READER) returned 0 (expected 0) when RW_READER
        tryenter: rw_tryenter(RW_WRITER) returned 0 (expected 0) when RW_NONE
        tryenter: rw_tryenter(RW_READER) returned 0 (expected 0) when RW_NONE

          rwlock:rw_downgrade         Pass  

    rw_downgrade: rwlock properly downgraded

          rwlock:rw_tryupgrade        Pass  

   rw_tryupgrade: rw_tryupgrade() is disabled for this arch

            time:time1                Pass  

           time1: hz is 100

            time:time2                Pass  

           time2: time is 3093702910963
           time2: time is 3093702913547
           time2: time is 3093810038675
           time2: time is 3093902539548
           time2: time is 3094010056136
           time2: time is 3094114002651
           time2: time is 3094214205889
           time2: time is 3094315094337
           time2: time is 3094414281665
           time2: time is 3094520024147
           time2: time is 3094612757242
           time2: time is 3094713123000
           time2: time is 3094810039304
           time2: time is 3094912538221
           time2: time is 3095014375882
           time2: time is 3095120043214
           time2: time is 3095215848413
           time2: time is 3095314586174
           time2: time is 3095420039094
           time2: time is 3095522542412
           time2: time is 3095620229272
           time2: time is 3095721532648
           time2: time is 3095821912933
           time2: time is 3095920138548
           time2: time is 3096021797695
           time2: time is 3096122542202
           time2: time is 3096222556031
           time2: time is 3096322558335
           time2: time is 3096422535078
           time2: time is 3096522524393
           time2: time is 3096622552678
           time2: time is 3096725853652
           time2: time is 3096822529561
           time2: time is 3096922525929
           time2: time is 3097022558196
           time2: time is 3097122525580
           time2: time is 3097222523275
           time2: time is 3097322521250
           time2: time is 3097425042307
           time2: time is 3097522537453
           time2: time is 3097621351410
           time2: time is 3097722544227
           time2: time is 3097822524183
           time2: time is 3097922524183
           time2: time is 3098022559593
           time2: time is 3098122531237
           time2: time is 3098222554005
           time2: time is 3098322570767
           time2: time is 3098422537243
           time2: time is 3098520039093
           time2: time is 3098622530817
           time2: time is 3098730038115
           time2: time is 3098822550443
           time2: time is 3098922555262
           time2: time is 3099022549466
           time2: time is 3099121041734
           time2: time is 3099222567205
           time2: time is 3099321477264
           time2: time is 3099422565669
           time2: time is 3099522543180
           time2: time is 3099621017010
           time2: time is 3099722532215
           time2: time is 3099823483731
           time2: time is 3099930029176
           time2: time is 3100020060116
           time2: time is 3100120794845
           time2: time is 3100222587039
           time2: time is 3100322521039
           time2: time is 3100422519014
           time2: time is 3100523071039
           time2: time is 3100622524881
           time2: time is 3100720825645
           time2: time is 3100822542481
           time2: time is 3100920070173
           time2: time is 3101022562246
           time2: time is 3101122549744
           time2: time is 3101222549255
           time2: time is 3101320479372
           time2: time is 3101422560290
           time2: time is 3101522900137
           time2: time is 3101621147822
           time2: time is 3101722534658
           time2: time is 3101822106532
           time2: time is 3101922538988
           time2: time is 3102020923632
           time2: time is 3102122534868
           time2: time is 3102222605407
           time2: time is 3102322563223
           time2: time is 3102423670695
           time2: time is 3102520045030
           time2: time is 3102630050338
           time2: time is 3102722537522
           time2: time is 3102822554144
           time2: time is 3102922542201
           time2: time is 3103022541293
           time2: time is 3103120954921
           time2: time is 3103222543808
           time2: time is 3103322546392
           time2: time is 3103422542341
           time2: time is 3103522541014
           time2: time is 3103622540385

           vnode:vn_open              Pass  

         vn_open: Successfully vn_open'ed and vn_closed test file: /etc/fstab

           vnode:vn_openat            Pass  

       vn_openat: Successfully vn_openat'ed and vn_closed test file: /etc/fstab

           vnode:vn_rdwr              Pass  

         vn_rdwr: Wrote: SPL VNode Interface Test File
         vn_rdwr: Read:  SPL VNode Interface Test File
         vn_rdwr: Successfully wrote and read expected data pattern to test file: /tmp/spl.vnode.tmp

           vnode:vn_rename            Pass  

       vn_rename: Wrote to /tmp/spl.vnode.tmp.1:  SPL VNode Interface Test File
       vn_rename: Read from /tmp/spl.vnode.tmp.2: SPL VNode Interface Test File
       vn_rename: Successfully renamed test file /tmp/spl.vnode.tmp.1 -> /tmp/spl.vnode.tmp.2 and verified data pattern

           vnode:vn_getattr           Pass  

         vn_open: Successfully vn_getattr'ed test file: /etc/fstab

           vnode:vn_sync              Pass  

         vn_sync: Successfully fsync'ed test file /tmp/spl.vnode.tmp

           vnode:vn_getf              Pass  

         vn_rdwr: Wrote: SPL VNode Interface Test File
         vn_rdwr: Read:  SPL VNode Interface Test File
         vn_rdwr: Successfully wrote and read expected data pattern to test file: /tmp/spl.vnode.tmp

            kobj:open                 Pass  

            open: Successfully opened and closed test file: /etc/fstab

            kobj:size/read            Pass  

       size/read: 

/etc/fstab: static file system information.

Use 'blkid -o value -s UUID' to print the universally unique identifier

for a device; this may be used with UUID= as a more robust way to name

devices that works even if disks are added and removed. See fstab(5).

proc /proc proc nodev,noexec,nosuid 0 0
UUID=39383601-ddab-4919-9154-10f3ccc532c6 / ext4 errors=remount-ro,noatime 0 1
UUID=b77ad639-095f-4c22-952b-5f359c15cf72 none swap sw 0 0
UUID=d8bcb9f5-6e32-41b7-816b-a18a42ea350f /space ext4 errors=remount-ro,noatime 0 2

       size/read: Successfully stat'ed and read expected number of bytes (707) from test file: /etc/fstab

          atomic:64-bit               Pass  

          64-bit: Thread 0 successfully started: 10000000/0
          64-bit: Thread 0 sleeping: 10000000/0
          64-bit: Thread 1 successfully started: 10000000/0
          64-bit: Thread 1 sleeping: 10000000/0
          64-bit: Thread 2 successfully started: 10000000/0
          64-bit: Thread 2 sleeping: 10000000/0
          64-bit: Thread 3 successfully started: 10000000/0
          64-bit: Thread 3 sleeping: 10000000/0
          64-bit: Thread 4 successfully started: 10000000/0
          64-bit: Thread 4 sleeping: 10000000/0
          64-bit: Thread 5 successfully started: 10000000/0
          64-bit: Thread 5 sleeping: 10000000/0
          64-bit: Thread 0 sleeping: 10100000/0
          64-bit: Thread 1 sleeping: 10000000/0
          64-bit: Thread 2 sleeping: 10300000/0
          64-bit: Thread 3 sleeping: 10000000/0
          64-bit: Thread 4 sleeping: 10500000/0
          64-bit: Thread 1 sleeping: 10400000/0
          64-bit: Thread 0 sleeping: 10500000/0
          64-bit: Thread 2 sleeping: 10800000/0
          64-bit: Thread 3 sleeping: 10500000/0
          64-bit: Thread 4 sleeping: 11000000/0
          64-bit: Thread 2 sleeping: 11300000/0
          64-bit: Thread 1 sleeping: 11200000/0
          64-bit: Thread 0 sleeping: 11300000/0
          64-bit: Thread 3 sleeping: 11000000/0
          64-bit: Thread 4 sleeping: 11500000/0
          64-bit: Thread 2 sleeping: 11800000/0
          64-bit: Thread 1 sleeping: 11700000/0
          64-bit: Thread 0 sleeping: 11800000/0
          64-bit: Thread 3 sleeping: 11500000/0
          64-bit: Thread 4 sleeping: 12000000/0
          64-bit: Thread 5 sleeping: 11500000/0
          64-bit: Thread 2 sleeping: 11800000/0
          64-bit: Thread 1 sleeping: 11700000/0
          64-bit: Thread 3 sleeping: 11400000/0
          64-bit: Thread 0 sleeping: 11500000/0
          64-bit: Thread 4 sleeping: 12000000/0
          64-bit: Thread 2 sleeping: 12300000/0
          64-bit: Thread 1 sleeping: 12200000/0
          64-bit: Thread 3 sleeping: 11900000/0
          64-bit: Thread 0 sleeping: 12000000/0
          64-bit: Thread 4 sleeping: 12500000/0
          64-bit: Thread 2 sleeping: 12800000/0
          64-bit: Thread 3 sleeping: 12500000/0
          64-bit: Thread 0 sleeping: 12600000/0
          64-bit: Thread 1 sleeping: 12500000/0
          64-bit: Thread 4 sleeping: 13000000/0
          64-bit: Thread 2 sleeping: 13300000/0
          64-bit: Thread 3 sleeping: 13000000/0
          64-bit: Thread 5 sleeping: 12500000/0
          64-bit: Thread 1 sleeping: 12400000/0
          64-bit: Thread 0 sleeping: 12500000/0
          64-bit: Thread 4 sleeping: 13000000/0
          64-bit: Thread 2 sleeping: 13300000/0
          64-bit: Thread 3 sleeping: 13000000/0
          64-bit: Thread 1 sleeping: 12900000/0
          64-bit: Thread 5 sleeping: 12400000/0
          64-bit: Thread 0 sleeping: 12500000/0
          64-bit: Thread 4 sleeping: 13000000/0
          64-bit: Thread 3 successfully exited: 12700000/1
          64-bit: Thread 2 successfully exited: 13000000/2
          64-bit: Thread 1 successfully exited: 12900000/3
          64-bit: Thread 0 successfully exited: 13000000/4
          64-bit: Thread 5 sleeping: 12500000/4
          64-bit: Thread 4 successfully exited: 13000000/5
          64-bit: Thread 5 sleeping: 12500000/5
          64-bit: Thread 5 sleeping: 12000000/5
          64-bit: Thread 5 sleeping: 11500000/5
          64-bit: Thread 5 sleeping: 11000000/5
          64-bit: Thread 5 sleeping: 10500000/5
          64-bit: Thread 5 successfully exited: 10000000/6
          64-bit: Success initial and final values match, 10000000 == 10000000

            list:create/destroy       Pass  

  create/destroy: Creating list
  create/destroy: Destroying list

            list:ins/rm head          Pass  

     ins/rm head: Creating list
     ins/rm head: Adding 8 items to list head
     ins/rm head: Validating 8 item list is a stack
     ins/rm head: Removing 8 items from list head
     ins/rm head: Destroying list

            list:ins/rm tail          Pass  

     ins/rm tail: Creating list
     ins/rm tail: Adding 8 items to list tail
     ins/rm tail: Validating 8 item list is a queue
     ins/rm tail: Removing 8 items from list tail
     ins/rm tail: Destroying list

            list:insert_after         Pass  

    insert_after: Creating list
    insert_after: Adding 8 items each after the last item
    insert_after: Validating 8 item list is a queue
    insert_after: Removing 8 items from list tail
    insert_after: Destroying list

            list:insert_before        Pass  

   insert_before: Creating list
   insert_before: Adding 8 items each before the last item
   insert_before: Validating 8 item list is a queue
   insert_before: Removing 8 items from list tail
   insert_before: Destroying list

            list:remove               Pass  

          remove: Creating list
          remove: Adding 8 items to list tail
          remove: Removing 4 odd items from the list
          remove: Validating 4 item list is a queue of only even elements
          remove: Removing 4 items from list tail
          remove: Destroying list

            list:active               Pass  

          active: Creating list
          active: Init list node
          active: Insert list node
          active: Remove list node
          active: Destroying list

         generic:ddi_strtoul          Pass  

     ddi_strtoul: Pass (0) positive: 123456789 == 123456789, 0xffffffffa045dcec
     ddi_strtoul: Pass (0) negative: -123456789 == 0, 0xffff88013a30ddd8
     ddi_strtoul: Pass (0) base: 0xabcdef == 11259375, 0xffffffffa045dd12
     ddi_strtoul: Pass (34) max: 10000000000000000 == 0, 0x(null)
     ddi_strtoul: Pass (0) min: -10000000000000000 == 0, 0xffff88013a30ddd8
     ddi_strtoul: Pass (0) invalid: 12345U == 12345, 0xffffffffa045dd4a
     ddi_strtoul: Pass (0) invalid: invald == 0, 0xffff88013a30ddd8

         generic:ddi_strtol           Pass  

     ddi_strtoul: Pass (0) positive: 123456789 == 123456789, 0xffffffffa045dcec
     ddi_strtoul: Pass (0) negative: -123456789 == -123456789, 0xffff88013a30dde2
     ddi_strtoul: Pass (0) base: 0xabcdef == 11259375, 0xffffffffa045dd12
     ddi_strtoul: Pass (34) max: 10000000000000000 == 0, 0x(null)
     ddi_strtoul: Pass (34) min: -10000000000000000 == 0, 0x(null)
     ddi_strtoul: Pass (0) invalid: 12345U == 12345, 0xffffffffa045dd4a
     ddi_strtoul: Pass (0) invalid: invald == 0, 0xffff88013a30ddd8

         generic:ddi_strtoull         Pass  

     ddi_strtoul: Pass (0) positive: 123456789 == 123456789, 0xffffffffa045dcec
     ddi_strtoul: Pass (0) negative: -123456789 == 0, 0xffff88013a30ddd8
     ddi_strtoul: Pass (0) base: 0xabcdef == 11259375, 0xffffffffa045dd12
     ddi_strtoul: Pass (34) max: 10000000000000000 == 0, 0x(null)
     ddi_strtoul: Pass (0) min: -10000000000000000 == 0, 0xffff88013a30ddd8
     ddi_strtoul: Pass (0) invalid: 12345U == 12345, 0xffffffffa045dd4a
     ddi_strtoul: Pass (0) invalid: invald == 0, 0xffff88013a30ddd8

         generic:ddi_strtoll          Pass  

     ddi_strtoul: Pass (0) positive: 123456789 == 123456789, 0xffffffffa045dcec
     ddi_strtoul: Pass (0) negative: -123456789 == -123456789, 0xffff88013a30dde2
     ddi_strtoul: Pass (0) base: 0xabcdef == 11259375, 0xffffffffa045dd12
     ddi_strtoul: Pass (34) max: 10000000000000000 == 0, 0x(null)
     ddi_strtoul: Pass (34) min: -10000000000000000 == 0, 0x(null)
     ddi_strtoul: Pass (0) invalid: 12345U == 12345, 0xffffffffa045dd4a
     ddi_strtoul: Pass (0) invalid: invald == 0, 0xffff88013a30ddd8

         generic:udivdi3              Pass  

         udivdi3: Testing unsigned 64-bit division.
         udivdi3: Passed all 2756 tests

         generic:divdi3               Pass  

          divdi3: Testing signed 64-bit division.
          divdi3: Passed all 2162 tests

            cred:cred                 Pass  

            cred: uid: 0 ruid: 0 suid: 0 gid: 0 rgid: 0 sgid: 0
            cred: ngroups: 1 groups: 0 
            cred: Success sane CRED(): 0

            cred:kcred                Pass  

           kcred: uid: 0 ruid: 0 suid: 0 gid: 0 rgid: 0 sgid: 0
           kcred: ngroups: 0 groups: 
           kcred: Success sane kcred: 0

            cred:groupmember          Pass  

     groupmember: Success root gid is a member of the expected groups: 0

ryan@lap:/usr/src/spl-0.6.0-rc1$ sudo splat -a
------------------------------ Running SPLAT Tests ------------------------------
kmem:kmem_alloc Pass
kmem:kmem_zalloc Pass
kmem:vmem_alloc Pass
kmem:vmem_zalloc Pass
kmem:slab_small Pass
kmem:slab_large Pass
kmem:slab_align Pass
kmem:slab_reap Pass
kmem:slab_age Pass
kmem:slab_lock Pass
kmem:slab_overcommit Pass
kmem:vmem_size Pass
taskq:single Pass
taskq:multiple Pass
taskq:system Pass
taskq:wait Pass
taskq:order Pass
taskq:front Pass
krng:freq Pass
mutex:tryenter Pass
mutex:race Pass
mutex:owned Pass
mutex:owner Pass
condvar:signal1 Pass
condvar:broadcast1 Pass
condvar:signal2 Pass
condvar:broadcast2 Pass
condvar:timeout Pass
thread:create Pass
thread:exit Pass
thread:tsd Pass
rwlock:N-rd/1-wr Pass
rwlock:0-rd/N-wr Pass
rwlock:held Pass
rwlock:tryenter Pass
rwlock:rw_downgrade Pass
rwlock:rw_tryupgrade Pass
time:time1 Pass
time:time2 Pass
vnode:vn_open Pass
vnode:vn_openat Pass
vnode:vn_rdwr Pass
vnode:vn_rename Pass
vnode:vn_getattr Pass
vnode:vn_sync Pass
vnode:vn_getf Pass
kobj:open Pass
kobj:size/read Pass
atomic:64-bit Pass
list:create/destroy Pass
list:ins/rm head Pass
list:ins/rm tail Pass
list:insert_after Pass
list:insert_before Pass
list:remove Pass
list:active Pass
generic:ddi_strtoul Pass
generic:ddi_strtol Pass
generic:ddi_strtoull Pass
generic:ddi_strtoll Pass
generic:udivdi3 Pass
generic:divdi3 Pass
cred:cred Pass
cred:kcred Pass
cred:groupmember Pass
ryan@lap:/usr/src/spl-0.6.0-rc1$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 10.10
Release: 10.10
Codename: maverick
ryan@lap:/usr/src/spl-0.6.0-rc1$ uname -a
Linux lap 2.6.35-25-generic #44-Ubuntu SMP Fri Jan 21 17:40:44 UTC 2011 x86_64 GNU/Linux

utsrelease.h

Hey,
Just a heads up, as of at least 2.6.33 utsrelease.h moved from $kernelbuild/include/linux/utsrelease.h TO $kernelbuild/include/generated/utsrelease.h

Just found that out the hard way when it wouldn't configure with the new kernel.

Hope it helps,
Dane Smith

Can not build SPL on Debian (alpha platform) with 2.6.36.1 kernel

I am trying to build SPL on my Debian (squeeze/sid) running on alpha (COMPAQ AlphaServer DS20E) platform with kernel 2.6.36.1
I have downloaded the following source:

$ git branch -v
* master b6bd75f Some of the files were not getting compiled after merge. Added them in the module/spl/Makefile.in  and exported a symbol.

I started to compile it, however the compilation is failing with the following error:

In file included from include/linux/sched.h:87,
                 from include/linux/kthread.h:5,
                 from /tmp/spl-build-root-jq2EwU9Z/BUILD/spl-0.5.2/include/sys/thread.h:31,
                 from /tmp/spl-build-root-jq2EwU9Z/BUILD/spl-0.5.2/module/spl/../../module/spl/spl-tsd.c:24:
include/linux/resource.h:46:1: warning: this is the location of the previous definition
/tmp/spl-build-root-jq2EwU9Z/BUILD/spl-0.5.2/module/spl/../../module/spl/spl-tsd.c: In function 'tsd_exit':
/tmp/spl-build-root-jq2EwU9Z/BUILD/spl-0.5.2/module/spl/../../module/spl/spl-tsd.c:304: warning: passing argument 1 of 'mutex_owner' from incompatible pointer type
/tmp/spl-build-root-jq2EwU9Z/BUILD/spl-0.5.2/include/sys/mutex.h:140: note: expected 'struct kmutex_t *' but argument is of type 'struct mutex *'
/tmp/spl-build-root-jq2EwU9Z/BUILD/spl-0.5.2/module/spl/../../module/spl/spl-tsd.c:304: warning: passing argument 1 of 'spl_mutex_set_owner' from incompatible pointer type
/tmp/spl-build-root-jq2EwU9Z/BUILD/spl-0.5.2/include/sys/mutex.h:120: note: expected 'struct kmutex_t *' but argument is of type 'struct mutex *'
/tmp/spl-build-root-jq2EwU9Z/BUILD/spl-0.5.2/module/spl/../../module/spl/spl-tsd.c:313: warning: passing argument 1 of 'spl_mutex_clear_owner' from incompatible pointer type
/tmp/spl-build-root-jq2EwU9Z/BUILD/spl-0.5.2/include/sys/mutex.h:130: note: expected 'struct kmutex_t *' but argument is of type 'struct mutex *'
/tmp/spl-build-root-jq2EwU9Z/BUILD/spl-0.5.2/module/spl/../../module/spl/spl-tsd.c: At top level:
/tmp/spl-build-root-jq2EwU9Z/BUILD/spl-0.5.2/module/spl/../../module/spl/spl-tsd.c:68: error: __ksymtab_tsd_realloc causes a section type conflict
make[7]: *** [/tmp/spl-build-root-jq2EwU9Z/BUILD/spl-0.5.2/module/spl/../../module/spl/spl-tsd.o] Error 1
make[6]: *** [/tmp/spl-build-root-jq2EwU9Z/BUILD/spl-0.5.2/module/spl] Error 2
make[5]: *** [_module_/tmp/spl-build-root-jq2EwU9Z/BUILD/spl-0.5.2/module] Error 2
make[5]: Leaving directory `/usr/src/linux-2.6.36.1'
make[4]: *** [modules] Error 2
make[4]: Leaving directory `/tmp/spl-build-root-jq2EwU9Z/BUILD/spl-0.5.2/module'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/tmp/spl-build-root-jq2EwU9Z/BUILD/spl-0.5.2'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/tmp/spl-build-root-jq2EwU9Z/BUILD/spl-0.5.2'
error: Bad exit status from /tmp/spl-build-root-jq2EwU9Z/TMP/rpm-tmp.XVMUF9 (%build)

Regards,
Jan

Honor KM_PUSHPAGE

The current kmem_cache implementation does not fully honor KM_PUSHPAGE. At the moment using KM_PUSHPAGE in you kmem_cache_alloc() call only has the effect of setting __GFP_HIGH which allows the use of reserved memory. Really this doesn't go far enough, we need the SPL to maintain it's own reserved objects on the slab which can be used when KM_PUSHPAGE is requested and all other slab objects have been exhausted. This will allow us to service the request without having to vmalloc() a new slab. The caller is then responsible for quickly returning the object to the slab to ensure forward progress can always be made.

The ZFS code makes careful use of the KM_PUSHPAGE flag to avoid deadlocks in zio pipeline. It's possible that a KM_SLEEP allocation in the zio pipeline with trigger memory reclaim, which may trigger IO to be flushed to disk, this IO will then cause a deadlock which prevents the current txg from syncing.

Add kmem cache defragmentation API

There are now consumers of the kmem cache defragmentation API, as such we should fully implement it. Basically, this will involve implementing the kmem_cache_set_move() API function to register the move callback for the slab. Then there going to need to be a few new data structure to track this. Finally, we will need to safely add all the hooks to the existing slab code to ensure it is called appropriately and the returns code are honors. Now this is going to be a little trickier than it sounds since the slab implementation is fair complicated any racy, but it does need to be done at some point. We absolutely will need to add several regression tests to make sure we got it right.

See commit 2b35430.

spl module conflict with oss

When I start oss I get messages in dmesg "osscore: exports duplicate symbol __divdi3 (owned by spl)".

Gentoo x86, spl git d936522, Linux kernel 3.0.0-rc4

UTS_RELEASE checking is depricated

checking spl license... GPL
checking spl config... all
checking kernel source directory... /usr/src/linux-2.6.34-gentoo
checking kernel build directory... /usr/src/linux-2.6.34-gentoo
checking kernel source version... Not found
configure: error:
*** Cannot determine the version of the linux kernel source.
*** Please prepare the kernel before running this script
behaviourism behlendorf-spl-5c04498 #

atomic 64bit test failing on Ubuntu 10.04 LTS i686

No problem installing spl/splat :)

The (regression) test suite fails the following testcase:

./splat -v -t 0x0b00:0x0b01

The output is nondeterministic (with the values initially veering of to the positive or the negative side of the initial value 10000000). I'm not sure what is supposed to happen, but I reckoned I'd report it first.

This is on

Q9550/8Gb

I've manually built the kernel from the Ubuntu-lts-2.6.35-6.9 tag in git://kernel.ubuntu.com/ubuntu/ubuntu-lucid.git. No further changes, and I used the stock Ubuntu config (/boot/config-2.6.32-23-generic-pae) but with CONFIG_CRYPTO_PCRYPT=y

Linux lucid 2.6.35-rc3splice+ #5 SMP Tue Jul 6 13:55:09 CEST 2010 i686 GNU/Linux
Distributor ID: Ubuntu
Description: Ubuntu 10.04 LTS
Release: 10.04
Codename: lucid

doesn't compile on 3.1.0vanilla

make -C /home/rudd-o/Projects/Third-party/linux/karen.dragonfear SUBDIRS=pwd modules
make[3]: Entering directory `/home/rudd-o/Projects/Third-party/linux/karen.dragonfear'
CC [M] /home/rudd-o/Projects/Third-party/spl/module/spl/../../module/spl/spl-debug.o
CC [M] /home/rudd-o/Projects/Third-party/spl/module/spl/../../module/spl/spl-proc.o
CC [M] /home/rudd-o/Projects/Third-party/spl/module/splat/../../module/splat/splat-ctl.o
/home/rudd-o/Projects/Third-party/spl/module/spl/../../module/spl/spl-debug.c: In function ‘spl_debug_dump_all_pages’:
/home/rudd-o/Projects/Third-party/spl/module/spl/../../module/spl/spl-debug.c:963:9: error: too few arguments to function ‘filp->f_op->fsync’
make[5]: *** [/home/rudd-o/Projects/Third-party/spl/module/spl/../../module/spl/spl-debug.o] Error 1
make[5]: *** Waiting for unfinished jobs....

woops.

SPLError: 6166:0:(zfs_znode.c:305:zfs_inode_set_ops()) SPL PANIC

Hey, i hope this is not a duplicate of #27. Unfortunately i have no clue about debugging c-problems ;-)
The system is debian testing with 2.6.38-2-amd64. Furthermore i'm running 0.6.0-RC4.
Here are the whole stacktraces:

[30145.704756] VERIFY(sa_lookup(ITOZ(ip)->z_sa_hdl, SA_ZPL_RDEV(zsb), &rdev, sizeof (rdev)) == 0) failed
[30145.704767] SPLError: 6166:0:(zfs_znode.c:305:zfs_inode_set_ops()) SPL PANIC
[30145.704770] SPL: Showing stack for process 6166
[30145.704774] Pid: 6166, comm: updatedb.mlocat Tainted: P O 2.6.38-2-amd64 #1
[30145.704777] Call Trace:
[30145.704790] [] ? spl_debug_dumpstack+0x26/0x2c [spl]
[30145.704797] [] ? spl_debug_bug+0x7f/0xc8 [spl]
[30145.704821] [] ? zfs_znode_alloc+0x38a/0x476 [zfs]
[30145.704843] [] ? zfs_zget+0x169/0x194 [zfs]
[30145.704867] [] ? zfs_dirent_lock+0x3e2/0x41f [zfs]
[30145.704891] [] ? zfs_zaccess_aces_check+0x1d5/0x203 [zfs]
[30145.704915] [] ? zfs_dirlook+0x131/0x193 [zfs]
[30145.704936] [] ? zfs_lookup+0x272/0x2ba [zfs]
[30145.704942] [] ? __d_rehash+0x19/0x4d
[30145.704961] [] ? zpl_lookup+0x47/0x80 [zfs]
[30145.704966] [] ? d_alloc_and_lookup+0x43/0x60
[30145.704970] [] ? do_lookup+0x22c/0x27b
[30145.704975] [] ? acl_permission_check+0x54/0x7b
[30145.704979] [] ? link_path_walk+0x23c/0x3a7
[30145.704983] [] ? path_init_rcu+0x9e/0x174
[30145.704988] [] ? do_path_lookup+0x42/0xfc
[30145.704992] [] ? user_path_at+0x46/0x78
[30145.704996] [] ? cp_new_stat+0xe6/0xfa
[30145.705000] [] ? vfs_fstatat+0x38/0x65
[30145.705004] [] ? sys_newlstat+0x11/0x2d
[30145.705008] [] ? system_call_fastpath+0x16/0x1b
[30145.705048] SPL: Dumping log to /tmp/spl-log.1305266443.6166
[30360.676066] INFO: task updatedb.mlocat:6166 blocked for more than 120 seconds.
[30360.676071] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[30360.676074] updatedb.mlocat D ffff880202fa57c0 0 6166 6160 0x00000000
[30360.676080] ffff880202fa57c0 0000000000000086 0000000000000000 ffff88022746ca40
[30360.676086] 0000000000013700 ffff880114aabfd8 ffff880114aabfd8 0000000000013700
[30360.676091] ffff880202fa57c0 ffff880114aaa010 ffff880100040004 0000000114aab7f0
[30360.676097] Call Trace:
[30360.676110] [] ? spl_debug_bug+0xc6/0xc8 [spl]
[30360.676134] [] ? zfs_znode_alloc+0x38a/0x476 [zfs]
[30360.676156] [] ? zfs_zget+0x169/0x194 [zfs]
[30360.676180] [] ? zfs_dirent_lock+0x3e2/0x41f [zfs]
[30360.676204] [] ? zfs_zaccess_aces_check+0x1d5/0x203 [zfs]
[30360.676228] [] ? zfs_dirlook+0x131/0x193 [zfs]
[30360.676249] [] ? zfs_lookup+0x272/0x2ba [zfs]
[30360.676255] [] ? __d_rehash+0x19/0x4d
[30360.676273] [] ? zpl_lookup+0x47/0x80 [zfs]
[30360.676278] [] ? d_alloc_and_lookup+0x43/0x60
[30360.676283] [] ? do_lookup+0x22c/0x27b
[30360.676287] [] ? acl_permission_check+0x54/0x7b
[30360.676292] [] ? link_path_walk+0x23c/0x3a7
[30360.676296] [] ? path_init_rcu+0x9e/0x174
[30360.676300] [] ? do_path_lookup+0x42/0xfc
[30360.676304] [] ? user_path_at+0x46/0x78
[30360.676308] [] ? cp_new_stat+0xe6/0xfa
[30360.676312] [] ? vfs_fstatat+0x38/0x65
[30360.676316] [] ? sys_newlstat+0x11/0x2d
[30360.676320] [] ? system_call_fastpath+0x16/0x1b
[30480.676077] INFO: task updatedb.mlocat:6166 blocked for more than 120 seconds.
[30480.676081] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[30480.676084] updatedb.mlocat D ffff880202fa57c0 0 6166 6160 0x00000000
[30480.676090] ffff880202fa57c0 0000000000000086 0000000000000000 ffff88022746ca40
[30480.676097] 0000000000013700 ffff880114aabfd8 ffff880114aabfd8 0000000000013700
[30480.676102] ffff880202fa57c0 ffff880114aaa010 ffff880100040004 0000000114aab7f0
[30480.676108] Call Trace:
[30480.676121] [] ? spl_debug_bug+0xc6/0xc8 [spl]
[30480.676145] [] ? zfs_znode_alloc+0x38a/0x476 [zfs]
[30480.676168] [] ? zfs_zget+0x169/0x194 [zfs]
[30480.676192] [] ? zfs_dirent_lock+0x3e2/0x41f [zfs]
[30480.676216] [] ? zfs_zaccess_aces_check+0x1d5/0x203 [zfs]
[30480.676239] [] ? zfs_dirlook+0x131/0x193 [zfs]
[30480.676261] [] ? zfs_lookup+0x272/0x2ba [zfs]
[30480.676266] [] ? __d_rehash+0x19/0x4d
[30480.676285] [] ? zpl_lookup+0x47/0x80 [zfs]
[30480.676290] [] ? d_alloc_and_lookup+0x43/0x60
[30480.676294] [] ? do_lookup+0x22c/0x27b
[30480.676299] [] ? acl_permission_check+0x54/0x7b
[30480.676303] [] ? link_path_walk+0x23c/0x3a7
[30480.676308] [] ? path_init_rcu+0x9e/0x174
[30480.676312] [] ? do_path_lookup+0x42/0xfc
[30480.676316] [] ? user_path_at+0x46/0x78
[30480.676320] [] ? cp_new_stat+0xe6/0xfa
[30480.676324] [] ? vfs_fstatat+0x38/0x65
[30480.676328] [] ? sys_newlstat+0x11/0x2d
[30480.676333] [] ? system_call_fastpath+0x16/0x1b
[30600.676075] INFO: task updatedb.mlocat:6166 blocked for more than 120 seconds.
[30600.676079] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[30600.676082] updatedb.mlocat D ffff880202fa57c0 0 6166 6160 0x00000000
[30600.676088] ffff880202fa57c0 0000000000000086 0000000000000000 ffff88022746ca40
[30600.676094] 0000000000013700 ffff880114aabfd8 ffff880114aabfd8 0000000000013700
[30600.676100] ffff880202fa57c0 ffff880114aaa010 ffff880100040004 0000000114aab7f0
[30600.676105] Call Trace:
[30600.676118] [] ? spl_debug_bug+0xc6/0xc8 [spl]
[30600.676142] [] ? zfs_znode_alloc+0x38a/0x476 [zfs]
[30600.676164] [] ? zfs_zget+0x169/0x194 [zfs]
[30600.676188] [] ? zfs_dirent_lock+0x3e2/0x41f [zfs]
[30600.676212] [] ? zfs_zaccess_aces_check+0x1d5/0x203 [zfs]
[30600.676236] [] ? zfs_dirlook+0x131/0x193 [zfs]
[30600.676257] [] ? zfs_lookup+0x272/0x2ba [zfs]
[30600.676263] [] ? __d_rehash+0x19/0x4d
[30600.676282] [] ? zpl_lookup+0x47/0x80 [zfs]
[30600.676287] [] ? d_alloc_and_lookup+0x43/0x60
[30600.676291] [] ? do_lookup+0x22c/0x27b
[30600.676295] [] ? acl_permission_check+0x54/0x7b
[30600.676300] [] ? link_path_walk+0x23c/0x3a7
[30600.676304] [] ? path_init_rcu+0x9e/0x174
[30600.676308] [] ? do_path_lookup+0x42/0xfc
[30600.676312] [] ? user_path_at+0x46/0x78
[30600.676316] [] ? cp_new_stat+0xe6/0xfa
[30600.676320] [] ? vfs_fstatat+0x38/0x65
[30600.676324] [] ? sys_newlstat+0x11/0x2d
[30600.676329] [] ? system_call_fastpath+0x16/0x1b
[30720.676076] INFO: task updatedb.mlocat:6166 blocked for more than 120 seconds.
[30720.676081] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[30720.676084] updatedb.mlocat D ffff880202fa57c0 0 6166 6160 0x00000000
[30720.676090] ffff880202fa57c0 0000000000000086 0000000000000000 ffff88022746ca40
[30720.676096] 0000000000013700 ffff880114aabfd8 ffff880114aabfd8 0000000000013700
[30720.676101] ffff880202fa57c0 ffff880114aaa010 ffff880100040004 0000000114aab7f0
[30720.676107] Call Trace:
[30720.676120] [] ? spl_debug_bug+0xc6/0xc8 [spl]
[30720.676145] [] ? zfs_znode_alloc+0x38a/0x476 [zfs]
[30720.676167] [] ? zfs_zget+0x169/0x194 [zfs]
[30720.676191] [] ? zfs_dirent_lock+0x3e2/0x41f [zfs]
[30720.676215] [] ? zfs_zaccess_aces_check+0x1d5/0x203 [zfs]
[30720.676238] [] ? zfs_dirlook+0x131/0x193 [zfs]
[30720.676260] [] ? zfs_lookup+0x272/0x2ba [zfs]
[30720.676265] [] ? __d_rehash+0x19/0x4d
[30720.676284] [] ? zpl_lookup+0x47/0x80 [zfs]
[30720.676289] [] ? d_alloc_and_lookup+0x43/0x60
[30720.676293] [] ? do_lookup+0x22c/0x27b
[30720.676298] [] ? acl_permission_check+0x54/0x7b
[30720.676302] [] ? link_path_walk+0x23c/0x3a7
[30720.676306] [] ? path_init_rcu+0x9e/0x174
[30720.676311] [] ? do_path_lookup+0x42/0xfc
[30720.676315] [] ? user_path_at+0x46/0x78
[30720.676319] [] ? cp_new_stat+0xe6/0xfa
[30720.676323] [] ? vfs_fstatat+0x38/0x65
[30720.676326] [] ? sys_newlstat+0x11/0x2d
[30720.676331] [] ? system_call_fastpath+0x16/0x1b
[30840.676076] INFO: task updatedb.mlocat:6166 blocked for more than 120 seconds.
[30840.676080] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[30840.676084] updatedb.mlocat D ffff880202fa57c0 0 6166 6160 0x00000000
[30840.676090] ffff880202fa57c0 0000000000000086 0000000000000000 ffff88022746ca40
[30840.676096] 0000000000013700 ffff880114aabfd8 ffff880114aabfd8 0000000000013700
[30840.676101] ffff880202fa57c0 ffff880114aaa010 ffff880100040004 0000000114aab7f0
[30840.676107] Call Trace:
[30840.676120] [] ? spl_debug_bug+0xc6/0xc8 [spl]
[30840.676145] [] ? zfs_znode_alloc+0x38a/0x476 [zfs]
[30840.676167] [] ? zfs_zget+0x169/0x194 [zfs]
[30840.676190] [] ? zfs_dirent_lock+0x3e2/0x41f [zfs]
[30840.676214] [] ? zfs_zaccess_aces_check+0x1d5/0x203 [zfs]
[30840.676238] [] ? zfs_dirlook+0x131/0x193 [zfs]
[30840.676259] [] ? zfs_lookup+0x272/0x2ba [zfs]
[30840.676265] [] ? __d_rehash+0x19/0x4d
[30840.676284] [] ? zpl_lookup+0x47/0x80 [zfs]
[30840.676288] [] ? d_alloc_and_lookup+0x43/0x60
[30840.676293] [] ? do_lookup+0x22c/0x27b
[30840.676297] [] ? acl_permission_check+0x54/0x7b
[30840.676302] [] ? link_path_walk+0x23c/0x3a7
[30840.676306] [] ? path_init_rcu+0x9e/0x174
[30840.676310] [] ? do_path_lookup+0x42/0xfc
[30840.676314] [] ? user_path_at+0x46/0x78
[30840.676318] [] ? cp_new_stat+0xe6/0xfa
[30840.676322] [] ? vfs_fstatat+0x38/0x65
[30840.676326] [] ? sys_newlstat+0x11/0x2d
[30840.676331] [] ? system_call_fastpath+0x16/0x1b
[30960.676075] INFO: task updatedb.mlocat:6166 blocked for more than 120 seconds.
[30960.676079] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[30960.676083] updatedb.mlocat D ffff880202fa57c0 0 6166 6160 0x00000000
[30960.676088] ffff880202fa57c0 0000000000000086 0000000000000000 ffff88022746ca40
[30960.676094] 0000000000013700 ffff880114aabfd8 ffff880114aabfd8 0000000000013700
[30960.676100] ffff880202fa57c0 ffff880114aaa010 ffff880100040004 0000000114aab7f0
[30960.676105] Call Trace:
[30960.676118] [] ? spl_debug_bug+0xc6/0xc8 [spl]
[30960.676142] [] ? zfs_znode_alloc+0x38a/0x476 [zfs]
[30960.676165] [] ? zfs_zget+0x169/0x194 [zfs]
[30960.676188] [] ? zfs_dirent_lock+0x3e2/0x41f [zfs]
[30960.676212] [] ? zfs_zaccess_aces_check+0x1d5/0x203 [zfs]
[30960.676236] [] ? zfs_dirlook+0x131/0x193 [zfs]
[30960.676257] [] ? zfs_lookup+0x272/0x2ba [zfs]
[30960.676263] [] ? __d_rehash+0x19/0x4d
[30960.676282] [] ? zpl_lookup+0x47/0x80 [zfs]
[30960.676287] [] ? d_alloc_and_lookup+0x43/0x60
[30960.676291] [] ? do_lookup+0x22c/0x27b
[30960.676295] [] ? acl_permission_check+0x54/0x7b
[30960.676300] [] ? link_path_walk+0x23c/0x3a7
[30960.676304] [] ? path_init_rcu+0x9e/0x174
[30960.676308] [] ? do_path_lookup+0x42/0xfc
[30960.676312] [] ? user_path_at+0x46/0x78
[30960.676316] [] ? cp_new_stat+0xe6/0xfa
[30960.676320] [] ? vfs_fstatat+0x38/0x65
[30960.676324] [] ? sys_newlstat+0x11/0x2d
[30960.676329] [] ? system_call_fastpath+0x16/0x1b
[31080.676064] INFO: task updatedb.mlocat:6166 blocked for more than 120 seconds.
[31080.676068] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[31080.676071] updatedb.mlocat D ffff880202fa57c0 0 6166 6160 0x00000000
[31080.676077] ffff880202fa57c0 0000000000000086 0000000000000000 ffff88022746ca40
[31080.676083] 0000000000013700 ffff880114aabfd8 ffff880114aabfd8 0000000000013700
[31080.676089] ffff880202fa57c0 ffff880114aaa010 ffff880100040004 0000000114aab7f0
[31080.676094] Call Trace:
[31080.676107] [] ? spl_debug_bug+0xc6/0xc8 [spl]
[31080.676130] [] ? zfs_znode_alloc+0x38a/0x476 [zfs]
[31080.676153] [] ? zfs_zget+0x169/0x194 [zfs]
[31080.676177] [] ? zfs_dirent_lock+0x3e2/0x41f [zfs]
[31080.676200] [] ? zfs_zaccess_aces_check+0x1d5/0x203 [zfs]
[31080.676224] [] ? zfs_dirlook+0x131/0x193 [zfs]
[31080.676245] [] ? zfs_lookup+0x272/0x2ba [zfs]
[31080.676251] [] ? __d_rehash+0x19/0x4d
[31080.676269] [] ? zpl_lookup+0x47/0x80 [zfs]
[31080.676274] [] ? d_alloc_and_lookup+0x43/0x60
[31080.676279] [] ? do_lookup+0x22c/0x27b
[31080.676283] [] ? acl_permission_check+0x54/0x7b
[31080.676288] [] ? link_path_walk+0x23c/0x3a7
[31080.676292] [] ? path_init_rcu+0x9e/0x174
[31080.676296] [] ? do_path_lookup+0x42/0xfc
[31080.676300] [] ? user_path_at+0x46/0x78
[31080.676304] [] ? cp_new_stat+0xe6/0xfa
[31080.676308] [] ? vfs_fstatat+0x38/0x65
[31080.676312] [] ? sys_newlstat+0x11/0x2d
[31080.676317] [] ? system_call_fastpath+0x16/0x1b
[31200.676075] INFO: task updatedb.mlocat:6166 blocked for more than 120 seconds.
[31200.676079] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[31200.676082] updatedb.mlocat D ffff880202fa57c0 0 6166 6160 0x00000000
[31200.676088] ffff880202fa57c0 0000000000000086 0000000000000000 ffff88022746ca40
[31200.676095] 0000000000013700 ffff880114aabfd8 ffff880114aabfd8 0000000000013700
[31200.676100] ffff880202fa57c0 ffff880114aaa010 ffff880100040004 0000000114aab7f0
[31200.676106] Call Trace:
[31200.676119] [] ? spl_debug_bug+0xc6/0xc8 [spl]
[31200.676143] [] ? zfs_znode_alloc+0x38a/0x476 [zfs]
[31200.676165] [] ? zfs_zget+0x169/0x194 [zfs]
[31200.676189] [] ? zfs_dirent_lock+0x3e2/0x41f [zfs]
[31200.676213] [] ? zfs_zaccess_aces_check+0x1d5/0x203 [zfs]
[31200.676236] [] ? zfs_dirlook+0x131/0x193 [zfs]
[31200.676258] [] ? zfs_lookup+0x272/0x2ba [zfs]
[31200.676264] [] ? __d_rehash+0x19/0x4d
[31200.676282] [] ? zpl_lookup+0x47/0x80 [zfs]
[31200.676287] [] ? d_alloc_and_lookup+0x43/0x60
[31200.676291] [] ? do_lookup+0x22c/0x27b
[31200.676296] [] ? acl_permission_check+0x54/0x7b
[31200.676300] [] ? link_path_walk+0x23c/0x3a7
[31200.676304] [] ? path_init_rcu+0x9e/0x174
[31200.676309] [] ? do_path_lookup+0x42/0xfc
[31200.676313] [] ? user_path_at+0x46/0x78
[31200.676317] [] ? cp_new_stat+0xe6/0xfa
[31200.676320] [] ? vfs_fstatat+0x38/0x65
[31200.676324] [] ? sys_newlstat+0x11/0x2d
[31200.676329] [] ? system_call_fastpath+0x16/0x1b
[31320.676075] INFO: task updatedb.mlocat:6166 blocked for more than 120 seconds.
[31320.676079] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[31320.676082] updatedb.mlocat D ffff880202fa57c0 0 6166 6160 0x00000000
[31320.676088] ffff880202fa57c0 0000000000000086 0000000000000000 ffff88022746ca40
[31320.676094] 0000000000013700 ffff880114aabfd8 ffff880114aabfd8 0000000000013700
[31320.676100] ffff880202fa57c0 ffff880114aaa010 ffff880100040004 0000000114aab7f0
[31320.676105] Call Trace:
[31320.676118] [] ? spl_debug_bug+0xc6/0xc8 [spl]
[31320.676143] [] ? zfs_znode_alloc+0x38a/0x476 [zfs]
[31320.676165] [] ? zfs_zget+0x169/0x194 [zfs]
[31320.676189] [] ? zfs_dirent_lock+0x3e2/0x41f [zfs]
[31320.676212] [] ? zfs_zaccess_aces_check+0x1d5/0x203 [zfs]
[31320.676236] [] ? zfs_dirlook+0x131/0x193 [zfs]
[31320.676257] [] ? zfs_lookup+0x272/0x2ba [zfs]
[31320.676263] [] ? __d_rehash+0x19/0x4d
[31320.676282] [] ? zpl_lookup+0x47/0x80 [zfs]
[31320.676287] [] ? d_alloc_and_lookup+0x43/0x60
[31320.676291] [] ? do_lookup+0x22c/0x27b
[31320.676295] [] ? acl_permission_check+0x54/0x7b
[31320.676300] [] ? link_path_walk+0x23c/0x3a7
[31320.676304] [] ? path_init_rcu+0x9e/0x174
[31320.676308] [] ? do_path_lookup+0x42/0xfc
[31320.676312] [] ? user_path_at+0x46/0x78
[31320.676316] [] ? cp_new_stat+0xe6/0xfa
[31320.676320] [] ? vfs_fstatat+0x38/0x65
[31320.676324] [] ? sys_newlstat+0x11/0x2d
[31320.676329] [] ? system_call_fastpath+0x16/0x1b
[31440.676073] INFO: task updatedb.mlocat:6166 blocked for more than 120 seconds.
[31440.676077] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[31440.676081] updatedb.mlocat D ffff880202fa57c0 0 6166 6160 0x00000000
[31440.676086] ffff880202fa57c0 0000000000000086 0000000000000000 ffff88022746ca40
[31440.676092] 0000000000013700 ffff880114aabfd8 ffff880114aabfd8 0000000000013700
[31440.676098] ffff880202fa57c0 ffff880114aaa010 ffff880100040004 0000000114aab7f0
[31440.676103] Call Trace:
[31440.676116] [] ? spl_debug_bug+0xc6/0xc8 [spl]
[31440.676140] [] ? zfs_znode_alloc+0x38a/0x476 [zfs]
[31440.676162] [] ? zfs_zget+0x169/0x194 [zfs]
[31440.676186] [] ? zfs_dirent_lock+0x3e2/0x41f [zfs]
[31440.676209] [] ? zfs_zaccess_aces_check+0x1d5/0x203 [zfs]
[31440.676233] [] ? zfs_dirlook+0x131/0x193 [zfs]
[31440.676254] [] ? zfs_lookup+0x272/0x2ba [zfs]
[31440.676260] [] ? __d_rehash+0x19/0x4d
[31440.676278] [] ? zpl_lookup+0x47/0x80 [zfs]
[31440.676283] [] ? d_alloc_and_lookup+0x43/0x60
[31440.676287] [] ? do_lookup+0x22c/0x27b
[31440.676292] [] ? acl_permission_check+0x54/0x7b
[31440.676296] [] ? link_path_walk+0x23c/0x3a7
[31440.676301] [] ? path_init_rcu+0x9e/0x174
[31440.676305] [] ? do_path_lookup+0x42/0xfc
[31440.676309] [] ? user_path_at+0x46/0x78
[31440.676313] [] ? cp_new_stat+0xe6/0xfa
[31440.676317] [] ? vfs_fstatat+0x38/0x65
[31440.676320] [] ? sys_newlstat+0x11/0x2d
[31440.676325] [] ? system_call_fastpath+0x16/0x1b

strange mouse/keyboard issue in Ubuntu10.04-X86 in VirtualBox.

when i finished these:

  1. ./configure
  2. ./make rpm
  3. alien *.rpm

although the tests of "scripts/check.sh" show all "pass".

but when i login into the ubuntu again, the mouse/keyboard does not work anymore.
(ps, i installed the advanced tool of virtualbox for ubuntu)

thanks very much.

Can't compile with 3.1 kernel (Ubuntu x86_64)

Can't compile the SPL and ZFS kernel modules with 3.1-rc4 kernel (Ubuntu):

CC [M] /var/lib/dkms/spl/0.6.0.31/build/module/spl/../../module/spl/spl-debug.o
/var/lib/dkms/spl/0.6.0.31/build/module/spl/../../module/spl/spl-debug.c: In function ‘spl_debug_dump_all_pages’:
/var/lib/dkms/spl/0.6.0.31/build/module/spl/../../module/spl/spl-debug.c:963:9: error: too few arguments to function ‘filp->f_op->fsync’

SPL panic on corrupt ZIL log

[  104.845233] SPLError: 4262:0:(zil.c:360:zil_parse()) ASSERTION(! 
claimed || !(zh->zh_flags & ZIL_CLAIM_LR_SEQ_VALID) || (max_blk_seq == 
claim_blk_seq && max_lr_seq == claim_lr_seq)) failed 
[  104.845632] SPLError: 4262:0:(zil.c:360:zil_parse()) SPL PANIC 
[  104.845797] SPL: Showing stack for process 4262 
[  104.845802] Pid: 4262, comm: mount.zfs Tainted: P            2.6.37- 
gentoo-r4 #3 
[  104.845805] Call Trace: 
[  104.845819]  [] spl_debug_dumpstack+0x2b/0x2d 
[spl] 
[  104.845830]  [] spl_debug_bug+0x91/0xd6 [spl] 
[  104.845895]  [] zil_parse+0x63f/0x6a0 [zfs] 
[  104.845954]  [] ? zil_replay_log_record+0x0/0x14c 
[zfs] 
[  104.846012]  [] ? zil_incr_blks+0x0/0xf [zfs] 
[  104.846072]  [] zil_replay+0xfe/0x139 [zfs] 
[  104.846131]  [] zfs_sb_setup+0xd5/0xf2 [zfs] 
[  104.846190]  [] zfs_domount+0x1bf/0x223 [zfs] 
[  104.846250]  [] ? zpl_fill_super+0x0/0x73 [zfs] 
[  104.846308]  [] zpl_fill_super+0xe/0x73 [zfs] 
[  104.846366]  [] ? zpl_fill_super+0x0/0x73 [zfs] 
[  104.846375]  [] mount_nodev+0x47/0x81 
[  104.846381]  [] get_sb_nodev+0x11/0x34 
[  104.846439]  [] zpl_get_sb+0x24/0x26 [zfs] 
[  104.846445]  [] ? security_sb_copy_data+0x11/0x13 
[  104.846451]  [] vfs_kern_mount+0xea/0x1f6 
[  104.846457]  [] do_kern_mount+0x48/0xe8 
[  104.846463]  [] do_mount+0x732/0x78d 
[  104.846469]  [] ? alloc_pages_current+0xa2/0xc5 
[  104.846475]  [] sys_mount+0x83/0xbd 
[  104.846481]  [] system_call_fastpath+0x16/0x1b 
[  104.847331] SPL: Dumping log to /tmp/spl-log.1307051829.4262 
[  109.774295] SPLError: 2688:0:(zil.c:1550:zil_sync()) ASSERTION(zh- 
>zh_replay_seq < *replayed_seq) failed 

[  109.774574] SPLError: 2688:0:(zil.c:1550:zil_sync()) SPL PANIC 
[  109.774730] SPL: Showing stack for process 2688 
[  109.774736] Pid: 2688, comm: txg_sync Tainted: P            2.6.37- 
gentoo-r4 #3 
[  109.774739] Call Trace: 
[  109.774753]  [] spl_debug_dumpstack+0x2b/0x2d 
[spl] 
[  109.774766]  [] spl_debug_bug+0x91/0xd6 [spl] 
[  109.774835]  [] zil_sync+0xf2/0x325 [zfs] 
[  109.774888]  [] ? dnode_add_ref+0x9c/0xaa [zfs] 
[  109.774952]  [] ? zio_nowait+0x257/0x2ee [zfs] 
[  109.775036]  [] dmu_objset_sync+0x418/0x44b [zfs] 
[  109.775074]  [] ? dmu_objset_write_ready 
+0x0/0x121 [zfs] 
[  109.775112]  [] ? dmu_objset_write_done+0x0/0x133 
[zfs] 
[  109.775123]  [] ? mutex_lock+0x11/0x38 
[  109.775168]  [] dsl_dataset_sync+0x133/0x13e 
[zfs] 
[  109.775218]  [] dsl_pool_sync+0x112/0x72d [zfs] 
[  109.775272]  [] spa_sync+0x528/0xa51 [zfs] 
[  109.775279]  [] ? autoremove_wake_function 
+0x11/0x34 
[  109.775285]  [] ? __wake_up+0x3f/0x48 
[  109.775340]  [] txg_sync_thread+0x290/0x3fb [zfs] 
[  109.775398]  [] ? txg_sync_thread+0x0/0x3fb [zfs] 
[  109.775453]  [] ? txg_sync_thread+0x0/0x3fb [zfs] 
[  109.775466]  [] ? thread_generic_wrapper+0x0/0x79 
[spl] 
[  109.775480]  [] thread_generic_wrapper+0x6c/0x79 
[spl] 
[  109.775486]  [] kthread+0x7d/0x85 
[  109.775492]  [] kernel_thread_helper+0x4/0x10 
[  109.775498]  [] ? kthread+0x0/0x85 
[  109.775503]  [] ? kernel_thread_helper+0x0/0x10 
[  109.775590] SPL: Dumping log to /tmp/spl-log.1307051834.2688 

as suggested by Brian I have set zil_replay_disable to 1 and it helped to get my pool mounted. Starting a scrub to see if there was anything worth repairing let me hit another one:

[  615.985069] SPLError: 5546:0:(ddt_zap.c:73:ddt_zap_lookup()) ASSERTION(csize <= sizeof (cbuf)) failed
[  615.985132] SPLError: 5550:0:(ddt_zap.c:73:ddt_zap_lookup()) ASSERTION(csize <= sizeof (cbuf)) failed
[  615.985137] SPLError: 5550:0:(ddt_zap.c:73:ddt_zap_lookup()) SPL PANIC
[  615.985140] SPL: Showing stack for process 5550
[  615.985143] Pid: 5550, comm: z_wr_iss/5 Tainted: P            2.6.37-gentoo-r4 #3
[  615.985146] Call Trace:
[  615.985152] SPLError: 5548:0:(ddt_zap.c:73:ddt_zap_lookup()) ASSERTION(csize <= sizeof (cbuf)) failed
[  615.985169]  [] spl_debug_dumpstack+0x2b/0x2d [spl]
[  615.985176] SPLError: 5548:0:(ddt_zap.c:73:ddt_zap_lookup()) SPL PANIC
[  615.985181] SPL: Showing stack for process 5548
[  615.985192]  [] spl_debug_bug+0x91/0xd6 [spl]
[  615.985197] Pid: 5548, comm: z_wr_iss/3 Tainted: P            2.6.37-gentoo-r4 #3
[  615.985203] Call Trace:
[  615.985239]  [] ddt_zap_lookup+0xf1/0x152 [zfs]
[  615.985254]  [] spl_debug_dumpstack+0x2b/0x2d [spl]
[  615.985268]  [] ? __cv_init+0xbf/0xc5 [spl]
[  615.985281]  [] spl_debug_bug+0x91/0xd6 [spl]
[  615.985316]  [] ddt_lookup+0x134/0x290 [zfs]
[  615.985363]  [] ddt_zap_lookup+0xf1/0x152 [zfs]
[  615.985372]  [] ? __mutex_lock_common+0x5e/0x1e9
[  615.985387]  [] ? __cv_init+0xbf/0xc5 [spl]
[  615.985395]  [] ? __mutex_lock_slowpath+0x14/0x16
[  615.985401]  [] ? _raw_spin_lock+0x17/0x1b
[  615.985458]  [] zio_ddt_write+0x141/0x688 [zfs]
[  615.985512]  [] ddt_lookup+0x134/0x290 [zfs]
[  615.985568]  [] ? zio_checksum_compute+0x19a/0x1a9 [zfs]
[  615.985576]  [] ? __mutex_lock_common+0x5e/0x1e9
[  615.985630]  [] ? zio_push_transform+0x41/0x8a [zfs]
[  615.985637]  [] ? __mutex_lock_slowpath+0x14/0x16
[  615.985692]  [] zio_execute+0x207/0x27b [zfs]
[  615.985759]  [] zio_ddt_write+0x141/0x688 [zfs]
[  615.985767]  [] ? default_spin_lock_flags+0x17/0x1d
[  615.985835]  [] ? zio_checksum_compute+0x19a/0x1a9 [zfs]
[  615.985848]  [] taskq_thread+0x1ce/0x2ce [spl]
[  615.985915]  [] zio_execute+0x207/0x27b [zfs]
[  615.985922]  [] ? default_wake_function+0x0/0xf
[  615.985930]  [] ? default_spin_lock_flags+0x17/0x1d
[  615.985942]  [] ? taskq_thread+0x0/0x2ce [spl]
[  615.985957]  [] taskq_thread+0x1ce/0x2ce [spl]
[  615.985964]  [] kthread+0x7d/0x85
[  615.985970]  [] ? default_wake_function+0x0/0xf
[  615.985978]  [] kernel_thread_helper+0x4/0x10
[  615.985991]  [] ? taskq_thread+0x0/0x2ce [spl]
[  615.985998]  [] ? kthread+0x0/0x85
[  615.986004]  [] kthread+0x7d/0x85
[  615.986009]  [] ? kernel_thread_helper+0x0/0x10
[  615.986016]  [] kernel_thread_helper+0x4/0x10
[  615.986021]  [] ? kthread+0x0/0x85
[  615.986026]  [] ? kernel_thread_helper+0x0/0x10
[  615.986259] SPLError: 5546:0:(ddt_zap.c:73:ddt_zap_lookup()) SPL PANIC
[  615.986415] SPL: Showing stack for process 5546
[  615.986421] Pid: 5546, comm: z_wr_iss/1 Tainted: P            2.6.37-gentoo-r4 #3
[  615.986430] Call Trace:
[  615.986440]  [] spl_debug_dumpstack+0x2b/0x2d [spl]
[  615.986451]  [] spl_debug_bug+0x91/0xd6 [spl]
[  615.986484]  [] ddt_zap_lookup+0xf1/0x152 [zfs]
[  615.986497]  [] ? __cv_init+0xbf/0xc5 [spl]
[  615.986504]  [] ? _raw_spin_lock+0x17/0x1b
[  615.986534]  [] ddt_lookup+0x134/0x290 [zfs]
[  615.986583]  [] ? zio_checksum_SHA256+0xf6/0x154 [zfs]
[  615.986595]  [] ? kmalloc_nofail+0x23/0x35 [spl]
[  615.986646]  [] zio_ddt_write+0x141/0x688 [zfs]
[  615.986697]  [] ? zio_checksum_compute+0x19a/0x1a9 [zfs]
[  615.986748]  [] ? zio_push_transform+0x41/0x8a [zfs]
[  615.986799]  [] zio_execute+0x207/0x27b [zfs]
[  615.986806]  [] ? default_spin_lock_flags+0x17/0x1d
[  615.986819]  [] taskq_thread+0x1ce/0x2ce [spl]
[  615.986826]  [] ? default_wake_function+0x0/0xf
[  615.986838]  [] ? taskq_thread+0x0/0x2ce [spl]
[  615.986844]  [] kthread+0x7d/0x85
[  615.986851]  [] kernel_thread_helper+0x4/0x10
[  615.986857]  [] ? kthread+0x0/0x85
[  615.986863]  [] ? kernel_thread_helper+0x0/0x10

zfs on
commit e95b3bdcbbc64ea502349413234e7c71563e7115
Author: Brian Behlendorf 
Date:   Wed May 25 13:56:40 2011 -0700

spl on
commit 372c2572336468cbf60272aa7e735b7ca0c3807c
Author: Brian Behlendorf 
Date:   Fri May 6 15:21:58 2011 -0700

SPL on Gentoo

Hi!

I was able to compile SPL on two different Gentoo machines using different versions of gcc and the kernel.

Machine A: GCC-4.4.3 and 2.6.33
Machine B: GCC-4.5.0 and 2.6.34 (yeah i know but i like to live a bit dangerous and i know how to help myself i shoot myself in the foot ;) )

First of all I was waiting for someone to step up and think of a way to get ZFS into my beloved linux. Nothing against (Open-)Solaris but i still prefer linux and to be honest i'm not a big fan of fuse so i really hope that you are able to introduce at least a partial working NATIVE zfs into the linux world.

So now let's get back to business: I was able to compile seriv's fork and patched version of spl (commit d7d332c6fbefa2369ea2) without touching the code with Machine A; on Machine B on the other hand i had to touch the code myself to make it compile the same version with gcc-4.5.0. The kernel itself is not the problem the problem is the stricter error-checking of gcc-4.5.0. This is the unified diff of my changes to the source-code

--- module/splat/splat-rwlock.c.orig    2010-06-08 21:25:57.989580948 +0200
+++ module/splat/splat-rwlock.c 2010-06-08 21:32:15.037148486 +0200
@@ -427,9 +427,13 @@
 splat_rwlock_test4_func(void *arg)
 {
        rw_priv_t *rwp = (rw_priv_t *)arg;
+       krw_t val=RW_NONE;
        ASSERT(rwp->rw_magic == SPLAT_RWLOCK_TEST_MAGIC);
 
-       if (rw_tryenter(&rwp->rw_rwlock, rwp->rw_type)) {
+    if (rwp->rw_type==RW_DRIVER)
+               val=RW_READER;
+
+       if (rw_tryenter(&rwp->rw_rwlock, val)) {
                rwp->rw_rc = 0;
                rw_exit(&rwp->rw_rwlock);
        } else {

Without these changes compilation failed with this error message:

cc1: warnings being treated as errors
/root/zfs/spl/module/splat/splat-rwlock.c: In function 'splat_rwlock_test4_func':
/root/zfs/spl/module/splat/splat-rwlock.c:432:6: error: case value '1' not in enumerated type 'krw_type_t'

After compiling the kernel-modules i tried to load them but i got the following error message on both machines:

Error: Unknown symbol get_zone_counts
SPL: Failed to Load Solaris Porting Layer v0.4.9, rc = -14

I tried to find out how/if i can force spl to export this symbol but i wasn't able to find the correct option to enable it.

Anyway keep up the good work!

splat -a "BUG: scheduling while atomic"

Hi there,

System: Linux 2.6.38-gentoo-r7 #4 SMP PREEMPT x86_64 AMD Phenom(tm) 9950 Quad-Core Processor AuthenticAMD GNU/Linux
Glibc: 2.13-r2

Actually splat-a shows all tests pass. However there are some BUG messages in /var/log/messages:

2011-06-13T12:57:12.778984+02:00 (none) kernel: SPL: Loaded module v0.6.0, using hostid 0xa8c002b2
2011-06-13T12:57:16.025988+02:00 (none) kernel: ZFS: Loaded module v0.6.0, ZFS pool version 28, ZFS filesystem version 5
2011-06-13T12:57:55.646984+02:00 (none) kernel: SPLAT: Loaded module v0.6.0
2011-06-13T12:59:32.894238+02:00 (none) kernel: BUG: scheduling while atomic: splat/20569/0x00000002
2011-06-13T12:59:32.894276+02:00 (none) kernel: Modules linked in: splat zfs(P) zcommon(P) znvpair(P) zavl(P) zunicode(P) spl zlib_deflate udf crc_itu_t bridge stp llc iptable_filter ipt_addrtype xt_NFQUEUE xt_dscp xt_hashlimit xt_conntrack xt_connmark xt_mark xt_multiport xt_DSCP xt_owner xt_iprange xt_string tun nvidia(P) asus_atk0110 usblp i2c_piix4 rtc_cmos sky2 iscsi_tcp libiscsi_tcp libiscsi raid10 raid456 async_raid6_recov async_memcpy async_pq async_xor xor async_tx raid6_pq raid0 dm_snapshot dm_crypt dm_mirror dm_region_hash dm_log scsi_wait_scan hid_sunplus hid_sony hid_samsung hid_pl hid_petalynx hid_monterey hid_microsoft hid_logitech ff_memless hid_gyration hid_ezkey hid_cypress hid_chicony hid_cherry hid_belkin hid_apple hid_a4tech sl811_hcd scsi_transport_fc scsi_tgt
2011-06-13T12:59:32.894281+02:00 (none) kernel: Pid: 20569, comm: splat Tainted: P 2.6.38-gentoo-r7 #4
2011-06-13T12:59:32.894284+02:00 (none) kernel: Call Trace:
2011-06-13T12:59:32.894297+02:00 (none) kernel: [] ? __schedule_bug+0x5c/0x60
2011-06-13T12:59:32.894301+02:00 (none) kernel: [] ? schedule+0x658/0x910
2011-06-13T12:59:32.894304+02:00 (none) kernel: [] ? xfs_bmap_search_extents+0x68/0x100
2011-06-13T12:59:32.894308+02:00 (none) kernel: [] ? cpumask_next_and+0x35/0x50
2011-06-13T12:59:32.894312+02:00 (none) kernel: [] ? select_idle_sibling+0x95/0x160
2011-06-13T12:59:32.894315+02:00 (none) kernel: [] ? schedule_timeout+0x1a5/0x200
2011-06-13T12:59:32.894336+02:00 (none) kernel: [] ? wait_for_common+0xc0/0x150
2011-06-13T12:59:32.894340+02:00 (none) kernel: [] ? default_wake_function+0x0/0x10
2011-06-13T12:59:32.894344+02:00 (none) kernel: [] ? splat_atomic_work+0x0/0x300 [splat]
2011-06-13T12:59:32.894347+02:00 (none) kernel: [] ? wait_for_completion+0x18/0x20
2011-06-13T12:59:32.894350+02:00 (none) kernel: [] ? kthread_create+0x9c/0x120
2011-06-13T12:59:32.894371+02:00 (none) kernel: [] ? thread_generic_wrapper+0x0/0x90 [spl]
2011-06-13T12:59:32.894376+02:00 (none) kernel: [] ? kmem_alloc_debug+0xdb/0x120 [spl]
2011-06-13T12:59:32.894392+02:00 (none) kernel: [] ? __thread_create+0x108/0x150 [spl]
2011-06-13T12:59:32.894411+02:00 (none) kernel: [] ? splat_atomic_test1+0xdd/0x320 [splat]
2011-06-13T12:59:32.894416+02:00 (none) kernel: [] ? default_wake_function+0xd/0x10
2011-06-13T12:59:32.894432+02:00 (none) kernel: [] ? __wake_up+0x46/0x60
2011-06-13T12:59:32.894437+02:00 (none) kernel: [] ? autoremove_wake_function+0x0/0x40
2011-06-13T12:59:32.894454+02:00 (none) kernel: [] ? splat_unlocked_ioctl+0x604/0x6d0 [splat]
2011-06-13T12:59:32.894459+02:00 (none) kernel: [] ? __wake_up+0x46/0x60
2011-06-13T12:59:32.894475+02:00 (none) kernel: [] ? fsnotify+0x1c5/0x2d0
2011-06-13T12:59:32.894480+02:00 (none) kernel: [] ? do_vfs_ioctl+0x91/0x520
2011-06-13T12:59:32.894495+02:00 (none) kernel: [] ? sys_ioctl+0x89/0x90
2011-06-13T12:59:32.894500+02:00 (none) kernel: [] ? do_device_not_available+0x9/0x10
2011-06-13T12:59:32.894503+02:00 (none) kernel: [] ? system_call_fastpath+0x16/0x1b
2011-06-13T12:59:32.894519+02:00 (none) kernel: BUG: scheduling while atomic: splat/20569/0x00000002
2011-06-13T12:59:32.894538+02:00 (none) kernel: Modules linked in: splat zfs(P) zcommon(P) znvpair(P) zavl(P) zunicode(P) spl zlib_deflate udf crc_itu_t bridge stp llc iptable_filter ipt_addrtype xt_NFQUEUE xt_dscp xt_hashlimit xt_conntrack xt_connmark xt_mark xt_multiport xt_DSCP xt_owner xt_iprange xt_string tun nvidia(P) asus_atk0110 usblp i2c_piix4 rtc_cmos sky2 iscsi_tcp libiscsi_tcp libiscsi raid10 raid456 async_raid6_recov async_memcpy async_pq async_xor xor async_tx raid6_pq raid0 dm_snapshot dm_crypt dm_mirror dm_region_hash dm_log scsi_wait_scan hid_sunplus hid_sony hid_samsung hid_pl hid_petalynx hid_monterey hid_microsoft hid_logitech ff_memless hid_gyration hid_ezkey hid_cypress hid_chicony hid_cherry hid_belkin hid_apple hid_a4tech sl811_hcd scsi_transport_fc scsi_tgt
2011-06-13T12:59:32.894542+02:00 (none) kernel: Pid: 20569, comm: splat Tainted: P 2.6.38-gentoo-r7 #4
2011-06-13T12:59:32.894544+02:00 (none) kernel: Call Trace:
2011-06-13T12:59:32.894547+02:00 (none) kernel: [] ? __schedule_bug+0x5c/0x60
2011-06-13T12:59:32.894550+02:00 (none) kernel: [] ? schedule+0x658/0x910
2011-06-13T12:59:32.894553+02:00 (none) kernel: [] ? cpumask_next_and+0x35/0x50
2011-06-13T12:59:32.894556+02:00 (none) kernel: [] ? select_idle_sibling+0x95/0x160
2011-06-13T12:59:32.894559+02:00 (none) kernel: [] ? schedule_timeout+0x1a5/0x200
2011-06-13T12:59:32.894575+02:00 (none) kernel: [] ? update_curr+0xc7/0x190
2011-06-13T12:59:32.894579+02:00 (none) kernel: [] ? wait_for_common+0xc0/0x150
2011-06-13T12:59:32.894582+02:00 (none) kernel: [] ? default_wake_function+0x0/0x10
2011-06-13T12:59:32.894585+02:00 (none) kernel: [] ? splat_atomic_work+0x0/0x300 [splat]
2011-06-13T12:59:32.894606+02:00 (none) kernel: [] ? wait_for_completion+0x18/0x20
2011-06-13T12:59:32.894625+02:00 (none) kernel: [] ? kthread_create+0x9c/0x120
2011-06-13T12:59:32.894630+02:00 (none) kernel: [] ? thread_generic_wrapper+0x0/0x90 [spl]
2011-06-13T12:59:32.894647+02:00 (none) kernel: [] ? kmem_alloc_debug+0xdb/0x120 [spl]
2011-06-13T12:59:32.894652+02:00 (none) kernel: [] ? __thread_create+0x108/0x150 [spl]
2011-06-13T12:59:32.894658+02:00 (none) kernel: [] ? splat_atomic_test1+0xdd/0x320 [splat]
2011-06-13T12:59:32.894774+02:00 (none) kernel: [] ? default_wake_function+0xd/0x10
2011-06-13T12:59:32.894783+02:00 (none) kernel: [] ? __wake_up+0x46/0x60
2011-06-13T12:59:32.894788+02:00 (none) kernel: [] ? autoremove_wake_function+0x0/0x40
2011-06-13T12:59:32.894792+02:00 (none) kernel: [] ? splat_unlocked_ioctl+0x604/0x6d0 [splat]
2011-06-13T12:59:32.894795+02:00 (none) kernel: [] ? __wake_up+0x46/0x60
2011-06-13T12:59:32.894811+02:00 (none) kernel: [] ? fsnotify+0x1c5/0x2d0
2011-06-13T12:59:32.894816+02:00 (none) kernel: [] ? do_vfs_ioctl+0x91/0x520
2011-06-13T12:59:32.894819+02:00 (none) kernel: [] ? sys_ioctl+0x89/0x90
2011-06-13T12:59:32.894834+02:00 (none) kernel: [] ? do_device_not_available+0x9/0x10
2011-06-13T12:59:32.894840+02:00 (none) kernel: [] ? system_call_fastpath+0x16/0x1b
2011-06-13T12:59:32.894843+02:00 (none) kernel: BUG: scheduling while atomic: splat/20569/0x00000002
2011-06-13T12:59:32.894861+02:00 (none) kernel: Modules linked in: splat zfs(P) zcommon(P) znvpair(P) zavl(P) zunicode(P) spl zlib_deflate udf crc_itu_t bridge stp llc iptable_filter ipt_addrtype xt_NFQUEUE xt_dscp xt_hashlimit xt_conntrack xt_connmark xt_mark xt_multiport xt_DSCP xt_owner xt_iprange xt_string tun nvidia(P) asus_atk0110 usblp i2c_piix4 rtc_cmos sky2 iscsi_tcp libiscsi_tcp libiscsi raid10 raid456 async_raid6_recov async_memcpy async_pq async_xor xor async_tx raid6_pq raid0 dm_snapshot dm_crypt dm_mirror dm_region_hash dm_log scsi_wait_scan hid_sunplus hid_sony hid_samsung hid_pl hid_petalynx hid_monterey hid_microsoft hid_logitech ff_memless hid_gyration hid_ezkey hid_cypress hid_chicony hid_cherry hid_belkin hid_apple hid_a4tech sl811_hcd scsi_transport_fc scsi_tgt
2011-06-13T12:59:32.894869+02:00 (none) kernel: Pid: 20569, comm: splat Tainted: P 2.6.38-gentoo-r7 #4
2011-06-13T12:59:32.894872+02:00 (none) kernel: Call Trace:
2011-06-13T12:59:32.894875+02:00 (none) kernel: [] ? __schedule_bug+0x5c/0x60
2011-06-13T12:59:32.894878+02:00 (none) kernel: [] ? schedule+0x658/0x910
2011-06-13T12:59:32.894881+02:00 (none) kernel: [] ? cpumask_next_and+0x35/0x50
2011-06-13T12:59:32.894884+02:00 (none) kernel: [] ? select_idle_sibling+0x95/0x160
2011-06-13T12:59:32.894887+02:00 (none) kernel: [] ? schedule_timeout+0x1a5/0x200
2011-06-13T12:59:32.894890+02:00 (none) kernel: [] ? native_smp_send_reschedule+0x3c/0x60
2011-06-13T12:59:32.894907+02:00 (none) kernel: [] ? resched_task+0x60/0x70
2011-06-13T12:59:32.894911+02:00 (none) kernel: [] ? wait_for_common+0xc0/0x150
2011-06-13T12:59:32.894914+02:00 (none) kernel: [] ? default_wake_function+0x0/0x10
2011-06-13T12:59:32.894933+02:00 (none) kernel: [] ? splat_atomic_work+0x0/0x300 [splat]
2011-06-13T12:59:32.894951+02:00 (none) kernel: [] ? wait_for_completion+0x18/0x20
2011-06-13T12:59:32.894963+02:00 (none) kernel: [] ? kthread_create+0x9c/0x120
2011-06-13T12:59:32.894980+02:00 (none) kernel: [] ? thread_generic_wrapper+0x0/0x90 [spl]
2011-06-13T12:59:32.894986+02:00 (none) kernel: [] ? kmem_alloc_debug+0xdb/0x120 [spl]
2011-06-13T12:59:32.894990+02:00 (none) kernel: [] ? __thread_create+0x108/0x150 [spl]
2011-06-13T12:59:32.894994+02:00 (none) kernel: [] ? splat_atomic_test1+0xdd/0x320 [splat]
2011-06-13T12:59:32.895010+02:00 (none) kernel: [] ? default_wake_function+0xd/0x10
2011-06-13T12:59:32.895015+02:00 (none) kernel: [] ? __wake_up+0x46/0x60
2011-06-13T12:59:32.895018+02:00 (none) kernel: [] ? autoremove_wake_function+0x0/0x40
2011-06-13T12:59:32.895034+02:00 (none) kernel: [] ? splat_unlocked_ioctl+0x604/0x6d0 [splat]
2011-06-13T12:59:32.895039+02:00 (none) kernel: [] ? __wake_up+0x46/0x60
2011-06-13T12:59:32.895042+02:00 (none) kernel: [] ? fsnotify+0x1c5/0x2d0
2011-06-13T12:59:32.895046+02:00 (none) kernel: [] ? do_vfs_ioctl+0x91/0x520
2011-06-13T12:59:32.895050+02:00 (none) kernel: [] ? sys_ioctl+0x89/0x90
2011-06-13T12:59:32.895053+02:00 (none) kernel: [] ? do_device_not_available+0x9/0x10
2011-06-13T12:59:32.895068+02:00 (none) kernel: [] ? system_call_fastpath+0x16/0x1b
2011-06-13T12:59:32.897132+02:00 (none) kernel: BUG: scheduling while atomic: splat/20569/0x00000002
2011-06-13T12:59:32.897164+02:00 (none) kernel: Modules linked in: splat zfs(P) zcommon(P) znvpair(P) zavl(P) zunicode(P) spl zlib_deflate udf crc_itu_t bridge stp llc iptable_filter ipt_addrtype xt_NFQUEUE xt_dscp xt_hashlimit xt_conntrack xt_connmark xt_mark xt_multiport xt_DSCP xt_owner xt_iprange xt_string tun nvidia(P) asus_atk0110 usblp i2c_piix4 rtc_cmos sky2 iscsi_tcp libiscsi_tcp libiscsi raid10 raid456 async_raid6_recov async_memcpy async_pq async_xor xor async_tx raid6_pq raid0 dm_snapshot dm_crypt dm_mirror dm_region_hash dm_log scsi_wait_scan hid_sunplus hid_sony hid_samsung hid_pl hid_petalynx hid_monterey hid_microsoft hid_logitech ff_memless hid_gyration hid_ezkey hid_cypress hid_chicony hid_cherry hid_belkin hid_apple hid_a4tech sl811_hcd scsi_transport_fc scsi_tgt
2011-06-13T12:59:32.897168+02:00 (none) kernel: Pid: 20569, comm: splat Tainted: P 2.6.38-gentoo-r7 #4
2011-06-13T12:59:32.897171+02:00 (none) kernel: Call Trace:
2011-06-13T12:59:32.897176+02:00 (none) kernel: [] ? __schedule_bug+0x5c/0x60
2011-06-13T12:59:32.897179+02:00 (none) kernel: [] ? schedule+0x658/0x910
2011-06-13T12:59:32.897183+02:00 (none) kernel: [] ? cpumask_next_and+0x35/0x50
2011-06-13T12:59:32.897186+02:00 (none) kernel: [] ? select_idle_sibling+0x95/0x160
2011-06-13T12:59:32.897189+02:00 (none) kernel: [] ? schedule_timeout+0x1a5/0x200
2011-06-13T12:59:32.897192+02:00 (none) kernel: [] ? update_curr+0xc7/0x190
2011-06-13T12:59:32.897195+02:00 (none) kernel: [] ? wait_for_common+0xc0/0x150
2011-06-13T12:59:32.897198+02:00 (none) kernel: [] ? default_wake_function+0x0/0x10
2011-06-13T12:59:32.897216+02:00 (none) kernel: [] ? splat_atomic_work+0x0/0x300 [splat]
2011-06-13T12:59:32.897220+02:00 (none) kernel: [] ? wait_for_completion+0x18/0x20
2011-06-13T12:59:32.897223+02:00 (none) kernel: [] ? kthread_create+0x9c/0x120
2011-06-13T12:59:32.897227+02:00 (none) kernel: [] ? thread_generic_wrapper+0x0/0x90 [spl]
2011-06-13T12:59:32.897230+02:00 (none) kernel: [] ? kmem_alloc_debug+0xdb/0x120 [spl]
2011-06-13T12:59:32.897233+02:00 (none) kernel: [] ? __thread_create+0x108/0x150 [spl]
2011-06-13T12:59:32.897237+02:00 (none) kernel: [] ? splat_atomic_test1+0xdd/0x320 [splat]
2011-06-13T12:59:32.897239+02:00 (none) kernel: [] ? default_wake_function+0xd/0x10
2011-06-13T12:59:32.897242+02:00 (none) kernel: [] ? __wake_up+0x46/0x60
2011-06-13T12:59:32.897245+02:00 (none) kernel: [] ? autoremove_wake_function+0x0/0x40
2011-06-13T12:59:32.897248+02:00 (none) kernel: [] ? splat_unlocked_ioctl+0x604/0x6d0 [splat]
2011-06-13T12:59:32.897251+02:00 (none) kernel: [] ? __wake_up+0x46/0x60
2011-06-13T12:59:32.897254+02:00 (none) kernel: [] ? fsnotify+0x1c5/0x2d0
2011-06-13T12:59:32.897257+02:00 (none) kernel: [] ? do_vfs_ioctl+0x91/0x520
2011-06-13T12:59:32.897260+02:00 (none) kernel: [] ? sys_ioctl+0x89/0x90
2011-06-13T12:59:32.897262+02:00 (none) kernel: [] ? do_device_not_available+0x9/0x10
2011-06-13T12:59:32.897281+02:00 (none) kernel: [] ? system_call_fastpath+0x16/0x1b
2011-06-13T12:59:32.897284+02:00 (none) kernel: BUG: scheduling while atomic: splat/20569/0x00000002
2011-06-13T12:59:32.897300+02:00 (none) kernel: Modules linked in: splat zfs(P) zcommon(P) znvpair(P) zavl(P) zunicode(P) spl zlib_deflate udf crc_itu_t bridge stp llc iptable_filter ipt_addrtype xt_NFQUEUE xt_dscp xt_hashlimit xt_conntrack xt_connmark xt_mark xt_multiport xt_DSCP xt_owner xt_iprange xt_string tun nvidia(P) asus_atk0110 usblp i2c_piix4 rtc_cmos sky2 iscsi_tcp libiscsi_tcp libiscsi raid10 raid456 async_raid6_recov async_memcpy async_pq async_xor xor async_tx raid6_pq raid0 dm_snapshot dm_crypt dm_mirror dm_region_hash dm_log scsi_wait_scan hid_sunplus hid_sony hid_samsung hid_pl hid_petalynx hid_monterey hid_microsoft hid_logitech ff_memless hid_gyration hid_ezkey hid_cypress hid_chicony hid_cherry hid_belkin hid_apple hid_a4tech sl811_hcd scsi_transport_fc scsi_tgt
2011-06-13T12:59:32.897304+02:00 (none) kernel: Pid: 20569, comm: splat Tainted: P 2.6.38-gentoo-r7 #4
2011-06-13T12:59:32.897306+02:00 (none) kernel: Call Trace:
2011-06-13T12:59:32.897326+02:00 (none) kernel: [] ? __schedule_bug+0x5c/0x60
2011-06-13T12:59:32.897330+02:00 (none) kernel: [] ? schedule+0x658/0x910
2011-06-13T12:59:32.897333+02:00 (none) kernel: [] ? cpumask_next_and+0x35/0x50
2011-06-13T12:59:32.897336+02:00 (none) kernel: [] ? select_idle_sibling+0x95/0x160
2011-06-13T12:59:32.897351+02:00 (none) kernel: [] ? schedule_timeout+0x1a5/0x200
2011-06-13T12:59:32.897354+02:00 (none) kernel: [] ? wait_for_common+0xc0/0x150
2011-06-13T12:59:32.897359+02:00 (none) kernel: [] ? default_wake_function+0x0/0x10
2011-06-13T12:59:32.897373+02:00 (none) kernel: [] ? splat_atomic_work+0x0/0x300 [splat]
2011-06-13T12:59:32.897376+02:00 (none) kernel: [] ? wait_for_completion+0x18/0x20
2011-06-13T12:59:32.897379+02:00 (none) kernel: [] ? kthread_create+0x9c/0x120
2011-06-13T12:59:32.897383+02:00 (none) kernel: [] ? thread_generic_wrapper+0x0/0x90 [spl]
2011-06-13T12:59:32.897386+02:00 (none) kernel: [] ? kmem_alloc_debug+0xdb/0x120 [spl]
2011-06-13T12:59:32.897400+02:00 (none) kernel: [] ? __thread_create+0x108/0x150 [spl]
2011-06-13T12:59:32.897404+02:00 (none) kernel: [] ? splat_atomic_test1+0xdd/0x320 [splat]
2011-06-13T12:59:32.897453+02:00 (none) kernel: [] ? default_wake_function+0xd/0x10
2011-06-13T12:59:32.897465+02:00 (none) kernel: [] ? __wake_up+0x46/0x60
2011-06-13T12:59:32.897891+02:00 (none) kernel: [] ? autoremove_wake_function+0x0/0x40
2011-06-13T12:59:32.897900+02:00 (none) kernel: [] ? splat_unlocked_ioctl+0x604/0x6d0 [splat]
2011-06-13T12:59:32.897905+02:00 (none) kernel: [] ? __wake_up+0x46/0x60
2011-06-13T12:59:32.897912+02:00 (none) kernel: [] ? fsnotify+0x1c5/0x2d0
2011-06-13T12:59:32.897915+02:00 (none) kernel: [] ? do_vfs_ioctl+0x91/0x520
2011-06-13T12:59:32.897918+02:00 (none) kernel: [] ? sys_ioctl+0x89/0x90
2011-06-13T12:59:32.897932+02:00 (none) kernel: [] ? do_device_not_available+0x9/0x10
2011-06-13T12:59:32.897936+02:00 (none) kernel: [] ? system_call_fastpath+0x16/0x1b
2011-06-13T12:59:32.897951+02:00 (none) kernel: BUG: scheduling while atomic: splat/20569/0x00000002
2011-06-13T12:59:32.897984+02:00 (none) kernel: Modules linked in: splat zfs(P) zcommon(P) znvpair(P) zavl(P) zunicode(P) spl zlib_deflate udf crc_itu_t bridge stp llc iptable_filter ipt_addrtype xt_NFQUEUE xt_dscp xt_hashlimit xt_conntrack xt_connmark xt_mark xt_multiport xt_DSCP xt_owner xt_iprange xt_string tun nvidia(P) asus_atk0110 usblp i2c_piix4 rtc_cmos sky2 iscsi_tcp libiscsi_tcp libiscsi raid10 raid456 async_raid6_recov async_memcpy async_pq async_xor xor async_tx raid6_pq raid0 dm_snapshot dm_crypt dm_mirror dm_region_hash dm_log scsi_wait_scan hid_sunplus hid_sony hid_samsung hid_pl hid_petalynx hid_monterey hid_microsoft hid_logitech ff_memless hid_gyration hid_ezkey hid_cypress hid_chicony hid_cherry hid_belkin hid_apple hid_a4tech sl811_hcd scsi_transport_fc scsi_tgt
2011-06-13T12:59:32.897989+02:00 (none) kernel: Pid: 20569, comm: splat Tainted: P 2.6.38-gentoo-r7 #4
2011-06-13T12:59:32.897991+02:00 (none) kernel: Call Trace:
2011-06-13T12:59:32.897996+02:00 (none) kernel: [] ? __schedule_bug+0x5c/0x60
2011-06-13T12:59:32.898000+02:00 (none) kernel: [] ? schedule+0x658/0x910
2011-06-13T12:59:32.898002+02:00 (none) kernel: [] ? cpumask_next_and+0x35/0x50
2011-06-13T12:59:32.898005+02:00 (none) kernel: [] ? select_idle_sibling+0x95/0x160
2011-06-13T12:59:32.898020+02:00 (none) kernel: [] ? schedule_timeout+0x1a5/0x200
2011-06-13T12:59:32.898023+02:00 (none) kernel: [] ? update_curr+0xc7/0x190
2011-06-13T12:59:32.898036+02:00 (none) kernel: [] ? wait_for_common+0xc0/0x150
2011-06-13T12:59:32.898040+02:00 (none) kernel: [] ? default_wake_function+0x0/0x10
2011-06-13T12:59:32.898045+02:00 (none) kernel: [] ? splat_atomic_work+0x0/0x300 [splat]
2011-06-13T12:59:32.898048+02:00 (none) kernel: [] ? wait_for_completion+0x18/0x20
2011-06-13T12:59:32.898060+02:00 (none) kernel: [] ? kthread_create+0x9c/0x120
2011-06-13T12:59:32.898065+02:00 (none) kernel: [] ? thread_generic_wrapper+0x0/0x90 [spl]
2011-06-13T12:59:32.898070+02:00 (none) kernel: [] ? kmem_alloc_debug+0xdb/0x120 [spl]
2011-06-13T12:59:32.898073+02:00 (none) kernel: [] ? __thread_create+0x108/0x150 [spl]
2011-06-13T12:59:32.898076+02:00 (none) kernel: [] ? splat_atomic_test1+0xdd/0x320 [splat]
2011-06-13T12:59:32.898079+02:00 (none) kernel: [] ? default_wake_function+0xd/0x10
2011-06-13T12:59:32.898082+02:00 (none) kernel: [] ? __wake_up+0x46/0x60
2011-06-13T12:59:32.898095+02:00 (none) kernel: [] ? autoremove_wake_function+0x0/0x40
2011-06-13T12:59:32.898099+02:00 (none) kernel: [] ? splat_unlocked_ioctl+0x604/0x6d0 [splat]
2011-06-13T12:59:32.898102+02:00 (none) kernel: [] ? __wake_up+0x46/0x60
2011-06-13T12:59:32.898116+02:00 (none) kernel: [] ? fsnotify+0x1c5/0x2d0
2011-06-13T12:59:32.898120+02:00 (none) kernel: [] ? do_vfs_ioctl+0x91/0x520
2011-06-13T12:59:32.898132+02:00 (none) kernel: [] ? sys_ioctl+0x89/0x90
2011-06-13T12:59:32.898137+02:00 (none) kernel: [] ? do_device_not_available+0x9/0x10
2011-06-13T12:59:32.898150+02:00 (none) kernel: [] ? system_call_fastpath+0x16/0x1b

Hope ths helps to improve ZFS on Linux. Ask me about any additional information as you find it appropriately.

Latest HEAD won't build

CC [M]  /tmp/zfs-build-root-jIwI3934/BUILD/zfs-0.6.0/module/zfs/../../module/zfs/zfs_acl.o
/tmp/zfs-build-root-jIwI3934/BUILD/zfs-0.6.0/module/zfs/../../module/zfs/zfs_acl.c: In function 'zfs_zaccess_dataset_check':
/tmp/zfs-build-root-jIwI3934/BUILD/zfs-0.6.0/module/zfs/../../module/zfs/zfs_acl.c:2140: error: 'MNT_READONLY' undeclared (first use in this function)
/tmp/zfs-build-root-jIwI3934/BUILD/zfs-0.6.0/module/zfs/../../module/zfs/zfs_acl.c:2140: error: (Each undeclared identifier is reported only once
/tmp/zfs-build-root-jIwI3934/BUILD/zfs-0.6.0/module/zfs/../../module/zfs/zfs_acl.c:2140: error: for each function it appears in.)
make[7]: *** [/tmp/zfs-build-root-jIwI3934/BUILD/zfs-0.6.0/module/zfs/../../module/zfs/zfs_acl.o] Error 1

Building spl

I am unable to insert the kernel module. I get this in dmesg:

spl: version magic '2.6.18-194.17.1.el5 SMP mod_unload gcc-4.4' should be '2.6.18-194.17.1.el5 SMP mod_unload gcc-4.1'

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.