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

LNet: restore kernel callback before freeing listener socket

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • Medium
    • None
    • None
    • 3
    • 9223372036854775807

    Description

      If callback is not restored before the socket is freed,  it can be released while its sk_data_ready still points at lnet_acceptor_ready. A late interrupt can then occur during the teardown and cause a crash similar to the following: 

      [13332.813987] BUG: unable to handle kernel NULL pointer dereference at 0000000000000000
      [13332.815268] PGD 0 P4D 0
      [13332.815730] Oops: 0000 [#1] SMP PTI
      [13332.816323] CPU: 1 PID: 0 Comm: swapper/1 Kdump: loaded Tainted: G OE -------- - - 4.18.0-553.51.1.el8_10.x86_64 #1
      [13332.818144] Hardware name: Red Hat KVM, BIOS 0.5.1 01/01/2011 [13332.819071] RIP: 0010:__wake_up_common+0x4c/0x190 

       

      Attachments

        Activity

          People

            ssmirnov Serguei Smirnov
            ssmirnov Serguei Smirnov
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated: