Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-78

kiblnd_check_conns can deadlock

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major
    • Lustre 2.2.0, Lustre 2.1.2
    • Lustre 2.0.0, Lustre 1.8.6
    • 3
    • 20,288
    • 4708

      kiblnd_check_conns() called kiblnd_check_sends() with read_lock(&kiblnd_data.kib_global_lock), it's
      so wrong because kiblnd_check_sends() could do a lot of things:
      1. lnet_finalize(), which is not safe with spinlock
      2. kiblnd_close_conn(), which will hold write_lock(&kiblnd_data.kib_global_lock) to be bomb of
      deadlock

      There is a patch in the bug from Isaac, but it introduced som regressions and was therefore reverted.

            liang Liang Zhen (Inactive)
            green Oleg Drokin
            Votes:
            0 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated:
              Resolved: