]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
salvager: Create link table with volume group id
authorAndrew Deason <adeason@sinenomine.net>
Fri, 2 Dec 2011 20:36:59 +0000 (14:36 -0600)
committerDerrick Brashear <shadow@dementix.org>
Fri, 16 Dec 2011 11:55:39 +0000 (03:55 -0800)
The link table needs to be created with the VG id or RW vol id, not
the non-RW vol id. Unlike other special inodes, this goes for both the
'parent' and 'volume' volume ids, not just the 'parent' id, since
there is only one link table per VG.

Without this, the salvager can generate invalid linktable special
inodes if it encounters a VG with no inodes for the RW vol.

Reviewed-on: http://gerrit.openafs.org/6179
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementix.org>
(cherry picked from commit ae227049fca2519e1f5ae1e8b68efbff10ebb665)

Change-Id: Ia8089cae6cb5ab97ef9d4ea306f3c48bead59914
Reviewed-on: http://gerrit.openafs.org/6325
Reviewed-by: Derrick Brashear <shadow@dementix.org>
Tested-by: Derrick Brashear <shadow@dementix.org>
src/vol/vol-salvage.c

index 87d586453138d3d6394866ad7366060133dff279..e21630c9ed235d0319573d25eda25821e20c11ed 100644 (file)
@@ -1816,7 +1816,7 @@ CreateLinkTable(struct SalvInfo *salvinfo, struct InodeSummary *isp, Inode ino)
 
     if (!VALID_INO(ino))
        ino =
-           IH_CREATE(NULL, salvinfo->fileSysDevice, salvinfo->fileSysPath, 0, isp->volumeId,
+           IH_CREATE(NULL, salvinfo->fileSysDevice, salvinfo->fileSysPath, 0, isp->RWvolumeId,
                      INODESPECIAL, VI_LINKTABLE, isp->RWvolumeId);
     if (!VALID_INO(ino))
        Abort