Messages in this thread | | | Date | Sun, 06 Feb 2005 12:31:21 +0900 | From | Tejun Heo <> | Subject | Re: [PATCH 2.6.11-rc2] ide: merge do_rw_taskfile() and flagged_taskfile() into do_taskfile() |
| |
Hello,
Bartlomiej Zolnierkiewicz wrote: > On Sun, 6 Feb 2005 11:13:31 +0900, Tejun Heo <tj@home-tj.org> wrote: > >> Hello, Bartlomiej. > > > Hi, > > >> This is a new version of ide_do_taskfile.patch. Compared to the >>original do_rw_task(), only one more 'if' is used in the hot path, so >>I think the performance issue can be ignored now. Also, there's no >>userland visible change with this patch. Everything should work just >>as it did with do_rw_taskfile()/flagged_taskfile(). >> >> do_taskfile() is different from do_rw_taskfile() in that > > > Is there any gain in changing name to do_taskfile()? >
Well, I was just thinking
do_rw_taskfile + (do_)flagged_taskfile -> do_taskfile.
If you like do_rw_taskfile better, I guess that's okay too. :-)
> >> - It uses task->data_phase to determine whether it's a DMA command >> or not. > > > this is user-space visible change > (it is right thing to do, I just wanted to point the fact) >
Oops, I forgot that. Still, it was kind of weird before. If any of tf_{in|out}_flags is set, flagged_taskfile() is called and ->data_phase was used, but, if none of the flags was set, do_rw_taskfile() was called and the command is used to determine the same thing. But, yeah, it's user-visible.
> >> do_taskfile() is different from flagged_taskfile() in that >> >> - No (TASKFILE_MULTI_IN && !mult_count) check. ide_taskfile_ioctl() >> checks the same thing, so it doesn't change anything. > > > The check may be needed. AFAIR drive->mult_count may change > before our taskfile request is started. >
Okay, I'll resurrect that test.
> >> - No task->tf_out_flags handling. ide_end_drive_cmd() ignores it >> anyway, so, again, it doesn't change anything. > > > I guess you mean ->tf_in_flags? >
Yes.
> >> So, what do you think? > > > This patch looks much better but could you move writing taskfile > registers to separate helpers (one for non-flagged and one for flagged)? > > Probably splitting non-flagged taskfile load helper off do_rw_taskfile() > should be done in separate patch. We can then use this helper in > ide-disk.c for __ide_do_rw_taskfile() (we can't do direct conversion > to do_rw_taskfile() yet for various reasons).
Sure, I'll do it now.
Thanks.
-- tejun
- 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/
| |