Re: max request size 1024KiB by default?

From: Jens Axboe
Date: Tue Jul 27 2004 - 02:17:22 EST


On Sat, Jul 24 2004, Lee Revell wrote:
> On Sat, 2004-07-24 at 07:27, Rudo Thomas wrote:
> > > HD info:
> > > /dev/hdc:
> > >
> > > Model=Maxtor 6Y160P0, FwRev=YAR41BW0, SerialNo=Y44K8TZE
> > > Config={ Fixed }
> > > RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=57
> > > BuffType=DualPortCache, BuffSize=7936kB, MaxMultSect=16, MultSect=16
> > > CurCHS=4047/16/255, CurSects=16511760, LBA=yes, LBAsects=268435455
> > > IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
> > > PIO modes: pio0 pio1 pio2 pio3 pio4
> > > DMA modes: mdma0 mdma1 mdma2
> > > UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5 *udma6
> > > AdvancedPM=yes: disabled (255) WriteCache=enabled
> > > Drive conforms to: (null):
> >
>
> Your disk controller must not support that. It looks like the default
> is 1024KiB or whatever the max your controller supports is:
>
> drivers/ide/ide-disk.c:
>
> if (drive->addressing == 1) {
> ide_hwif_t *hwif = HWIF(drive);
> int max_s = 2048;
>
> if (max_s > hwif->rqsize)
> max_s = hwif->rqsize;
>
> blk_queue_max_sectors(drive->queue, max_s);
> }

It's the drive. lba28 cannot do more than 256 sectors, while lba48 can
do 65536. The controller only has an impact on this if it's buggy.

--
Jens Axboe

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/