Driver added a new dev_pm_ops structure used only if CONFIG_PM is set. The CONFIG_PM MACRO needed to be moved up in the code to avoid the compiler warnings. The HUNK to move the location was missing from the above patch. Found by kernel test robot by building driver with CONFIG_PM disabled. Link: https://lore.kernel.org/all/202202090657.bstNLuce-lkp@xxxxxxxxx/ Correct compiler warning >> drivers/scsi/smartpqi/smartpqi_init.c:9067:32: warning: unused variable 'pqi_pm_ops' [-Wunused-const-variable] static const struct dev_pm_ops pqi_pm_ops = { ^ 1 warning generated. Fixes: c66e078ad89e ("scsi: smartpqi: Fix hibernate and suspend)" Reported-by: kernel test robot <lkp@xxxxxxxxx> Reviewed-by: Scott Teel <scott.teel@xxxxxxxxxxxxx> Reviewed-by: Scott Benesh <scott.benesh@xxxxxxxxxxxxx> Reviewed-by: Mike Mcgowen <mike.mcgowen@xxxxxxxxxxxxx> Reviewed-by: Kevin Barnett <kevin.barnett@xxxxxxxxxxxxx> Signed-off-by: Don Brace <don.brace@xxxxxxxxxxxxx> --- drivers/scsi/smartpqi/smartpqi_init.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c index 61366642ea95..4611912ae261 100644 --- a/drivers/scsi/smartpqi/smartpqi_init.c +++ b/drivers/scsi/smartpqi/smartpqi_init.c @@ -8951,6 +8951,8 @@ static void pqi_process_module_params(void) pqi_process_lockup_action_param(); } +#if defined(CONFIG_PM) + static inline enum bmic_flush_cache_shutdown_event pqi_get_flush_cache_shutdown_event(struct pci_dev *pci_dev) { if (pci_dev->subsystem_vendor == PCI_VENDOR_ID_ADAPTEC2 && pci_dev->subsystem_device == 0x1304) @@ -9073,6 +9075,8 @@ static const struct dev_pm_ops pqi_pm_ops = { .restore = pqi_resume_or_restore, }; +#endif /* CONFIG_PM */ + /* Define the PCI IDs for the controllers that we support. */ static const struct pci_device_id pqi_pci_id_table[] = { { -- 2.28.0.rc1.9.ge7ae437ac1