• Adrian Hunter's avatar
    scsi: ufs: Fix runtime PM messages never-ending cycle · 71bb9ab6
    Adrian Hunter authored
    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: default avatarAdrian Hunter <adrian.hunter@intel.com>
    Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
    71bb9ab6
ufshcd.c 266 KB