On Wed, 24 Mar 2004, Anton Altaparmakov wrote:
> Really, the only way is to scan $LogFile to determine the state. If the
> log is fully check pointed and no uncommitted transactions are remaining
> it means the volume is clean. And otherwise it means it is dirty. I
> have been planning to implement this in ntfsprogs (and in the kernel for
> that matter) but haven't had time as it is rather a lot of work.
Why is it a lot of work? Unknown?
Just a "clean" or "dirty" answer would be enough. No need to redo or
undo the log/update records.
I think this would be the most important next step to solve.
> > I thought the VOLUME_IS_DIRTY flag is supposed to mark this. I checked it
> > out and it doesn't. After a crash it isn't set. Apparently it isn't even
> > set when NTFS is mounted.
> I think it does but I think it is only set while data is being actively
> written to disk (I may well be wrong though).
So we could check VOLUME_IS_DIRTY and $LogFile then mount only if none is
dirty.
Szaka
|