GNU bug report logs -
#12523
Solaris 10 "cp -p" returns unknown error on NFSv4 share,permissions preserve not work
Previous Next
To reply to this bug, email your comments to 12523 AT debbugs.gnu.org.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-coreutils <at> gnu.org
:
bug#12523
; Package
coreutils
.
(Wed, 26 Sep 2012 15:58:01 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
"Ryba, Lukas" <Lukas.Ryba <at> Commerzbank.com>
:
New bug report received and forwarded. Copy sent to
bug-coreutils <at> gnu.org
.
(Wed, 26 Sep 2012 15:58:01 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
Hello,
i want to report bug in coreutils 8.19 observed on Solaris 10 update 9 and 10 on i386 and sparc platforms(i386-Generic_147441-07/sparc-Generic_147440-07).
Copy preserve does not work on NFSv4 share and omit permissions. "Unknown system error" returned. Files have no acls set.
Way to reproduce:
-rwxr--r-- 1 myuser mygroup 0 Sep 26 12:47 test1
myuser <at> testbox:~$ /opt/gsb/bin/cp -p test1 test2
/opt/gsb/bin/cp: 'test1': Unknown system error
myuser <at> testbos:~$ ls -l test2
Expected result:
-rwxr--r-- 1 myuser mygroup 0 Sep 26 12:47 test2
Actual result:
-rwx------ 1 myuser mygroup 0 Sep 26 12:47 test2
Some truss output show me problem with acl calls:
truss cp -p test1 test2
- snip -
brk(0x1001349D0) = 0
brk(0x1001389D0) = 0
stat("test2", 0xFFFFFFFF7FFFF498) Err#2 ENOENT
stat("test1", 0xFFFFFFFF7FFFF250) = 0
stat("test2", 0xFFFFFFFF7FFFF1D0) Err#2 ENOENT
open("test1", O_RDONLY) = 3
fstat(3, 0xFFFFFFFF7FFFEE28) = 0
open("test2", O_WRONLY|O_CREAT|O_EXCL, 0700) = 4
fstat(4, 0xFFFFFFFF7FFFED28) = 0
sysconfig(_CONFIG_PAGESIZE) = 8192
brk(0x1001389D0) = 0
brk(0x1001489D0) = 0
read(3, 0x100136000, 65536) = 0
futimens(4, 0xFFFFFFFF7FFFEAB8) = 0
fchown(4, 31219, 20) = 0
facl(3, ACE_GETACLCNT, 0, 0x00000000) = 6
facl(3, ACE_GETACL, 6, 0x1001472A0) Err#-1
brk(0x1001489D0) = 0
brk(0x10014C9D0) = 0
open("/opt/gsb/lib/sparcv9/charset.alias", O_RDONLY|O_NOFOLLOW) = 5
fcntl(5, F_GETFD, 0x00000001) = 0
fstat(5, 0xFFFFFFFF7FFFE240) = 0
fstat(5, 0xFFFFFFFF7FFFE110) = 0
ioctl(5, TCGETA, 0xFFFFFFFF7FFFE17C) Err#25 ENOTTY
read(5, " # T h i s f i l e ".., 1024) = 635
brk(0x10014C9D0) = 0
brk(0x1001509D0) = 0
read(5, 0x1001492B4, 1024) = 0
lseek(5, 0, SEEK_CUR) = 635
close(5) = 0
fcntl(1, F_GETFL) = 8194
fstat(2, 0xFFFFFFFF7FFFD750) = 0
/opt/gsb/bin/cpwrite(2, " / o p t / g s b / b i n".., 15) = 15
: write(2, " : ", 2) = 2
'test1'write(2, " ' t e s t 1 '", 7) = 7
: write(2, " : ", 2) = 2
Unknown system errorwrite(2, " U n k n o w n s y s t".., 20) = 20
write(2, "\n", 1) = 1
close(4) = 0
- snip -
Coreutils compiled with "--without-gmp". Compiled with Oracle Studio 12.3 and tested with gcc 3.4.3 too.
Described problem above does not occur when coreutils are compiled with "--disable-acl" configure option.
Regards
Lukas Ryba
Information forwarded
to
bug-coreutils <at> gnu.org
:
bug#12523
; Package
coreutils
.
(Thu, 27 Sep 2012 03:16:01 GMT)
Full text and
rfc822 format available.
Message #8 received at 12523 <at> debbugs.gnu.org (full text, mbox):
On 09/26/2012 05:16 AM, Ryba, Lukas wrote:
> facl(3, ACE_GETACL, 6, 0x1001472A0) Err#-1
So, facl failed and set errno to -1?
Can you investigate why that might happen? facl is not
supposed to do that. facl is a system call, which means
the Solaris kernel's doing it.
Information forwarded
to
bug-coreutils <at> gnu.org
:
bug#12523
; Package
coreutils
.
(Thu, 04 Oct 2012 09:23:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 12523 <at> debbugs.gnu.org (full text, mbox):
Hello,
i opened support case with the vendor. We have to sort out other possible issues(NFS server/client,configuration etc) but solaris libc is suspicious.
Workaround is simple. Just not use facl call right now. acl works ok.
I reproduced this error on Solaris 10 update 6 too, so it seems to be not update specific issue.
Regards
Lukas Ryba
-----Original Message-----
From: Paul Eggert [mailto:eggert <at> cs.ucla.edu]
Sent: Thursday, September 27, 2012 5:16 AM
To: Ryba, Lukas
Cc: 12523 <at> debbugs.gnu.org
Subject: Re: bug#12523: Solaris 10 "cp -p" returns unknown error on NFSv4 share, permissions preserve not work
On 09/26/2012 05:16 AM, Ryba, Lukas wrote:
> facl(3, ACE_GETACL, 6, 0x1001472A0) Err#-1
So, facl failed and set errno to -1?
Can you investigate why that might happen? facl is not
supposed to do that. facl is a system call, which means
the Solaris kernel's doing it.
Information forwarded
to
bug-coreutils <at> gnu.org
:
bug#12523
; Package
coreutils
.
(Thu, 04 Oct 2012 15:54:01 GMT)
Full text and
rfc822 format available.
Message #14 received at 12523 <at> debbugs.gnu.org (full text, mbox):
On 10/04/2012 02:19 AM, Ryba, Lukas wrote:
> Workaround is simple. Just not use facl call right now. acl works ok.
That might work around the problem on your Solaris implementation,
but it introduces other issues, on other platforms, so I'd like
to get at the bottom of why such a change is really needed.
Information forwarded
to
bug-coreutils <at> gnu.org
:
bug#12523
; Package
coreutils
.
(Mon, 08 Oct 2012 11:46:02 GMT)
Full text and
rfc822 format available.
Message #17 received at 12523 <at> debbugs.gnu.org (full text, mbox):
Vendor currently investigated that problem happens with the combination of ZFS filesystem on NFSv3 only server and NFSv3 client.
1. facl with combination of ZFS filesystem(NFSv4 acls) exported by NFSv4 server is ok
2. facl with combination of UFS filesystem(POSIX acls) exported by NFSv3 server is ok
3. facl with combination of ZFS filesystem(NFSv4 acls) exported by NFSv3 server fails on client with errno -1 which is our case
IMHO errno value in case 3 should be something useful. Like ENOTSUP.
-----Original Message-----
From: Paul Eggert [mailto:eggert <at> cs.ucla.edu]
Sent: Thursday, October 04, 2012 5:53 PM
To: Ryba, Lukas
Cc: 12523 <at> debbugs.gnu.org
Subject: Re: bug#12523: Solaris 10 "cp -p" returns unknown error on NFSv4 share, permissions preserve not work
On 10/04/2012 02:19 AM, Ryba, Lukas wrote:
> Workaround is simple. Just not use facl call right now. acl works ok.
That might work around the problem on your Solaris implementation,
but it introduces other issues, on other platforms, so I'd like
to get at the bottom of why such a change is really needed.
Information forwarded
to
bug-coreutils <at> gnu.org
:
bug#12523
; Package
coreutils
.
(Mon, 08 Oct 2012 16:15:02 GMT)
Full text and
rfc822 format available.
Message #20 received at 12523 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
On 10/08/2012 05:45 AM, Ryba, Lukas wrote:
> Vendor currently investigated that problem happens with the combination of ZFS filesystem on NFSv3 only server and NFSv3 client.
>
> 1. facl with combination of ZFS filesystem(NFSv4 acls) exported by NFSv4 server is ok
> 2. facl with combination of UFS filesystem(POSIX acls) exported by NFSv3 server is ok
> 3. facl with combination of ZFS filesystem(NFSv4 acls) exported by NFSv3 server fails on client with errno -1 which is our case
> IMHO errno value in case 3 should be something useful. Like ENOTSUP.
I wonder if gnulib should write rpl_facl() that checks for the case of
facl() failing with errno set to -1 and explicitly reset errno to
ENOTSUP in that case, to work around this vendor bug.
>
> -----Original Message-----
> From: Paul Eggert [mailto:eggert <at> cs.ucla.edu]
> Sent: Thursday, October 04, 2012 5:53 PM
> To: Ryba, Lukas
> Cc: 12523 <at> debbugs.gnu.org
> Subject: Re: bug#12523: Solaris 10 "cp -p" returns unknown error on NFSv4 share, permissions preserve not work
>
> On 10/04/2012 02:19 AM, Ryba, Lukas wrote:
>> Workaround is simple. Just not use facl call right now. acl works ok.
>
> That might work around the problem on your Solaris implementation,
> but it introduces other issues, on other platforms, so I'd like
> to get at the bottom of why such a change is really needed.
>
--
Eric Blake eblake <at> redhat.com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
[signature.asc (application/pgp-signature, attachment)]
Information forwarded
to
bug-coreutils <at> gnu.org
:
bug#12523
; Package
coreutils
.
(Mon, 08 Oct 2012 17:46:02 GMT)
Full text and
rfc822 format available.
Message #23 received at 12523 <at> debbugs.gnu.org (full text, mbox):
Eric Blake wrote:
> On 10/08/2012 05:45 AM, Ryba, Lukas wrote:
>> Vendor currently investigated that problem happens with the
>> combination of ZFS filesystem on NFSv3 only server and NFSv3 client.
>>
>> 1. facl with combination of ZFS filesystem(NFSv4 acls) exported by
>> NFSv4 server is ok
>> 2. facl with combination of UFS filesystem(POSIX acls) exported by
>> NFSv3 server is ok
>> 3. facl with combination of ZFS filesystem(NFSv4 acls) exported by
>> NFSv3 server fails on client with errno -1 which is our case
>> IMHO errno value in case 3 should be something useful. Like ENOTSUP.
>
> I wonder if gnulib should write rpl_facl() that checks for the case of
> facl() failing with errno set to -1 and explicitly reset errno to
> ENOTSUP in that case, to work around this vendor bug.
Sounds good to me, especially if the reporter confirms the fix.
The added overhead of a wrapper and test-upon-failure should be
acceptable for a function like facl.
>> -----Original Message-----
>> From: Paul Eggert [mailto:eggert <at> cs.ucla.edu]
>> Sent: Thursday, October 04, 2012 5:53 PM
>> To: Ryba, Lukas
>> Cc: 12523 <at> debbugs.gnu.org
>> Subject: Re: bug#12523: Solaris 10 "cp -p" returns unknown error on
>> NFSv4 share, permissions preserve not work
>>
>> On 10/04/2012 02:19 AM, Ryba, Lukas wrote:
>>> Workaround is simple. Just not use facl call right now. acl works ok.
>>
>> That might work around the problem on your Solaris implementation,
>> but it introduces other issues, on other platforms, so I'd like
>> to get at the bottom of why such a change is really needed.
Information forwarded
to
bug-coreutils <at> gnu.org
:
bug#12523
; Package
coreutils
.
(Fri, 12 Oct 2012 12:06:01 GMT)
Full text and
rfc822 format available.
Message #26 received at 12523 <at> debbugs.gnu.org (full text, mbox):
Oracle confirmed 'Bug 7161825 : acl() syscall can set errno to -1 rather than a valid error code'. It is fixed in Solaris 11(s11u1_17). Developers from Oracle are working on backporting fix to Solaris 10 right now.
From oficial description of bug correct errno code should be EFAULT.
-----Original Message-----
From: Jim Meyering [mailto:jim <at> meyering.net]
Sent: Monday, October 08, 2012 7:45 PM
To: Eric Blake
Cc: Ryba, Lukas; 'Paul Eggert'; 12523 <at> debbugs.gnu.org
Subject: Re: bug#12523: Solaris 10 "cp -p" returns unknown error on NFSv4 share, permissions preserve not work
Eric Blake wrote:
> On 10/08/2012 05:45 AM, Ryba, Lukas wrote:
>> Vendor currently investigated that problem happens with the
>> combination of ZFS filesystem on NFSv3 only server and NFSv3 client.
>>
>> 1. facl with combination of ZFS filesystem(NFSv4 acls) exported by
>> NFSv4 server is ok
>> 2. facl with combination of UFS filesystem(POSIX acls) exported by
>> NFSv3 server is ok
>> 3. facl with combination of ZFS filesystem(NFSv4 acls) exported by
>> NFSv3 server fails on client with errno -1 which is our case
>> IMHO errno value in case 3 should be something useful. Like ENOTSUP.
>
> I wonder if gnulib should write rpl_facl() that checks for the case of
> facl() failing with errno set to -1 and explicitly reset errno to
> ENOTSUP in that case, to work around this vendor bug.
Sounds good to me, especially if the reporter confirms the fix.
The added overhead of a wrapper and test-upon-failure should be
acceptable for a function like facl.
>> -----Original Message-----
>> From: Paul Eggert [mailto:eggert <at> cs.ucla.edu]
>> Sent: Thursday, October 04, 2012 5:53 PM
>> To: Ryba, Lukas
>> Cc: 12523 <at> debbugs.gnu.org
>> Subject: Re: bug#12523: Solaris 10 "cp -p" returns unknown error on
>> NFSv4 share, permissions preserve not work
>>
>> On 10/04/2012 02:19 AM, Ryba, Lukas wrote:
>>> Workaround is simple. Just not use facl call right now. acl works ok.
>>
>> That might work around the problem on your Solaris implementation,
>> but it introduces other issues, on other platforms, so I'd like
>> to get at the bottom of why such a change is really needed.
This bug report was last modified 12 years and 338 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.