lkml.org 
[lkml]   [2005]   [Mar]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [patch ide-dev 8/9] make ide_task_ioctl() use REQ_DRIVE_TASKFILE
    On Wed, 02 Mar 2005 01:08:56 -0500, Jeff Garzik <jgarzik@pobox.com> wrote:
    > Bartlomiej Zolnierkiewicz wrote:
    > > Yes but it seems that you've assumed that ioctl == flagged taskfile
    > > and fs/internal == normal taskfile which is _not_ what I aim for.
    > >
    > > I want fully-flagged taskfile handling like flagged_taskfile() and "hot path"
    > > simpler taskfile handling like do_rw_taskfile() (at least for now - we can
    > > remove "hot path" later) where both can be used for fs/internal/ioctl requests
    > > (depending on the flags).
    >
    > There is no effective difference in performance between
    >
    > writeb()
    > writeb()
    > writeb()
    > writeb()
    >
    > and
    >
    > if (bit 1)
    > writeb()
    > if (bit 2)
    > writeb()
    > if (bit 3)
    > writeb()
    > if (bit 4)
    > writeb()
    >
    > The cost of a repeated bit test on the same unsigned long is _zero_.
    > It's already in L1 cache. The I/Os are slow, and adding bit tests will

    certainly it is not _zero_ ;-)

    I agree that it is negligible compared to the cost of I/O

    > not measurably decrease performance. (this is the reason why I do not
    > object to using ioread32() and iowrite32()... it just adds a simple test)
    >
    > Plus, it is better to have a single path for all taskfiles, to ensure
    > that the path is well-tested.
    >
    > libata's ->tf_load() and ->tf_read() hooks should be updated to use the
    > more fine-grained flags that Tejun is proposing.
    >
    > Note that on SATA, this is largely irrelevant. The functions
    > ata_tf_read() and ata_tf_load() should be updated for flagged taskfiles,
    > because these will be used with PATA drivers.
    >
    > The hooks implemented in individual SATA drivers will not be updated.
    > The reason is that SATA transmits an entire copy of the taskfile to/from
    > the device all at once, in the form of a Frame Information Structure
    > (FIS) -- essentially a SATA packet.

    agreed

    Tejun, one-path approach for IDE driver is fine with me
    -
    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/

    \
     
     \ /
      Last update: 2005-03-22 14:10    [W:0.026 / U:0.604 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site