Hi Tim,
Thanks for having a look.
The ''utf8only'' setting is set to off.
Important bit of additional information:
We only seem to have this problem when copying to a zfs filesystem with the
casesensitivity=mixed property. We need this because the filesystem will
eventually be shared over NFS and CIFS.
I attached a file with the relevant zfs properties of the filesystem that has
the problem.
See zfs-prop.txt. Notice that utf8only is set to off.
My locale is set to en_US.ISO8859-15 when doing the copy, but that
doesn''t seem to change anything. I tried with en_US.UTF-8 as well with
the same result.
A truss on the failed can be found in truss-ENOTSUP.txt.
Notice the \xf6 in the filename of the stat64, which gives an
"ENOTSUP".
When we take an the UTF-8 name, the stat64 succeeds just fine. A truss of this
can be found in truss-OK.txt
Cheers,
Kristof/
--
This message posted from opensolaris.org
-------------- next part --------------
Here are all relevant properties of the filesystem that has the problem:
NAME PROPERTY VALUE SOURCE
datapool/appl type filesystem -
datapool/appl compressratio 1.00x -
datapool/appl mounted yes -
datapool/appl quota none default
datapool/appl reservation none default
datapool/appl recordsize 128K default
datapool/appl mountpoint /datapool/appl default
datapool/appl checksum on default
datapool/appl compression off default
datapool/appl atime off inherited from
datapool
datapool/appl devices on default
datapool/appl exec on default
datapool/appl setuid on default
datapool/appl readonly off default
datapool/appl aclmode groupmask default
datapool/appl aclinherit passthrough inherited from
datapool
datapool/appl copies 1 default
datapool/appl version 3 -
datapool/appl utf8only off -
datapool/appl normalization none -
datapool/appl casesensitivity mixed -
datapool/appl vscan off default
datapool/appl nbmand on local
datapool/appl sharesmb on local
datapool/appl refquota none default
datapool/appl refreservation none default
datapool/appl primarycache all default
datapool/appl secondarycache all default
--------------------------------------------------------------------------------------------
-------------- next part --------------
--------------------------------------------------------------------------------------------
# truss /usr/bin/cp ISO8859-K?ln.url /datapool/appl
execve("/usr/bin/cp", 0x08047DBC, 0x08047DCC) argc = 3
sysconfig(_CONFIG_PAGESIZE) = 4096
mmap(0x00000000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, -1,
0) = 0xFEFB0000
resolvepath("/usr/lib/ld.so.1", "/lib/ld.so.1", 1023) = 12
resolvepath("/usr/bin/cp", "/usr/bin/cp", 1023) = 11
xstat(2, "/usr/bin/cp", 0x08047A80) = 0
open("/var/ld/ld.config", O_RDONLY) Err#2 ENOENT
xstat(2, "/lib/libc.so.1", 0x080471A0) = 0
resolvepath("/lib/libc.so.1", "/lib/libc.so.1", 1023) = 14
open("/lib/libc.so.1", O_RDONLY) = 3
mmap(0x00010000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_ALIGN, 3, 0) =
0xFEFA0000
mmap(0x00010000, 1413120, PROT_NONE,
MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFEE40000
mmap(0xFEE40000, 1302809, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_TEXT,
3, 0) = 0xFEE40000
mmap(0xFEF8F000, 30862, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED|MAP_INITDATA, 3, 1306624) = 0xFEF8F000
mmap(0xFEF97000, 4776, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED|MAP_ANON, -1, 0) = 0xFEF97000
munmap(0xFEF7F000, 65536) = 0
memcntl(0xFEE40000, 187632, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
close(3) = 0
mmap(0x00010000, 24576, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFEE30000
munmap(0xFEFA0000, 32768) = 0
getcontext(0x080477D0)
getrlimit(RLIMIT_STACK, 0x080477C8) = 0
getpid() = 1376 [1375]
lwp_private(0, 1, 0xFEE32A00) = 0x000001C3
setustack(0xFEE32A60)
sysi86(SI86FPSTART, 0xFEF979BC, 0x0000133F, 0x00001F80) = 0x00000001
sysconfig(_CONFIG_PAGESIZE) = 4096
brk(0x08068AB0) = 0
brk(0x0806AAB0) = 0
xstat(2, "/usr/lib/locale/en_US.UTF-8/en_US.UTF-8.so.3", 0x08046910) =
0
resolvepath("/usr/lib/locale/en_US.UTF-8/en_US.UTF-8.so.3",
"/usr/lib/locale/en_US.UTF-8/en_US.UTF-8.so.3", 1023) = 44
open("/usr/lib/locale/en_US.UTF-8/en_US.UTF-8.so.3", O_RDONLY) = 3
mmap(0x00010000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_ALIGN, 3, 0) =
0xFEE20000
mmap(0x00010000, 2539520, PROT_NONE,
MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFEA00000
mmap(0xFEA00000, 2470118, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_TEXT,
3, 0) = 0xFEA00000
mmap(0xFEC6B000, 3546, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED|MAP_INITDATA, 3, 2469888) = 0xFEC6B000
munmap(0xFEC5C000, 61440) = 0
memcntl(0xFEA00000, 7900, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
close(3) = 0
mmap(0x00000000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, -1,
0) = 0xFEE10000
xstat(2, "/usr/lib/locale/common/methods_unicode.so.3", 0x08046860) =
0
resolvepath("/usr/lib/locale/common/methods_unicode.so.3",
"/usr/lib/locale/common/methods_unicode.so.3", 1023) = 43
open("/usr/lib/locale/common/methods_unicode.so.3", O_RDONLY) = 3
mmap(0xFEE20000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) =
0xFEE20000
mmap(0x00010000, 122880, PROT_NONE,
MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFEDF0000
mmap(0xFEDF0000, 56821, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_TEXT, 3,
0) = 0xFEDF0000
mmap(0xFEE0D000, 4052, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED|MAP_INITDATA, 3, 53248) = 0xFEE0D000
munmap(0xFEDFE000, 61440) = 0
memcntl(0xFEDF0000, 3372, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
close(3) = 0
munmap(0xFEE20000, 32768) = 0
brk(0x0806AAB0) = 0
brk(0x08072AB0) = 0
brk(0x08072AB0) = 0
brk(0x08080AB0) = 0
brk(0x08080AB0) = 0
brk(0x08088AB0) = 0
brk(0x08088AB0) = 0
brk(0x08096AB0) = 0
stat64("ISO8859-K\xf6ln.url", 0x08068478) = 0
xstat(2, "/lib/libsec.so.1", 0x080466C8) = 0
resolvepath("/lib/libsec.so.1", "/lib/libsec.so.1", 1023) =
16
open("/lib/libsec.so.1", O_RDONLY) = 3
mmap(0x00010000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_ALIGN, 3, 0) =
0xFEDE0000
mmap(0x00010000, 90112, PROT_NONE, MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN,
-1, 0) = 0xFEDC0000
mmap(0xFEDC0000, 63307, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_TEXT, 3,
0) = 0xFEDC0000
mmap(0xFEDD0000, 15109, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_INITDATA, 3, 65536) = 0xFEDD0000
mmap(0xFEDD4000, 7392, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANON, -1,
0) = 0xFEDD4000
memcntl(0xFEDC0000, 15288, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
close(3) = 0
munmap(0xFEDE0000, 32768) = 0
pathconf("ISO8859-K\xf6ln.url", 20) = 2
acl("ISO8859-K\xf6ln.url", ACE_GETACLCNT, 0, 0x00000000) = 6
stat64("ISO8859-K\xf6ln.url", 0x08046FD0) = 0
acl("ISO8859-K\xf6ln.url", ACE_GETACL, 6, 0x08069D00) = 6
stat64("/datapool/appl", 0x080683E8) = 0
stat64("/datapool/appl/ISO8859-K\xf6ln.url", 0x080683E8) Err#48
ENOTSUP
open64("ISO8859-K\xf6ln.url", O_RDONLY) = 3
creat64("/datapool/appl/ISO8859-K\xf6ln.url", 0755) Err#48 ENOTSUP
open("/usr/lib/locale/en_US.UTF-8/LC_MESSAGES/SUNW_OST_OSCMD.mo",
O_RDONLY) Err#2 ENOENT
fstat64(2, 0x08046140) = 0
cpwrite(2, " c p", 2) = 2
: cannot create write(2, " : c a n n o t c r e".., 16) = 16
/datapool/appl/ISO8859-K?ln.urlwrite(2, " / d a t a p o o l / a p p l
/".., 28) = 28
: write(2, " : ", 2) = 2
open("/usr/lib/locale/en_US.UTF-8/LC_MESSAGES/SUNW_OST_OSLIB.mo",
O_RDONLY) Err#2 ENOENT
Operation not supportedwrite(2, " O p e r a t i o n n o".., 23)
= 23
write(2, "\n", 1) = 1
close(3) = 0
_exit(2)
--------------------------------------------------------------------------------------------
-------------- next part --------------
--------------------------------------------------------------------------------------------
# truss /usr/bin/cp UTF8-K?ln.txt /datapool/appl
execve("/usr/bin/cp", 0x08047DC0, 0x08047DD0) argc = 3
mmap(0x00000000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, -1,
0) = 0xFEFB0000
resolvepath("/usr/lib/ld.so.1", "/lib/ld.so.1", 1023) = 12
resolvepath("/usr/bin/cp", "/usr/bin/cp", 1023) = 11
sysconfig(_CONFIG_PAGESIZE) = 4096
xstat(2, "/usr/bin/cp", 0x08047A84) = 0
open("/var/ld/ld.config", O_RDONLY) Err#2 ENOENT
xstat(2, "/lib/libc.so.1", 0x080471A4) = 0
resolvepath("/lib/libc.so.1", "/lib/libc.so.1", 1023) = 14
open("/lib/libc.so.1", O_RDONLY) = 3
mmap(0x00010000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_ALIGN, 3, 0) =
0xFEFA0000
mmap(0x00010000, 1413120, PROT_NONE,
MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFEE40000
mmap(0xFEE40000, 1302809, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_TEXT,
3, 0) = 0xFEE40000
mmap(0xFEF8F000, 30862, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED|MAP_INITDATA, 3, 1306624) = 0xFEF8F000
mmap(0xFEF97000, 4776, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED|MAP_ANON, -1, 0) = 0xFEF97000
munmap(0xFEF7F000, 65536) = 0
memcntl(0xFEE40000, 187632, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
close(3) = 0
mmap(0x00010000, 24576, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFEE30000
munmap(0xFEFA0000, 32768) = 0
getcontext(0x080477D4)
getrlimit(RLIMIT_STACK, 0x080477CC) = 0
getpid() = 1419 [1418]
lwp_private(0, 1, 0xFEE32A00) = 0x000001C3
setustack(0xFEE32A60)
sysi86(SI86FPSTART, 0xFEF979BC, 0x0000133F, 0x00001F80) = 0x00000001
brk(0x08068AB0) = 0
brk(0x0806AAB0) = 0
xstat(2, "/usr/lib/locale/en_US.UTF-8/en_US.UTF-8.so.3", 0x08046910) =
0
resolvepath("/usr/lib/locale/en_US.UTF-8/en_US.UTF-8.so.3",
"/usr/lib/locale/en_US.UTF-8/en_US.UTF-8.so.3", 1023) = 44
open("/usr/lib/locale/en_US.UTF-8/en_US.UTF-8.so.3", O_RDONLY) = 3
mmap(0x00010000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_ALIGN, 3, 0) =
0xFEE20000
mmap(0x00010000, 2539520, PROT_NONE,
MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFEA00000
mmap(0xFEA00000, 2470118, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_TEXT,
3, 0) = 0xFEA00000
mmap(0xFEC6B000, 3546, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED|MAP_INITDATA, 3, 2469888) = 0xFEC6B000
munmap(0xFEC5C000, 61440) = 0
memcntl(0xFEA00000, 7900, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
close(3) = 0
mmap(0x00000000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, -1,
0) = 0xFEE10000
xstat(2, "/usr/lib/locale/common/methods_unicode.so.3", 0x08046860) =
0
resolvepath("/usr/lib/locale/common/methods_unicode.so.3",
"/usr/lib/locale/common/methods_unicode.so.3", 1023) = 43
open("/usr/lib/locale/common/methods_unicode.so.3", O_RDONLY) = 3
mmap(0xFEE20000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) =
0xFEE20000
mmap(0x00010000, 122880, PROT_NONE,
MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFEDF0000
mmap(0xFEDF0000, 56821, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_TEXT, 3,
0) = 0xFEDF0000
mmap(0xFEE0D000, 4052, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED|MAP_INITDATA, 3, 53248) = 0xFEE0D000
munmap(0xFEDFE000, 61440) = 0
memcntl(0xFEDF0000, 3372, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
close(3) = 0
munmap(0xFEE20000, 32768) = 0
brk(0x0806AAB0) = 0
brk(0x08072AB0) = 0
brk(0x08072AB0) = 0
brk(0x08080AB0) = 0
brk(0x08080AB0) = 0
brk(0x08088AB0) = 0
brk(0x08088AB0) = 0
brk(0x08096AB0) = 0
sysconfig(_CONFIG_PAGESIZE) = 4096
stat64("UTF8-K\xc3\xb6ln.txt", 0x08068478) = 0
xstat(2, "/lib/libsec.so.1", 0x080466C8) = 0
resolvepath("/lib/libsec.so.1", "/lib/libsec.so.1", 1023) =
16
open("/lib/libsec.so.1", O_RDONLY) = 3
mmap(0x00010000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_ALIGN, 3, 0) =
0xFEDE0000
mmap(0x00010000, 90112, PROT_NONE, MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN,
-1, 0) = 0xFEDC0000
mmap(0xFEDC0000, 63307, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_TEXT, 3,
0) = 0xFEDC0000
mmap(0xFEDD0000, 15109, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_INITDATA, 3, 65536) = 0xFEDD0000
mmap(0xFEDD4000, 7392, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANON, -1,
0) = 0xFEDD4000
memcntl(0xFEDC0000, 15288, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
close(3) = 0
munmap(0xFEDE0000, 32768) = 0
pathconf("UTF8-K\xc3\xb6ln.txt", 20) = 2
acl("UTF8-K\xc3\xb6ln.txt", ACE_GETACLCNT, 0, 0x00000000) = 6
stat64("UTF8-K\xc3\xb6ln.txt", 0x08046FD0) = 0
acl("UTF8-K\xc3\xb6ln.txt", ACE_GETACL, 6, 0x08069D00) = 6
stat64("/datapool/appl", 0x080683E8) = 0
stat64("/datapool/appl/UTF8-K\xc3\xb6ln.txt", 0x080683E8) = 0
open64("UTF8-K\xc3\xb6ln.txt", O_RDONLY) = 3
creat64("/datapool/appl/UTF8-K\xc3\xb6ln.txt", 0644) = 4
stat64("/datapool/appl/UTF8-K\xc3\xb6ln.txt", 0x080683E8) = 0
fstat64(3, 0x08068478) = 0
xstat(2, "/lib/libcmdutils.so.1", 0x080466F8) = 0
resolvepath("/lib/libcmdutils.so.1",
"/lib/libcmdutils.so.1", 1023) = 21
open("/lib/libcmdutils.so.1", O_RDONLY) = 5
mmap(0x00010000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_ALIGN, 5, 0) =
0xFEDB0000
mmap(0x00010000, 81920, PROT_NONE, MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN,
-1, 0) = 0xFED90000
mmap(0xFED90000, 12174, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_TEXT, 5,
0) = 0xFED90000
mmap(0xFEDA3000, 596, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_INITDATA,
5, 12288) = 0xFEDA3000
munmap(0xFED93000, 65536) = 0
memcntl(0xFED90000, 4248, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
close(5) = 0
munmap(0xFEDB0000, 32768) = 0
read(3, 0x0803F0C0, 32768) = 0
close(3) = 0
close(4) = 0
_exit(0)
--------------------------------------------------------------------------------------------