1. 16 3月, 2022 1 次提交
    • J
      scsi: lpfc: SLI path split: Refactor lpfc_iocbq · a680a929
      James Smart 提交于
      Currently, SLI3 and SLI4 data paths use the same lpfc_iocbq structure.
      This is a "common" structure but many of the components refer to sli-rev
      specific entities which can lead the developer astray as to what they
      actually mean, should be set to, or when they should be used.
      
      This first patch prepares the lpfc_iocbq structure so that elements common
      to both SLI3 and SLI4 data paths are more appropriately named, making it
      clear they apply generically.
      
      Fieldnames based on 'iocb' (sli3) or 'wqe' (sli4) which are actually
      generic to the paths are renamed to 'cmd':
      
       - iocb_flag is renamed to cmd_flag
      
       - lpfc_vmid_iocb_tag is renamed to lpfc_vmid_tag
      
       - fabric_iocb_cmpl is renamed to fabric_cmd_cmpl
      
       - wait_iocb_cmpl is renamed to wait_cmd_cmpl
      
       - iocb_cmpl and wqe_cmpl are combined and renamed to cmd_cmpl
      
       - rsvd2 member is renamed to num_bdes due to pre-existing usage
      
      The structure name itself will retain the iocb reference as changing to a
      more relevant "job" or "cmd" title induces many hundreds of line changes
      for only a name change.
      
      lpfc_post_buffer is also renamed to lpfc_sli3_post_buffer to indicate use
      in the SLI3 path only.
      
      Link: https://lore.kernel.org/r/20220225022308.16486-2-jsmart2021@gmail.comCo-developed-by: NJustin Tee <justin.tee@broadcom.com>
      Signed-off-by: NJustin Tee <justin.tee@broadcom.com>
      Signed-off-by: NJames Smart <jsmart2021@gmail.com>
      Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
      a680a929
  2. 15 3月, 2022 30 次提交
  3. 09 3月, 2022 7 次提交
  4. 02 3月, 2022 2 次提交
    • A
      scsi: ufs: Fix runtime PM messages never-ending cycle · 71bb9ab6
      Adrian Hunter 提交于
      Kernel messages produced during runtime PM can cause a never-ending cycle
      because user space utilities (e.g. journald or rsyslog) write the messages
      back to storage, causing runtime resume, more messages, and so on.
      
      Messages that tell of things that are expected to happen, are arguably
      unnecessary, so suppress them.
      
      UFS driver messages are changes to from dev_err() to dev_dbg() which means
      they will not display unless activated by dynamic debug of building with
      -DDEBUG.
      
      sdev->silence_suspend is set to skip messages from sd_suspend_common()
      "Synchronizing SCSI cache", "Stopping disk" and scsi_report_sense()
      "Power-on or device reset occurred" message (Note, that message appears
      when the LUN is accessed after runtime PM, not during runtime PM)
      
       Example messages from Ubuntu 21.10:
      
       $ dmesg | tail
       [ 1620.380071] ufshcd 0000:00:12.5: ufshcd_print_pwr_info:[RX, TX]: gear=[1, 1], lane[1, 1], pwr[SLOWAUTO_MODE, SLOWAUTO_MODE], rate = 0
       [ 1620.408825] ufshcd 0000:00:12.5: ufshcd_print_pwr_info:[RX, TX]: gear=[4, 4], lane[2, 2], pwr[FAST MODE, FAST MODE], rate = 2
       [ 1620.409020] ufshcd 0000:00:12.5: ufshcd_find_max_sup_active_icc_level: Regulator capability was not set, actvIccLevel=0
       [ 1620.409524] sd 0:0:0:0: Power-on or device reset occurred
       [ 1622.938794] sd 0:0:0:0: [sda] Synchronizing SCSI cache
       [ 1622.939184] ufs_device_wlun 0:0:0:49488: Power-on or device reset occurred
       [ 1625.183175] ufshcd 0000:00:12.5: ufshcd_print_pwr_info:[RX, TX]: gear=[1, 1], lane[1, 1], pwr[SLOWAUTO_MODE, SLOWAUTO_MODE], rate = 0
       [ 1625.208041] ufshcd 0000:00:12.5: ufshcd_print_pwr_info:[RX, TX]: gear=[4, 4], lane[2, 2], pwr[FAST MODE, FAST MODE], rate = 2
       [ 1625.208311] ufshcd 0000:00:12.5: ufshcd_find_max_sup_active_icc_level: Regulator capability was not set, actvIccLevel=0
       [ 1625.209035] sd 0:0:0:0: Power-on or device reset occurred
      
      Note for stable: depends on patch "scsi: core: sd: Add silence_suspend flag
      to suppress some PM messages".
      
      Link: https://lore.kernel.org/r/20220228113652.970857-3-adrian.hunter@intel.com
      Cc: stable@vger.kernel.org
      Signed-off-by: NAdrian Hunter <adrian.hunter@intel.com>
      Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
      71bb9ab6
    • A
      scsi: core: sd: Add silence_suspend flag to suppress some PM messages · af4edb1d
      Adrian Hunter 提交于
      Kernel messages produced during runtime PM can cause a never-ending cycle
      because user space utilities (e.g. journald or rsyslog) write the messages
      back to storage, causing runtime resume, more messages, and so on.
      
      Messages that tell of things that are expected to happen are arguably
      unnecessary, so add a flag to suppress them. This flag is used by the UFS
      driver.
      
      Link: https://lore.kernel.org/r/20220228113652.970857-2-adrian.hunter@intel.com
      Cc: stable@vger.kernel.org
      Signed-off-by: NAdrian Hunter <adrian.hunter@intel.com>
      Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
      af4edb1d