]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
salvager: Fix in-memory invalid linktable counts
authorAndrew Deason <adeason@sinenomine.net>
Mon, 30 Sep 2013 22:53:36 +0000 (17:53 -0500)
committerStephan Wiesand <stephan.wiesand@desy.de>
Thu, 27 Feb 2014 13:04:21 +0000 (05:04 -0800)
When we have a nonexistant or invalid linktable, we manually set all
of the linkcounts to 1, since we're recreating the link table from
scratch. However, we also have a linkCount count in our in-memory
allInodes array, which could be populated by garbage if we had a
garbage linktable. So make sure to set our in-memory linkCount to 1
for each inode, so we don't use garbage linkcount data.

Reviewed-on: http://gerrit.openafs.org/10312
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
(cherry picked from commit 6a4831e0e9a003bed06ac2269987c69090d3f7e7)

Change-Id: Ic580176f0350a2f44b60f1b448cf3da8a091e36d
Reviewed-on: http://gerrit.openafs.org/10769
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
Reviewed-by: D Brashear <shadow@your-file-system.com>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
src/vol/vol-salvage.c

index 861f3f1b678a5e7abe84c7664685ccb745f8b2ec..e43108e745107f3114d2f2b03b301af92db6e7a2 100644 (file)
@@ -2023,6 +2023,7 @@ DoSalvageVolumeGroup(struct SalvInfo *salvinfo, struct InodeSummary *isp, int nV
                    ip = allInodes + isp[i].index;
                    for (j = isp[i].nSpecialInodes; j < isp[i].nInodes; j++) {
                        namei_SetLinkCount(fdP, ip[j].inodeNumber, 1, 1);
+                       ip[j].linkCount = 1;
                    }
                }
            }