From 94c9af4b629d06768bc93fa97375c16a1b6b0bea Mon Sep 17 00:00:00 2001 From: Jeffrey Hutzelman Date: Fri, 10 Oct 2008 15:43:02 +0000 Subject: [PATCH] STABLE14-volser-dumpstuff-log-errors-20081010 LICENSE IPL10 FIXES 121040 return sensible (ENOSPC) errors when out of tags or vnodes. don't perror. log instead. (cherry picked from commit 8b1b390713a79fadd300d17713350f5789879615) --- src/vol/namei_ops.c | 4 +++- src/volser/dumpstuff.c | 6 ++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/vol/namei_ops.c b/src/vol/namei_ops.c index 272cc489a..7d53751ec 100644 --- a/src/vol/namei_ops.c +++ b/src/vol/namei_ops.c @@ -993,8 +993,10 @@ GetFreeTag(IHandle_t * ih, int vno) if ((row & coldata) == 0) break; } - if (col >= NAMEI_MAXVOLS) + if (col >= NAMEI_MAXVOLS) { + errno = ENOSPC; goto badGetFreeTag; + } coldata = 1 << (col * 3); row |= coldata; diff --git a/src/volser/dumpstuff.c b/src/volser/dumpstuff.c index 303021641..db4f2b050 100644 --- a/src/volser/dumpstuff.c +++ b/src/volser/dumpstuff.c @@ -1207,8 +1207,8 @@ ReadVnodes(register struct iod *iodp, Volume * vp, int incremental, V_parentId(vp), vnodeNumber, vnode->uniquifier, vnode->dataVersion); if (!VALID_INO(ino)) { - perror("unable to allocate inode"); - Log("1 Volser: ReadVnodes: Restore aborted\n"); + Log("1 Volser: ReadVnodes: IH_CREATE: %s - restore aborted\n", + afs_error_message(errno)); return VOLSERREAD_DUMPERROR; } nearInode = ino; @@ -1216,6 +1216,8 @@ ReadVnodes(register struct iod *iodp, Volume * vp, int incremental, IH_INIT(tmpH, vp->device, V_parentId(vp), ino); fdP = IH_OPEN(tmpH); if (fdP == NULL) { + Log("1 Volser: ReadVnodes: IH_OPEN: %s - restore aborted\n", + afs_error_message(errno)); IH_RELEASE(tmpH); return VOLSERREAD_DUMPERROR; } -- 2.39.5