Source-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: CVS commit: src/sys/dev/ata
Dave Sainty writes:
> Manuel Bouyer writes:
>
> > On Sat, Jul 02, 2005 at 04:29:01AM +0000, David Sainty wrote:
> > > [...]
> > > [An alternative approach is to just always drop to LBA48 if the request
> > > happens to pass by sector 0xfffffff and the drive reported as larger than
> > > 0xfffffff sectors. My understanding is that the 32 bit addressing below
> > > 0x10000000 is purely there as a performance booster, not to resolve a
> > > compatibility issue.]
> >
> > It is. Some controllers can't do LBA48 properly. Large drives on such
> > controllers currently work fine if limited to 128GB.
>
> They wouldn't be any worse off under the suggested scheme. If they
> happen to have one of the crash-on-0xfffffff drives on such a
> controller they STILL couldn't use that sector, because then the drive
> would be crashing now. And under the suggested scheme they would
> still be able to use the rest of the lower 128GB, like you suggest.
If they don't have a crash-on-0xfffffff drive, but it is over 128GB in
size and the controller can't do LBA48 then I guess they would only be
able to access 2^32-1 sectors instead of 2^32. Is that really a
problem though?
If we can detect the controllers that can't do LBA48 we can allow them
to try a LBA32 access to 0xfffffff instead. Though we also know that
some drives/systems would hang at that point.
Home |
Main Index |
Thread Index |
Old Index