Remember to unlock the (optional) vnode in vfs_stdextattrctl(). Failing
to do this made the following script hang: #!/bin/sh set -ex extattrctl start /tmp extattrctl initattr 64 /tmp/EA00 extattrctl enable /tmp user ea00 /tmp/EA00 extattrctl showattr /tmp/EA00 if the filesystem backing /tmp did not support EAs. The real solution is probably to have the extattrctl syscall do the unlocking rather than depend on the filesystem to do it. Considering that extattrctl is going to be made obsolete anyway, this has dogwash priority. Sponsored by: DARPA & NAI Labs.
This commit is contained in:
parent
5727268ab3
commit
2bddcb2f12
@ -819,6 +819,8 @@ vfs_stdextattrctl(mp, cmd, filename_vp, attrnamespace, attrname, td)
|
||||
const char *attrname;
|
||||
struct thread *td;
|
||||
{
|
||||
if (filename_vp != NULL)
|
||||
VOP_UNLOCK(filename_vp, 0, td);
|
||||
return(EOPNOTSUPP);
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user