afs: Treat vc_error as a CheckCode-translated code
authorAndrew Deason <adeason@sinenomine.net>
Thu, 26 Dec 2013 21:42:46 +0000 (16:42 -0500)
committerDerrick Brashear <shadow@your-file-system.com>
Wed, 29 Jan 2014 15:34:47 +0000 (07:34 -0800)
commit34e4a4fed356fbda9fc8ace1d01a080bd09238b0
treed6bc2d2a256677974c104dfb0a1db33bd5305212
parentd2084563648cc1e8ec697c61f593935a0b5804a3
afs: Treat vc_error as a CheckCode-translated code

The vcache field vc_error is generally treated as an error code that
has been translated through afs_CheckCode, but this is inconsistent in
a few places. Fix this in a few ways:

 - Adjust afs_nfsrdwr so we do not call afs_CheckCode on vc_error,
   translating the error code twice.

 - Change afs_close to store vc_error in code_checkcode, and have the
   logging code check for specific values in code_checkcode as well.
   Log unknown values of code and code_checkcode, so we can
   distinguish between e.g. a 'code' value of VBUSY, and a
   'code_checkcode' value of ETIMEDOUT.

Change-Id: Iab4928efd183fb6c5b0b0f30375b9952ba13b45a
Reviewed-on: http://gerrit.openafs.org/10634
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: Derrick Brashear <shadow@your-file-system.com>
src/afs/SOLARIS/osi_vnodeops.c
src/afs/VNOPS/afs_vnop_write.c