On Tue, 2006-11-28 at 10:14 +0000, Anton Altaparmakov wrote:
> On Tue, 2006-11-28 at 02:56 +0100, Frans Pop wrote:
> > On Monday 27 November 2006 23:45, Anton Altaparmakov wrote:
> > >         //vol = ntfs_mount(opt.volume, 0);
> > >         vol = NULL;
> > 
> > I'm almost afraid to have to tell you this... ;-)
> > 
> > After recompiling ntfsfix with this change, running it once immediately 
> > after the ntfsresize and rebooting Vista, I _do_ get the chkdsk by Vista 
> > and it boots fine after its automatic reboot.
> > 
> > So, it very much looks like there is something in the "mount failed" 
> > codepath after all.
> > 
> > I've tried this trick with both your CVS version and with the current 
> > version in Debian, both with identical results.
> > 
> > I just noticed something.
> > If the mount is OK, ntfsfix prints all its messages almost instantaneous, 
> > like nothing is actually happening at all. But if the mount fails, 
> > ntfsfix takes significantly longer, especially over the "Going to empty 
> > the journal ($logfile)" step.
> > There is a definite pause, both while that step is being processed 
> > (before "OK\n" is printed) and immediately afterwards (before the next 
> > line "NTFS volume version" is printed).
> > 
> > Another step closer...
> 
> Argh!  Thank you for persisting with this.  I have now looked at the
> code and you are right it does not do the same thing.  This is because
> when Yura ported my $LogFile code from the kernel for some unknown to me
> (or forgotten by me) reason he did not integrate clearing the journal
> into the mount process.  He integrated the checking but not the
> clearing.  This is a HUGE and VERY BAD bug in libntfs and means that all
> ntfs utilities are _DANGEROUS_ to run and can cause massive and very
> hard to detect data corruption.  )-:
> 
> No wonder Vista does not boot!!!  It is amazing it took so long to find
> this problem.  I cannot believe we managed to get away with it for so
> long...
> 
> I have now fixed this in CVS.  Could you update, compile, and try again?
> 
> Once just with ntfsresize (the one in current CVS) and if that still
> does not work, once with ntfsresize + immediate ntfsfix (the one in
> current CVS without the my change that you put in).  If that still does
> not fix it then once with ntfsresize + immediate ntfsfix (the one in
> current CVS but with my change that you put in again).
> 
> In an ideal world, just ntfsresize will now be sufficient.  If not
> ntfsfix should work first time.  And if not I need to look at it
> further!

Ok, I just committed some more fixes to ntfsresize.  It never actually
unmounted the volume, just exited which was very rude of it!

Using the latest ntfsresize/libntfs combination on my Vista data
partition I can now run ntfsresize to change the size of a partition
then immediately run Vista and it boots, runs chkdsk automatically, and
then continues to boot to completion.  Yey.  (-:

Frans, it would be great if you could verify it is fixed for you when
resizing the system partition also.  Assuming you say it works I think
it is time for a new ntfsprogs release which we can rubber stamp as
"Vista compatible".  (-:

Best regards,

        Anton
-- 
Anton Altaparmakov <aia21 at cam.ac.uk> (replace at with @)
Unix Support, Computing Service, University of Cambridge, CB2 3QH, UK
Linux NTFS maintainer, http://www.linux-ntfs.org/



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to