• Sagi Grimberg's avatar
    iser-target: Use WQ_UNBOUND for completion workqueue · 631af550
    Sagi Grimberg authored
    Bound workqueues might be too restrictive since they allow
    only a single core per session for processing completions.
    WQ_UNBOUND will allow bouncing to another CPU if the running
    CPU is currently busy. Luckily, our workqueues are NUMA aware
    and will first try to bounce within the same NUMA socket.
    My measurements with NULL backend devices show that there is
    no (noticeable) additional latency as a result of the change.
    I'd expect even to gain performance when working with fast
    devices that also allocate MSIX interrupt vectors.
    
    While we're at it, make it WQ_HIGHPRI since processing
    completions is really a high priority for performance.
    Signed-off-by: default avatarSagi Grimberg <sagig@mellanox.com>
    Reported-by: default avatarMoussa Ba <moussaba@micron.com>
    Signed-off-by: default avatarMoussa Ba <moussaba@micron.com>
    Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
    631af550
ib_isert.c 90.2 KB