Re: [patch] 2.5.3-pre1 ide updates

Anton Altaparmakov (aia21@cam.ac.uk)
Thu, 17 Jan 2002 14:29:49 +0000


Hi Jens,

I think there is a bug here...

At 13:46 17/01/02, Jens Axboe wrote:
>diff -urN -X exclude /ata/linux-2.5.3-pre1/drivers/ide/ide-taskfile.c
>linux/drivers/ide/ide-taskfile.c
>--- /ata/linux-2.5.3-pre1/drivers/ide/ide-taskfile.c Thu Jan 17
>06:32:54 2002
>+++ linux/drivers/ide/ide-taskfile.c Thu Jan 17 06:29:13 2002
>@@ -994,10 +1032,11 @@
> if (!msect) {
> nsect = 1;
> while (rq->current_nr_sectors) {
>- pBuf = rq->buffer + ((rq->nr_sectors -
>rq->current_nr_sectors) * SECTOR_SIZE);
>+ pBuf = ide_unmap_buffer(rq, &flags);

That should be: pBuf = ide_map_buffer(rq, &flags);

But I think it actually ought to be:

pBuf = ide_map_rq(rq, &flags)

and the below unmap should consequently be:

ide_unmap_rq(rq, pBuf, &flags)

In either case it's wrong at the moment AFAICS...

> DTF("Multiwrite: %p, nsect: %d,
> rq->current_nr_sectors: %ld\n", pBuf, nsect, rq->current_nr_sectors);
> drive->io_32bit = 0;
> taskfile_output_data(drive, pBuf, nsect *
> SECTOR_WORDS);
>+ ide_unmap_buffer(pBuf, &flags);
> drive->io_32bit = io_32bit;
> rq->errors = 0;
> rq->current_nr_sectors -= nsect;

Best regards,

Anton

-- 
   "I've not lost my mind. It's backed up on tape somewhere." - Unknown
-- 
Anton Altaparmakov <aia21 at cam.ac.uk> (replace at with @)
Linux NTFS Maintainer / WWW: http://linux-ntfs.sf.net/
ICQ: 8561279 / WWW: http://www-stu.christs.cam.ac.uk/~aia21/

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