Re: [PATCH 2.6.11-rc3 01/11] ide: task_end_request() fix

From: Bartlomiej Zolnierkiewicz
Date: Thu Feb 24 2005 - 11:04:52 EST


On Thu, 10 Feb 2005 17:38:14 +0900 (KST), Tejun Heo <htejun@xxxxxxxxx> wrote:
>
> 01_ide_task_end_request_fix.patch
>
> task_end_request() modified to always call ide_end_drive_cmd()
> for taskfile requests. Previously, ide_end_drive_cmd() was
> called only when task->tf_out_flags.all was set. Also,
> ide_dma_intr() is modified to use task_end_request().
>
> * fixes taskfile ioctl oops bug which was caused by referencing
> NULL rq->rq_disk of taskfile requests.

I fixed it in slightly different way in ide-dev-2.6 - by calling
ide_end_request() instead of ->end_request().

> * enables TASKFILE ioctls to get valid register outputs on
> successful completion.

This change makes *all* taskfile registers to be read on completion
of *any* command. Currently this is done only for flagged taskfiles
and commands using no-data protocol.

With all your changes it will be also done for:
* HDIO_DRIVE_[TASKFILE,CMD] ioctls
* /proc/ide/hd?/{identify,smart_thresholds,smart_values}
but reading back all registers is not always needed.

It is already bad enough (and we can't fix it cause it is exported
to user-space through HDIO_DRIVE_TASKFILE), we shouldn't
make it worse.
-
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/