[PATCH] xfsdump: Revert dump version bump for 32bit projid fix
Eric Sandeen
sandeen at redhat.com
Mon Oct 22 19:05:11 CDT 2012
On 10/22/12 5:31 PM, Dave Chinner wrote:
> On Mon, Oct 22, 2012 at 03:24:16PM -0500, Eric Sandeen wrote:
>> commit 1e309da7a4f7e2a2f456bf6b7cea4c5f1181cd36 fixed xfsdump to
>> properly save & restore the top 16 bits of a 32-bit projid, which
>> otherwise was being dropped (and restored as 0) in older xfsdump.
>>
>> The original thought was to bump the dump version, so that we know
>> whether the dump (may) have the top 16 bits filled in. In practice
>> this would prevent older restores from restoring newer dumps, and
>> losing the top 16 bits contained in these newer dumps.
>>
>> However, in hindsight this appears to be of limited value. I
>> propose that the dump version change is unuseful/unwanted for a
>> couple reasons:
>>
>> * There is no actual dump *format* change; the structure size
>> is the same, and the top 16 bits were properly zeroed before; old
>> restores will read these fixed dumps without problems and without
>> restoring garbage. IOW, they will behave exactly as buggily as
>> they did before. And worst case, if a dump containing the top 16
>> bits is mangled by an old restore, this can be easily remedied by
>> simply re-restoring with updated userspace.
>>
>> * We have no reliable method to know whether 32 bit project IDs are
>> in use; the feature flag was not added to the GEOM call at the time
>> of implementation. Therefore we cannot reliably bump to V4 only
>> for projid32bit filesystems, and we cannot restrict V4 restores
>> only to projid32bit filesystems. So the dump version is not
>> useful for feature cross-checking purposes.
>
> Seems reasonable. Definitely solves most of the nasty problems
> you've been juggling caused by a version bump and 32bit projid
> detection. Do we have an xfstest that verifies these assumptions are
> valid?
I'll whip up a test that tests what happens when restoring a dump
w/ all 32 bits to a filesystem w/o the feature.
I'm not sure testing a restoration of an "old" dump to a 32-bit
projid is too useful, it really just tests that the zeroed bits
in the old dump image stay zeroed.
-Eric
> Cheers,
>
> Dave.
>
More information about the xfs
mailing list