** Summary changed:

- revert patch that introduces bug that prevents lpfc driver unloading
+ nvme_fc patch prevents unloading of lpfc module in both BFS and non-BFS 
scenarios

** Description changed:

  [IMPACT]
  This upstream commit:
  
- 863fbae929c7a5b64e96b8a3ffb34a29eefb9f8f nvme_fc: add module to ops
- template to allow module references
+ 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:
+ 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.
  
  [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 <[email protected]>
      Reviewed-by: Christoph Hellwig <[email protected]>
      Signed-off-by: James Smart <[email protected]>
      Signed-off-by: Keith Busch <[email protected]>
      Signed-off-by: Sasha Levin <[email protected]>
      Signed-off-by: Paolo Pisati <[email protected]>
  
  An updated tree with the commit reverted can be found here:
  
https://code.launchpad.net/~bladernr/ubuntu/+source/linux/+git/focal/+ref/1869947-revert-lpfc-patch
  
  [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.

** Summary changed:

- nvme_fc patch prevents unloading of lpfc module in both BFS and non-BFS 
scenarios
+ nvme_fc patch prevents unloading lpfs module in both BFS and non-BFS scenarios

** Summary changed:

- nvme_fc patch prevents unloading lpfs module in both BFS and non-BFS scenarios
+ Revert "nvme_fc: add module to ops template to allow module references"

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

Title:
  Revert "nvme_fc: add module to ops template to allow module
  references"

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

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to