]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
afs: Use common cleanup code for lockctl EINVAL
authorAndrew Deason <adeason@sinenomine.net>
Tue, 2 Oct 2012 20:04:47 +0000 (15:04 -0500)
committerDerrick Brashear <shadow@your-file-system.com>
Wed, 3 Oct 2012 03:13:25 +0000 (20:13 -0700)
afs_lockctl has common cleanup code in the 'done' label. Use it here,
instead of trying to duplicate it.

Currently this code path appears to not be dropping the discon lock,
which this rectifies.

Change-Id: I136a78bc3235454db7e3d69bb79b0061cfcab265
Reviewed-on: http://gerrit.openafs.org/8196
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
src/afs/VNOPS/afs_vnop_flock.c

index 0e92fc049ce81ad00e21f499d8b427090a04a92d..37e58edb33cc8a035e6cb0006fb0c322a53de0c2 100644 (file)
@@ -606,8 +606,8 @@ int afs_lockctl(struct vcache * avc, struct AFS_FLOCK * af, int acmd,
     else if (af->l_type == F_UNLCK)
        code = LOCK_UN;
     else {
-       afs_PutFakeStat(&fakestate);
-       return EINVAL;          /* unknown lock type */
+       code = EINVAL;          /* unknown lock type */
+       goto done;
     }
     if (((acmd == F_SETLK)
 #if    defined(AFS_SGI_ENV)