vos: volume lock not released on convertROtoRW error

If an error occurs during convertROtoRW, the volume lock may
not be released.

Change-Id: Ic03af00676de836cade4e39a743b234a0dc9b6cf
Reviewed-on: http://gerrit.openafs.org/7389
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Alistair Ferguson <alistair.ferguson@mac.com>
Reviewed-by: Derrick Brashear <shadow@dementix.org>
This commit is contained in:
Mark Vitale 2012-05-08 15:03:46 -04:00 committed by Derrick Brashear
parent 38ebd79baf
commit 33eff6597f

View File

@ -5626,7 +5626,7 @@ ConvertRO(struct cmd_syndesc *as, void *arock)
"Converting RO volume %lu to RW volume failed with code %d\n",
(unsigned long)volid, code);
PrintError("convertROtoRW ", code);
return -1;
goto error_exit;
}
entry.serverFlags[roindex] = ITSRWVOL;
entry.flags |= RW_EXISTS;
@ -5661,6 +5661,7 @@ ConvertRO(struct cmd_syndesc *as, void *arock)
code);
}
error_exit:
vcode = UV_LockRelease(entry.volumeId[RWVOL]);
if (vcode) {
fprintf(STDERR,