On Thu, 12 Dec 2002, Szakacsits Szabolcs wrote:
> > > 3. ntfs_extent_inode_open: extents are copied to a newly
> > > allocated memory. Before using just the pointer equality the
> > > memory was freed by the extent and the base inode happily used
> > > the unfreed memory => severe memory corruptions.
>
> > seems the patch gets me past the overlapping runlists problem but, I get
> > 11298 messages saying Couldn't read MFT record %n (where %n is the record
> > number, of course).
>
> On an MFT with 20+ extents I get one
> ------------------------------------------------------->
> Entering for inode 0, attribute type 0x80.
> Opening extent inode 15 (base mft record 0x0).
> Found stale extent mft reference! Corrupt file system. Run chkdsk.
> Failed to map extent inode: Input/output error
> Inode is corrupt.
> Couldn't read MFT Record 28.
> <--------------------------------------------------------
>
> Probably the above bugs hid more - so far Leonards case (attribute
> list handling) discovered 4 bugs.
The fix for 3 was uncomplete [sent you update], it didn't copy the
mrec. Now ntfsundelete (libntfs) works also with non-resident
attribute list attribute in $MFT.
Szaka
|