diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2023-09-09 12:01:33 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2023-09-09 12:01:33 -0700 |
commit | 2a5a4326e58339a26cd1510259e7310b8c0980ff (patch) | |
tree | 91a0b3ec8595eb07f99900aa9fc0a023fb42ce9b /drivers/scsi/sd.c | |
parent | 6b41fb277ed41a73608328431f2e76e68c3bca37 (diff) | |
parent | 9f6fec65661381e301ae0f9ee8b4c12b0214a579 (diff) |
Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi
Pull more SCSI updates from James Bottomley:
"Mostly small stragglers that missed the initial merge.
Driver updates are qla2xxx and smartpqi (mp3sas has a high diffstat
due to the volatile qualifier removal, fnic due to unused function
removal and sd.c has a lot of code shuffling to remove forward
declarations)"
* tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (38 commits)
scsi: ufs: core: No need to update UPIU.header.flags and lun in advanced RPMB handler
scsi: ufs: core: Add advanced RPMB support where UFSHCI 4.0 does not support EHS length in UTRD
scsi: mpt3sas: Remove volatile qualifier
scsi: mpt3sas: Perform additional retries if doorbell read returns 0
scsi: libsas: Simplify sas_queue_reset() and remove unused code
scsi: ufs: Fix the build for the old ARM OABI
scsi: qla2xxx: Fix unused variable warning in qla2xxx_process_purls_pkt()
scsi: fnic: Remove unused functions fnic_scsi_host_start/end_tag()
scsi: qla2xxx: Fix spelling mistake "tranport" -> "transport"
scsi: fnic: Replace sgreset tag with max_tag_id
scsi: qla2xxx: Remove unused variables in qla24xx_build_scsi_type_6_iocbs()
scsi: qla2xxx: Fix nvme_fc_rcv_ls_req() undefined error
scsi: smartpqi: Change driver version to 2.1.24-046
scsi: smartpqi: Enhance error messages
scsi: smartpqi: Enhance controller offline notification
scsi: smartpqi: Enhance shutdown notification
scsi: smartpqi: Simplify lun_number assignment
scsi: smartpqi: Rename pciinfo to pci_info
scsi: smartpqi: Rename MACRO to clarify purpose
scsi: smartpqi: Add abort handler
...
Diffstat (limited to 'drivers/scsi/sd.c')
-rw-r--r-- | drivers/scsi/sd.c | 66 |
1 files changed, 27 insertions, 39 deletions
diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c index 3c668cfb146d..c92a317ba547 100644 --- a/drivers/scsi/sd.c +++ b/drivers/scsi/sd.c @@ -104,19 +104,7 @@ static void sd_config_discard(struct scsi_disk *, unsigned int); static void sd_config_write_same(struct scsi_disk *); static int sd_revalidate_disk(struct gendisk *); static void sd_unlock_native_capacity(struct gendisk *disk); -static int sd_probe(struct device *); -static int sd_remove(struct device *); static void sd_shutdown(struct device *); -static int sd_suspend_system(struct device *); -static int sd_suspend_runtime(struct device *); -static int sd_resume_system(struct device *); -static int sd_resume_runtime(struct device *); -static void sd_rescan(struct device *); -static blk_status_t sd_init_command(struct scsi_cmnd *SCpnt); -static void sd_uninit_command(struct scsi_cmnd *SCpnt); -static int sd_done(struct scsi_cmnd *); -static void sd_eh_reset(struct scsi_cmnd *); -static int sd_eh_action(struct scsi_cmnd *, int); static void sd_read_capacity(struct scsi_disk *sdkp, unsigned char *buffer); static void scsi_disk_release(struct device *cdev); @@ -592,33 +580,6 @@ static struct class sd_disk_class = { .dev_groups = sd_disk_groups, }; -static const struct dev_pm_ops sd_pm_ops = { - .suspend = sd_suspend_system, - .resume = sd_resume_system, - .poweroff = sd_suspend_system, - .restore = sd_resume_system, - .runtime_suspend = sd_suspend_runtime, - .runtime_resume = sd_resume_runtime, -}; - -static struct scsi_driver sd_template = { - .gendrv = { - .name = "sd", - .owner = THIS_MODULE, - .probe = sd_probe, - .probe_type = PROBE_PREFER_ASYNCHRONOUS, - .remove = sd_remove, - .shutdown = sd_shutdown, - .pm = &sd_pm_ops, - }, - .rescan = sd_rescan, - .init_command = sd_init_command, - .uninit_command = sd_uninit_command, - .done = sd_done, - .eh_action = sd_eh_action, - .eh_reset = sd_eh_reset, -}; - /* * Don't request a new module, as that could deadlock in multipath * environment. @@ -3929,6 +3890,33 @@ static int sd_resume_runtime(struct device *dev) return sd_resume(dev); } +static const struct dev_pm_ops sd_pm_ops = { + .suspend = sd_suspend_system, + .resume = sd_resume_system, + .poweroff = sd_suspend_system, + .restore = sd_resume_system, + .runtime_suspend = sd_suspend_runtime, + .runtime_resume = sd_resume_runtime, +}; + +static struct scsi_driver sd_template = { + .gendrv = { + .name = "sd", + .owner = THIS_MODULE, + .probe = sd_probe, + .probe_type = PROBE_PREFER_ASYNCHRONOUS, + .remove = sd_remove, + .shutdown = sd_shutdown, + .pm = &sd_pm_ops, + }, + .rescan = sd_rescan, + .init_command = sd_init_command, + .uninit_command = sd_uninit_command, + .done = sd_done, + .eh_action = sd_eh_action, + .eh_reset = sd_eh_reset, +}; + /** * init_sd - entry point for this driver (both when built in or when * a module). |