On Thu, Apr 02, 2009 at 08:38:03PM +0400, Sergei Shtylyov wrote: > Hello. >>>> + task->tf_flags = IDE_TFLAG_LBA48 | IDE_TFLAG_OUT_HOB | >>>> + IDE_TFLAG_OUT_TF | IDE_TFLAG_OUT_DEVICE | > >>> The last 3 flags are going to be obsoleted too... > >> So if I remove them today, the command will still work? > > s/obsoleted/renamed and moved to another other field/ -- I'm going to > submit a patchset refactoring 'struct ide_cmd and 'struct ide-taskfile' > at last... Since I'm coding to today's kernel, not to a patch which doesn't exist yet, taking them out won't work very well. I've not been paying much attention to drivers/ide, so I've no idea whether the following patch works. It does at least compile: +++ b/drivers/ide/ide-disk.c @@ -407,7 +407,7 @@ static void idedisk_prepare_flush(struct request_queue *q, s static int idedisk_prepare_discard(struct request_queue *q, struct request *rq, struct bio *bio) { - ide_task_t *task; + struct ide_cmd *task; unsigned size; struct page *page = alloc_page(GFP_KERNEL); if (!page) @@ -432,8 +432,8 @@ static int idedisk_prepare_discard(struct request_queue *q, task->tf_flags = IDE_TFLAG_LBA48 | IDE_TFLAG_OUT_HOB | IDE_TFLAG_OUT_TF | IDE_TFLAG_OUT_DEVICE | - IDE_TFLAG_DYN; - task->data_phase = TASKFILE_OUT_DMA; + IDE_TFLAG_DYN | IDE_TFLAG_WRITE; + task->protocol = ATA_PROT_DMA; rq->cmd_type = REQ_TYPE_ATA_TASKFILE; rq->special = task; If I've understood 0dfb991c6943c810175376b58d1c29cfe532541b correctly, this should be equivalent. Bart? -- To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html