svn commit: r294618 - stable/10/sys/fs/devfs
Konstantin Belousov
kib at FreeBSD.org
Sat Jan 23 07:33:03 UTC 2016
Author: kib
Date: Sat Jan 23 07:33:02 2016
New Revision: 294618
URL: https://svnweb.freebsd.org/changeset/base/294618
Log:
MFC r293059:
Hide transient EBADF errors caused by the parallel revoke(2) or forced
unmount of devfs mounts, by restarting the failed syscall.
Modified:
stable/10/sys/fs/devfs/devfs_vnops.c
Directory Properties:
stable/10/ (props changed)
Modified: stable/10/sys/fs/devfs/devfs_vnops.c
==============================================================================
--- stable/10/sys/fs/devfs/devfs_vnops.c Sat Jan 23 05:27:55 2016 (r294617)
+++ stable/10/sys/fs/devfs/devfs_vnops.c Sat Jan 23 07:33:02 2016 (r294618)
@@ -239,18 +239,18 @@ devfs_populate_vp(struct vnode *vp)
if (DEVFS_DMP_DROP(dmp)) {
sx_xunlock(&dmp->dm_lock);
devfs_unmount_final(dmp);
- return (EBADF);
+ return (ERESTART);
}
if ((vp->v_iflag & VI_DOOMED) != 0) {
sx_xunlock(&dmp->dm_lock);
- return (EBADF);
+ return (ERESTART);
}
de = vp->v_data;
KASSERT(de != NULL,
("devfs_populate_vp: vp->v_data == NULL but vnode not doomed"));
if ((de->de_flags & DE_DOOMED) != 0) {
sx_xunlock(&dmp->dm_lock);
- return (EBADF);
+ return (ERESTART);
}
return (0);
More information about the svn-src-stable
mailing list