Public bug reported:

SRU Justification:

[Impact]
The mlxbf_gige driver encounters a NULL pointer exception in
mlxbf_gige_open() when kdump is enabled.  The exception happens
because there is a pending RX interrupt before the call to
request_irq(RX IRQ) executes.  Then, the RX IRQ handler fires
immediately after this request_irq() completes. The RX IRQ handler
runs "napi_schedule()" before NAPI is fully initialized via
"netif_napi_add()" and "napi_enable()", both which happen later
in the open() logic.

[Fix]
The logic in mlxbf_gige_open() must fully initialize NAPI before
any calls to request_irq() execute.

[Test Case]
* Boot BF platform and bring up "oob_net0" interface
* Enable kdump completely
* Trigger kdump via "echo c > /proc/sysrq-trigger"
* There should be no exceptions from mlxbf_gige driver

[Regression Potential]
There is low potential for regression as this brings in upstream content.

[Other]
None

** Affects: linux-bluefield (Ubuntu)
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux-bluefield in Ubuntu.
https://bugs.launchpad.net/bugs/2059310

Title:
  mlxbf_gige: call request_irq() after NAPI initialized

Status in linux-bluefield package in Ubuntu:
  New

Bug description:
  SRU Justification:

  [Impact]
  The mlxbf_gige driver encounters a NULL pointer exception in
  mlxbf_gige_open() when kdump is enabled.  The exception happens
  because there is a pending RX interrupt before the call to
  request_irq(RX IRQ) executes.  Then, the RX IRQ handler fires
  immediately after this request_irq() completes. The RX IRQ handler
  runs "napi_schedule()" before NAPI is fully initialized via
  "netif_napi_add()" and "napi_enable()", both which happen later
  in the open() logic.

  [Fix]
  The logic in mlxbf_gige_open() must fully initialize NAPI before
  any calls to request_irq() execute.

  [Test Case]
  * Boot BF platform and bring up "oob_net0" interface
  * Enable kdump completely
  * Trigger kdump via "echo c > /proc/sysrq-trigger"
  * There should be no exceptions from mlxbf_gige driver

  [Regression Potential]
  There is low potential for regression as this brings in upstream content.

  [Other]
  None

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux-bluefield/+bug/2059310/+subscriptions


-- 
Mailing list: https://launchpad.net/~kernel-packages
Post to     : kernel-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kernel-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to