Re: [bug report] blktests srp/011 hang at "ib_srpt srpt_disconnect_ch_sync:still waiting ..."

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Dec 3, 2021 at 2:42 AM Bart Van Assche <bvanassche@xxxxxxx> wrote:
>
> On 12/1/21 12:55 AM, Yi Zhang wrote:
> > [root@gigabyte-r120-11 blktests]# use_siw=1 ./check srp/011 -------------> hang
>
> Hi Yi,
>
> Does this only occur with the siw driver or also with the rdma_rxe driver?
>
> If this hang occurs with both drivers, how about bisecting this issue? I

Hi Bart
Bisecting shows it was introduced with below commit:
commit 5a836bf6b09f99ead1b69457ff39ab3011ece57b
Author: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx>
Date:   Fri Feb 26 17:11:55 2021 +0100

    mm: slub: move flush_cpu_slab() invocations __free_slab()
invocations out of IRQ context

    flush_all() flushes a specific SLAB cache on each CPU (where the cache
    is present). The deactivate_slab()/__free_slab() invocation happens
    within IPI handler and is problematic for PREEMPT_RT.

    The flush operation is not a frequent operation or a hot path. The
    per-CPU flush operation can be moved to within a workqueue.

    Because a workqueue handler, unlike IPI handler, does not disable irqs,
    flush_slab() now has to disable them for working with the kmem_cache_cpu
    fields. deactivate_slab() is safe to call with irqs enabled.

    [vbabka@xxxxxxx: adapt to new SLUB changes]
    Signed-off-by: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx>
    Signed-off-by: Vlastimil Babka <vbabka@xxxxxxx>

BTW, I just found this issue cannot be reproduced If I update the
ch_count to 10,.
# cat /etc/modprobe.d/ib_srp.conf
options ib_srp ch_count=10


> have not yet run into this issue with the rdma_rxe driver and Linus' master
> branch.
>
> Thanks,
>
> Bart.
>


-- 
Best Regards,
  Yi Zhang




[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux