diff --git a/src/vol/vol-salvage.c b/src/vol/vol-salvage.c index 53519dcc2a..bfe60edd04 100644 --- a/src/vol/vol-salvage.c +++ b/src/vol/vol-salvage.c @@ -4330,7 +4330,12 @@ SalvageVolume(struct SalvInfo *salvinfo, struct InodeSummary *rwIsp, IHandle_t * volHeader.inUse = 0; /* clear flag indicating inUse@last crash */ volHeader.needsSalvaged = 0; /* clear 'damaged' flag */ volHeader.inService = 1; /* allow service again */ - volHeader.needsCallback = (salvinfo->VolumeChanged != 0); + if (salvinfo->VolumeChanged) { + volHeader.needsCallback = 1; + volHeader.updateDate = time(NULL); + } else { + volHeader.needsCallback = 0; + } volHeader.dontSalvage = DONT_SALVAGE; salvinfo->VolumeChanged = 0; if (!Testing) { diff --git a/src/vol/volume.h b/src/vol/volume.h index f9ae8af947..ee46e3b310 100644 --- a/src/vol/volume.h +++ b/src/vol/volume.h @@ -457,7 +457,7 @@ typedef struct VolumeDiskData { * a readonly volume (replicated volumes have * the same creation date) */ Date accessDate; /* Last access time by a user, large granularity */ - Date updateDate; /* Last modification by user */ + Date updateDate; /* Last modification by user or salvager */ Date expirationDate; /* 0 if it never expires */ Date backupDate; /* last time a backup clone was taken */