]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
fssync-debug: close test connection
authorMark Vitale <mvitale@sinenomine.net>
Wed, 20 Nov 2013 20:05:21 +0000 (15:05 -0500)
committerJeffrey Altman <jaltman@your-file-system.com>
Mon, 5 Jan 2015 02:47:35 +0000 (21:47 -0500)
A valid fssync-debug query <volid> command issued against
a DAFS fileserver will produce the following error messages in FileLog:

SYNC_getCom:  error receiving command
FSYNC_com:  read failed; dropping connection (cnt=1)

Routine dafs_prolog() issues a tentative FSYNC_VOL_LISTVOLUMES operation
to test for the presence of a DAFS fileserver.  If DAFS is detected,
we then call dafssync-debug for the original requested operation.
However, the FSYNC connection for the tentative LISTVOLUMES operation
is never closed. This results in the errors when the command completes.

Close the test connection.

Change-Id: I3c987289408407ba38cd184b7518e72ee1ae9cfc
Reviewed-on: http://gerrit.openafs.org/10476
Reviewed-by: Daria Brashear <shadow@your-file-system.com>
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
src/vol/fssync-debug.c

index 27380fcd94c32c050d1bbaaa98e3393e0d491237..ddc83fcb4520bdfef51158e87c1d7d3941420664 100644 (file)
@@ -274,6 +274,7 @@ dafs_prolog(void)
     /* LISTVOLUMES is a no-op; we just want to get the response header flags
      * to see if the server reports itself as DAFS or not */
     code = FSYNC_VolOp(0, NULL, FSYNC_VOL_LISTVOLUMES, FSYNC_WHATEVER, &res);
+    VDisconnectFS();   /* disconnect before continuing */
     if (code) {
        /* probably failed to contact the fileserver; later code will provide
         * some warning/error indication */