diff options
author | jeff <jeff@FreeBSD.org> | 2012-11-02 21:04:06 +0000 |
---|---|---|
committer | jeff <jeff@FreeBSD.org> | 2012-11-02 21:04:06 +0000 |
commit | 6eb4b395b36a3e6e632c6b3537a2ad9fb3a9973a (patch) | |
tree | ac9d208f8d519f915dabb2f0f78e5562760c0db1 | |
parent | 8c8997ccb993b99bfefb8e1b93dd24c7c11b317a (diff) | |
download | FreeBSD-src-6eb4b395b36a3e6e632c6b3537a2ad9fb3a9973a.zip FreeBSD-src-6eb4b395b36a3e6e632c6b3537a2ad9fb3a9973a.tar.gz |
- In cancel_mkdir_dotdot don't panic if the inodedep is not available. If
the previous diradd had already finished it could have been reclaimed
already. This would only happen under heavy dependency pressure.
Reported by: Andrey Zonov <zont@FreeBSD.org>
Discussed with: mckusick
MFC after: 1 week
-rw-r--r-- | sys/ufs/ffs/ffs_softdep.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/ufs/ffs/ffs_softdep.c b/sys/ufs/ffs/ffs_softdep.c index b410820..4e65e63 100644 --- a/sys/ufs/ffs/ffs_softdep.c +++ b/sys/ufs/ffs/ffs_softdep.c @@ -8579,7 +8579,7 @@ cancel_mkdir_dotdot(ip, dirrem, jremref) if (inodedep_lookup(UFSTOVFS(ip->i_ump), ip->i_number, 0, &inodedep) == 0) - panic("cancel_mkdir_dotdot: Lost inodedep"); + return (jremref); dap = inodedep->id_mkdiradd; if (dap == NULL || (dap->da_state & MKDIR_PARENT) == 0) return (jremref); |