Public bug reported:

[IMPACT]
This upstream commit:

863fbae929c7a5b64e96b8a3ffb34a29eefb9f8f nvme_fc: add module to ops
template to allow module references

was pulled into Focal as part of this bug:
https://bugs.launchpad.net/bugs/1860125 and this commit into Focal:
a7441301b20dc8a7772972a092968bb353b7a642

This patch was added to prevent the unloading of lpfc driver when doing
NVMe BFS booting.  Broadcom has identified that this patch introduces a
bug that prevents unloading of lpfc driver in the non-BFS case as well.

Because of this, they have asked that we revert this patch and remove it
from our kernel, and also said that they are working on a patch upstream
to revert this as well.  As it may not land upstream in time to meet
kernel freeze for Focal, I'm providing a patch to revert this commit in
Focal.

Broadcom has asked that we revert this commit from the Focal tree and
are working on a patch to revert this commit upstream.  The reason is
that this patch has been determined to be the root cause of a bug
identified by the upstream provider

[FIXES]
To resolve, revert the following commit ID in the Focal Tree:
a7441301b20dc8a7772972a092968bb353b7a642
nvme_fc: add module to ops template to allow module references

    BugLink: https://bugs.launchpad.net/bugs/1860125

    [ Upstream commit 863fbae929c7a5b64e96b8a3ffb34a29eefb9f8f ]

    In nvme-fc: it's possible to have connected active controllers
    and as no references are taken on the LLDD, the LLDD can be
    unloaded.  The controller would enter a reconnect state and as
    long as the LLDD resumed within the reconnect timeout, the
    controller would resume.  But if a namespace on the controller
    is the root device, allowing the driver to unload can be problematic.
    To reload the driver, it may require new io to the boot device,
    and as it's no longer connected we get into a catch-22 that
    eventually fails, and the system locks up.

    Fix this issue by taking a module reference for every connected
    controller (which is what the core layer did to the transport
    module). Reference is cleared when the controller is removed.

    Acked-by: Himanshu Madhani <hmadh...@marvell.com>
    Reviewed-by: Christoph Hellwig <h...@lst.de>
    Signed-off-by: James Smart <jsmart2...@gmail.com>
    Signed-off-by: Keith Busch <kbu...@kernel.org>
    Signed-off-by: Sasha Levin <sas...@kernel.org>
    Signed-off-by: Paolo Pisati <paolo.pis...@canonical.com>

[REGRESSION RISK]
Regression risk is low as this is a new patch introduced upstream and synced 
into a development release.  The patch only exists in our tree from 
Ubuntu-5.4-5.4.0-13.16 onwards and does not affect older kernels.

** Affects: linux (Ubuntu)
     Importance: High
     Assignee: Jeff Lane (bladernr)
         Status: In Progress

** Changed in: linux (Ubuntu)
       Status: New => In Progress

** Changed in: linux (Ubuntu)
   Importance: Undecided => High

** Changed in: linux (Ubuntu)
     Assignee: (unassigned) => Jeff Lane (bladernr)

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

Title:
  revert patch that introduces bug that prevents lpfc driver unloading

Status in linux package in Ubuntu:
  In Progress

Bug description:
  [IMPACT]
  This upstream commit:

  863fbae929c7a5b64e96b8a3ffb34a29eefb9f8f nvme_fc: add module to ops
  template to allow module references

  was pulled into Focal as part of this bug:
  https://bugs.launchpad.net/bugs/1860125 and this commit into Focal:
  a7441301b20dc8a7772972a092968bb353b7a642

  This patch was added to prevent the unloading of lpfc driver when
  doing NVMe BFS booting.  Broadcom has identified that this patch
  introduces a bug that prevents unloading of lpfc driver in the non-BFS
  case as well.

  Because of this, they have asked that we revert this patch and remove
  it from our kernel, and also said that they are working on a patch
  upstream to revert this as well.  As it may not land upstream in time
  to meet kernel freeze for Focal, I'm providing a patch to revert this
  commit in Focal.

  Broadcom has asked that we revert this commit from the Focal tree and
  are working on a patch to revert this commit upstream.  The reason is
  that this patch has been determined to be the root cause of a bug
  identified by the upstream provider

  [FIXES]
  To resolve, revert the following commit ID in the Focal Tree:
  a7441301b20dc8a7772972a092968bb353b7a642
  nvme_fc: add module to ops template to allow module references

      BugLink: https://bugs.launchpad.net/bugs/1860125

      [ Upstream commit 863fbae929c7a5b64e96b8a3ffb34a29eefb9f8f ]

      In nvme-fc: it's possible to have connected active controllers
      and as no references are taken on the LLDD, the LLDD can be
      unloaded.  The controller would enter a reconnect state and as
      long as the LLDD resumed within the reconnect timeout, the
      controller would resume.  But if a namespace on the controller
      is the root device, allowing the driver to unload can be problematic.
      To reload the driver, it may require new io to the boot device,
      and as it's no longer connected we get into a catch-22 that
      eventually fails, and the system locks up.

      Fix this issue by taking a module reference for every connected
      controller (which is what the core layer did to the transport
      module). Reference is cleared when the controller is removed.

      Acked-by: Himanshu Madhani <hmadh...@marvell.com>
      Reviewed-by: Christoph Hellwig <h...@lst.de>
      Signed-off-by: James Smart <jsmart2...@gmail.com>
      Signed-off-by: Keith Busch <kbu...@kernel.org>
      Signed-off-by: Sasha Levin <sas...@kernel.org>
      Signed-off-by: Paolo Pisati <paolo.pis...@canonical.com>

  [REGRESSION RISK]
  Regression risk is low as this is a new patch introduced upstream and synced 
into a development release.  The patch only exists in our tree from 
Ubuntu-5.4-5.4.0-13.16 onwards and does not affect older kernels.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1869947/+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