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) = ?