[lkml]   [2011]   [Feb]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [PATCH 16/32] scsi/be2iscsi,qla2xxx: convert to alloc_workqueue()

    On Tue, Feb 01, 2011 at 05:45:13PM -0600, Mike Christie wrote:
    > I think these are used in the main IO path, so would you also want
    > WQ_HIGHPRI | WQ_CPU_INTENSIVE to be set?

    Maybe HIGHPRI but definitely not CPU_INTENSIVE, but even HIGHPRI isn't
    usually necessary. The queue of pending works tend to be short and
    consumed pretty fast.

    > I think qla2xxx was using this in a path they expected to have high
    > throughput/low latency, and from the interrupt handler they would
    > try to queue the work on the same cpu the isr was answered on. With
    > the new workqueue code could you possibly get queued onto a
    > workqueue that is doing other work for other drivers?

    There are no separate workqueues. There's one per cpu which is used
    by all workqueue users. HIGHPRI boosts the queueing order in that

    > Should qla2xxx be using the blkiopoll framework instead of a
    > workqueue or will workqueues still provide the same performance when

    CPU_INTENSIVE isn't applicable at all unless you want to run crypto or
    zlib from the driver.

    blk_iopoll runs off softirq and will always have lower latency than
    workqueue which requires scheduling, so it depends on the
    requirements. I guess the best thing would be playing with things a
    bit and make decisions on test results. It shouldn't be too difficult
    to switch among them.



     \ /
      Last update: 2011-02-02 11:27    [W:0.021 / U:6.084 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site