From: Derrick Brashear Date: Thu, 21 Sep 2006 12:49:25 +0000 (+0000) Subject: STABLE14-avoid-assert-for-missing-vnodes-20060921 X-Git-Tag: openafs-stable-1_4_2~42 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=c4d4691ed3ad26b57e8926e87a60f18449f20de4;p=packages%2Fo%2Fopenafs.git STABLE14-avoid-assert-for-missing-vnodes-20060921 right now if a vnode is missing when we try to clone, we could assert. ick. (cherry picked from commit b613480bd5eb6bc2a14c4e23229d90105291944c) --- diff --git a/src/vol/clone.c b/src/vol/clone.c index 1a02d2d26..aedee9ece 100644 --- a/src/vol/clone.c +++ b/src/vol/clone.c @@ -256,7 +256,8 @@ DoCloneIndex(Volume * rwvp, Volume * clvp, VnodeClass class, int reclone) Log("IH_INC failed: %x, %s, %u errno %d\n", V_linkHandle(rwvp), PrintInode(NULL, rwinode), V_parentId(rwvp), errno); - assert(0); + VForceOffline_r(rwvp); + ERROR_EXIT(EIO); } inodeinced = 1; } @@ -308,7 +309,8 @@ DoCloneIndex(Volume * rwvp, Volume * clvp, VnodeClass class, int reclone) Log("IH_DEC failed: %x, %s, %u errno %d\n", V_linkHandle(rwvp), PrintInode(NULL, rwinode), V_parentId(rwvp), errno); - assert(0); + VForceOffline_r(rwvp); + ERROR_EXIT(EIO); } } /* And if the directory was marked clone, unmark it */