[Bug 203201] on zfs extattr behaviour broken after unlink
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Fri Sep 18 19:19:59 UTC 2015
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=203201
Bug ID: 203201
Summary: on zfs extattr behaviour broken after unlink
Product: Base System
Version: 11.0-CURRENT
Hardware: Any
OS: Any
Status: New
Severity: Affects Some People
Priority: ---
Component: kern
Assignee: freebsd-bugs at FreeBSD.org
Reporter: justin at specialbusservice.com
On ZFS root on
FreeBSD freebsd11 11.0-CURRENT FreeBSD 11.0-CURRENT #0 r285794: Wed Jul 22
16:58:53 UTC 2015 root at releng2.nyi.freebsd.org:/usr/obj/usr/src/sys/GENERIC
amd64
If I unlink a file, extattr_get_fd does not work correctly as can be seen from
this ktrace:
7638 luajit-2.0.4 CALL
openat(AT_FDCWD,0x107550,0x601<O_WRONLY|O_CREAT|O_TRUNC>,0x1c0<S_IRUSR|S_IWUSR|S_IXUSR>)
7638 luajit-2.0.4 NAMI "XXXXYYYYZZZ45217638"
7638 luajit-2.0.4 RET openat 3
7638 luajit-2.0.4 CALL unlink(0x107550)
7638 luajit-2.0.4 NAMI "XXXXYYYYZZZ45217638"
7638 luajit-2.0.4 RET unlink 0
7638 luajit-2.0.4 CALL extattr_get_fd(0x3,0x1,0x1129d8,0,0)
7638 luajit-2.0.4 RET extattr_get_fd -1 errno 2 No such file or directory
The correct behaviour is shown on a 10.2 system with ufs root:
24254 luajit-2.0.3 CALL
open(0x106d48,0x601<O_WRONLY|O_CREAT|O_TRUNC>,0x1c0<S_IRUSR|S_IWUSR|S_IXUSR>)
24254 luajit-2.0.3 NAMI "XXXXYYYYZZZ452124254"
24254 luajit-2.0.3 RET open 3
24254 luajit-2.0.3 CALL unlink(0x106d48)
24254 luajit-2.0.3 NAMI "XXXXYYYYZZZ452124254"
24254 luajit-2.0.3 RET unlink 0
24254 luajit-2.0.3 CALL extattr_get_fd(0x3,0x1,0x1121d0,0,0)
24254 luajit-2.0.3 RET extattr_get_fd -1 errno 87 Attribute not found
The attribute not found error is the correct one as there are no xattrs on this
new file, but somehow zfs is looking up the file and not finding it rather than
using the file descriptor.
(there is a possibility that this is a regression from 10.2 to 11 but it seems
more likely it is due to zfs; I dont have enough machines to test right now).
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-bugs
mailing list