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);
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-stable-10
To unsubscribe, send any mail to "[email protected]"