Skip to content

Commit 55e0500

Browse files
committed
Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi
Pull SCSI updates from James Bottomley: "The usual driver updates (ufs, qla2xxx, tcmu, ibmvfc, lpfc, smartpqi, hisi_sas, qedi, qedf, mpt3sas) and minor bug fixes. There are only three core changes: adding sense codes, cleaning up noretry and adding an option for limitless retries" * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (226 commits) scsi: hisi_sas: Recover PHY state according to the status before reset scsi: hisi_sas: Filter out new PHY up events during suspend scsi: hisi_sas: Add device link between SCSI devices and hisi_hba scsi: hisi_sas: Add check for methods _PS0 and _PR0 scsi: hisi_sas: Add controller runtime PM support for v3 hw scsi: hisi_sas: Switch to new framework to support suspend and resume scsi: hisi_sas: Use hisi_hba->cq_nvecs for calling calling synchronize_irq() scsi: qedf: Remove redundant assignment to variable 'rc' scsi: lpfc: Remove unneeded variable 'status' in lpfc_fcp_cpu_map_store() scsi: snic: Convert to use DEFINE_SEQ_ATTRIBUTE macro scsi: qla4xxx: Delete unneeded variable 'status' in qla4xxx_process_ddb_changed scsi: sun_esp: Use module_platform_driver to simplify the code scsi: sun3x_esp: Use module_platform_driver to simplify the code scsi: sni_53c710: Use module_platform_driver to simplify the code scsi: qlogicpti: Use module_platform_driver to simplify the code scsi: mac_esp: Use module_platform_driver to simplify the code scsi: jazz_esp: Use module_platform_driver to simplify the code scsi: mvumi: Fix error return in mvumi_io_attach() scsi: lpfc: Drop nodelist reference on error in lpfc_gen_req() scsi: be2iscsi: Fix a theoretical leak in beiscsi_create_eqs() ...
2 parents 4815519 + 69f4ec1 commit 55e0500

File tree

147 files changed

+4134
-2195
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

147 files changed

+4134
-2195
lines changed

Documentation/devicetree/bindings/ufs/ufs-mediatek.txt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,9 @@ contain a phandle reference to UFS M-PHY node.
99
Required properties for UFS nodes:
1010
- compatible : Compatible list, contains the following controller:
1111
"mediatek,mt8183-ufshci" for MediaTek UFS host controller
12-
present on MT81xx chipsets.
12+
present on MT8183 chipsets.
13+
"mediatek,mt8192-ufshci" for MediaTek UFS host controller
14+
present on MT8192 chipsets.
1315
- reg : Address and length of the UFS register set.
1416
- phys : phandle to m-phy.
1517
- clocks : List of phandle and clock specifier pairs.

Documentation/scsi/scsi_mid_low_api.rst

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -271,12 +271,6 @@ Conventions
271271
First, Linus Torvalds's thoughts on C coding style can be found in the
272272
Documentation/process/coding-style.rst file.
273273

274-
Next, there is a movement to "outlaw" typedefs introducing synonyms for
275-
struct tags. Both can be still found in the SCSI subsystem, but
276-
the typedefs have been moved to a single file, scsi_typedefs.h to
277-
make their future removal easier, for example:
278-
"typedef struct scsi_cmnd Scsi_Cmnd;"
279-
280274
Also, most C99 enhancements are encouraged to the extent they are supported
281275
by the relevant gcc compilers. So C99 style structure and array
282276
initializers are encouraged where appropriate. Don't go too far,

Documentation/scsi/smartpqi.rst

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
11
.. SPDX-License-Identifier: GPL-2.0
22
3-
=====================================
4-
SMARTPQI - Microsemi Smart PQI Driver
5-
=====================================
3+
==============================================
4+
SMARTPQI - Microchip Smart Storage SCSI driver
5+
==============================================
66

7-
This file describes the smartpqi SCSI driver for Microsemi
8-
(http://www.microsemi.com) PQI controllers. The smartpqi driver
9-
is the next generation SCSI driver for Microsemi Corp. The smartpqi
7+
This file describes the smartpqi SCSI driver for Microchip
8+
(http://www.microchip.com) PQI controllers. The smartpqi driver
9+
is the next generation SCSI driver for Microchip Corp. The smartpqi
1010
driver is the first SCSI driver to implement the PQI queuing model.
1111

1212
The smartpqi driver will replace the aacraid driver for Adaptec Series 9
1313
controllers. Customers running an older kernel (Pre-4.9) using an Adaptec
1414
Series 9 controller will have to configure the smartpqi driver or their
1515
volumes will not be added to the OS.
1616

17-
For Microsemi smartpqi controller support, enable the smartpqi driver
17+
For Microchip smartpqi controller support, enable the smartpqi driver
1818
when configuring the kernel.
1919

2020
For more information on the PQI Queuing Interface, please see:

MAINTAINERS

Lines changed: 19 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3520,13 +3520,17 @@ F: drivers/net/ethernet/broadcom/bnx2.*
35203520
F: drivers/net/ethernet/broadcom/bnx2_*
35213521

35223522
BROADCOM BNX2FC 10 GIGABIT FCOE DRIVER
3523-
3523+
M: Saurav Kashyap <[email protected]>
3524+
M: Javed Hasan <[email protected]>
3525+
35243526
35253527
S: Supported
35263528
F: drivers/scsi/bnx2fc/
35273529

35283530
BROADCOM BNX2I 1/10 GIGABIT iSCSI DRIVER
3529-
3531+
M: Nilesh Javali <[email protected]>
3532+
M: Manish Rangankar <[email protected]>
3533+
35303534
35313535
S: Supported
35323536
F: drivers/scsi/bnx2i/
@@ -7747,8 +7751,8 @@ F: Documentation/watchdog/hpwdt.rst
77477751
F: drivers/watchdog/hpwdt.c
77487752

77497753
HEWLETT-PACKARD SMART ARRAY RAID DRIVER (hpsa)
7750-
M: Don Brace <don.brace@microsemi.com>
7751-
L: esc.storagedev@microsemi.com
7754+
M: Don Brace <don.brace@microchip.com>
7755+
L: storagedev@microchip.com
77527756
77537757
S: Supported
77547758
F: Documentation/scsi/hpsa.rst
@@ -11546,8 +11550,8 @@ F: arch/mips/configs/generic/board-ocelot.config
1154611550
F: arch/mips/generic/board-ocelot.c
1154711551

1154811552
MICROSEMI SMART ARRAY SMARTPQI DRIVER (smartpqi)
11549-
M: Don Brace <don.brace@microsemi.com>
11550-
L: esc.storagedev@microsemi.com
11553+
M: Don Brace <don.brace@microchip.com>
11554+
L: storagedev@microchip.com
1155111555
1155211556
S: Supported
1155311557
F: Documentation/scsi/smartpqi.rst
@@ -14208,13 +14212,17 @@ S: Supported
1420814212
F: drivers/infiniband/hw/qib/
1420914213

1421014214
QLOGIC QL41xxx FCOE DRIVER
14211-
14215+
M: Saurav Kashyap <[email protected]>
14216+
M: Javed Hasan <[email protected]>
14217+
1421214218
1421314219
S: Supported
1421414220
F: drivers/scsi/qedf/
1421514221

1421614222
QLOGIC QL41xxx ISCSI DRIVER
14217-
14223+
M: Nilesh Javali <[email protected]>
14224+
M: Manish Rangankar <[email protected]>
14225+
1421814226
1421914227
S: Supported
1422014228
F: drivers/scsi/qedi/
@@ -14258,7 +14266,9 @@ F: Documentation/networking/device_drivers/qlogic/LICENSE.qla3xxx
1425814266
F: drivers/net/ethernet/qlogic/qla3xxx.*
1425914267

1426014268
QLOGIC QLA4XXX iSCSI DRIVER
14261-
14269+
M: Nilesh Javali <[email protected]>
14270+
M: Manish Rangankar <[email protected]>
14271+
1426214272
1426314273
S: Supported
1426414274
F: Documentation/scsi/LICENSE.qla4xxx

drivers/message/fusion/mptctl.c

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2593,7 +2593,7 @@ mptctl_hp_targetinfo(MPT_ADAPTER *ioc, unsigned long arg)
25932593
/* Get the data transfer speeds
25942594
*/
25952595
data_sz = ioc->spi_data.sdp0length * 4;
2596-
pg0_alloc = (SCSIDevicePage0_t *) pci_alloc_consistent(ioc->pcidev, data_sz, &page_dma);
2596+
pg0_alloc = pci_alloc_consistent(ioc->pcidev, data_sz, &page_dma);
25972597
if (pg0_alloc) {
25982598
hdr.PageVersion = ioc->spi_data.sdp0version;
25992599
hdr.PageLength = data_sz;
@@ -2657,8 +2657,7 @@ mptctl_hp_targetinfo(MPT_ADAPTER *ioc, unsigned long arg)
26572657
/* Issue the second config page request */
26582658
cfg.action = MPI_CONFIG_ACTION_PAGE_READ_CURRENT;
26592659
data_sz = (int) cfg.cfghdr.hdr->PageLength * 4;
2660-
pg3_alloc = (SCSIDevicePage3_t *) pci_alloc_consistent(
2661-
ioc->pcidev, data_sz, &page_dma);
2660+
pg3_alloc = pci_alloc_consistent(ioc->pcidev, data_sz, &page_dma);
26622661
if (pg3_alloc) {
26632662
cfg.physAddr = page_dma;
26642663
cfg.pageAddr = (karg.hdr.channel << 8) | karg.hdr.id;

drivers/message/fusion/mptfc.c

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -763,7 +763,7 @@ mptfc_GetFcPortPage0(MPT_ADAPTER *ioc, int portnum)
763763

764764
data_sz = hdr.PageLength * 4;
765765
rc = -ENOMEM;
766-
ppage0_alloc = (FCPortPage0_t *) pci_alloc_consistent(ioc->pcidev, data_sz, &page0_dma);
766+
ppage0_alloc = pci_alloc_consistent(ioc->pcidev, data_sz, &page0_dma);
767767
if (ppage0_alloc) {
768768

769769
try_again:
@@ -904,7 +904,7 @@ mptfc_GetFcPortPage1(MPT_ADAPTER *ioc, int portnum)
904904
if (data_sz < sizeof(FCPortPage1_t))
905905
data_sz = sizeof(FCPortPage1_t);
906906

907-
page1_alloc = (FCPortPage1_t *) pci_alloc_consistent(ioc->pcidev,
907+
page1_alloc = pci_alloc_consistent(ioc->pcidev,
908908
data_sz,
909909
&page1_dma);
910910
if (!page1_alloc)
@@ -922,8 +922,6 @@ mptfc_GetFcPortPage1(MPT_ADAPTER *ioc, int portnum)
922922
}
923923
}
924924

925-
memset(page1_alloc,0,data_sz);
926-
927925
cfg.physAddr = page1_dma;
928926
cfg.action = MPI_CONFIG_ACTION_PAGE_READ_CURRENT;
929927

drivers/message/fusion/mptscsih.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1516,7 +1516,6 @@ mptscsih_IssueTaskMgmt(MPT_SCSI_HOST *hd, u8 type, u8 channel, u8 id, u64 lun,
15161516
int ii;
15171517
int retval;
15181518
MPT_ADAPTER *ioc = hd->ioc;
1519-
unsigned long timeleft;
15201519
u8 issue_hard_reset;
15211520
u32 ioc_raw_state;
15221521
unsigned long time_count;
@@ -1614,7 +1613,7 @@ mptscsih_IssueTaskMgmt(MPT_SCSI_HOST *hd, u8 type, u8 channel, u8 id, u64 lun,
16141613
}
16151614
}
16161615

1617-
timeleft = wait_for_completion_timeout(&ioc->taskmgmt_cmds.done,
1616+
wait_for_completion_timeout(&ioc->taskmgmt_cmds.done,
16181617
timeout*HZ);
16191618
if (!(ioc->taskmgmt_cmds.status & MPT_MGMT_STATUS_COMMAND_GOOD)) {
16201619
retval = FAILED;

drivers/s390/scsi/zfcp_erp.c

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1607,7 +1607,6 @@ static enum zfcp_erp_act_result zfcp_erp_strategy(
16071607
static int zfcp_erp_thread(void *data)
16081608
{
16091609
struct zfcp_adapter *adapter = (struct zfcp_adapter *) data;
1610-
struct list_head *next;
16111610
struct zfcp_erp_action *act;
16121611
unsigned long flags;
16131612

@@ -1620,12 +1619,11 @@ static int zfcp_erp_thread(void *data)
16201619
break;
16211620

16221621
write_lock_irqsave(&adapter->erp_lock, flags);
1623-
next = adapter->erp_ready_head.next;
1622+
act = list_first_entry_or_null(&adapter->erp_ready_head,
1623+
struct zfcp_erp_action, list);
16241624
write_unlock_irqrestore(&adapter->erp_lock, flags);
16251625

1626-
if (next != &adapter->erp_ready_head) {
1627-
act = list_entry(next, struct zfcp_erp_action, list);
1628-
1626+
if (act) {
16291627
/* there is more to come after dismission, no notify */
16301628
if (zfcp_erp_strategy(act) != ZFCP_ERP_DISMISSED)
16311629
zfcp_erp_wakeup(adapter);

drivers/s390/scsi/zfcp_fsf.c

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -426,9 +426,14 @@ static void zfcp_fsf_protstatus_eval(struct zfcp_fsf_req *req)
426426
* or it has been dismissed due to a queue shutdown, this function
427427
* is called to process the completion status and trigger further
428428
* events related to the FSF request.
429+
* Caller must ensure that the request has been removed from
430+
* adapter->req_list, to protect against concurrent modification
431+
* by zfcp_erp_strategy_check_fsfreq().
429432
*/
430433
static void zfcp_fsf_req_complete(struct zfcp_fsf_req *req)
431434
{
435+
struct zfcp_erp_action *erp_action;
436+
432437
if (unlikely(zfcp_fsf_req_is_status_read_buffer(req))) {
433438
zfcp_fsf_status_read_handler(req);
434439
return;
@@ -439,8 +444,9 @@ static void zfcp_fsf_req_complete(struct zfcp_fsf_req *req)
439444
zfcp_fsf_fsfstatus_eval(req);
440445
req->handler(req);
441446

442-
if (req->erp_action)
443-
zfcp_erp_notify(req->erp_action, 0);
447+
erp_action = req->erp_action;
448+
if (erp_action)
449+
zfcp_erp_notify(erp_action, 0);
444450

445451
if (likely(req->status & ZFCP_STATUS_FSFREQ_CLEANUP))
446452
zfcp_fsf_req_free(req);

drivers/scsi/aacraid/aachba.c

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -242,7 +242,7 @@ int aac_commit = -1;
242242
int startup_timeout = 180;
243243
int aif_timeout = 120;
244244
int aac_sync_mode; /* Only Sync. transfer - disabled */
245-
int aac_convert_sgl = 1; /* convert non-conformable s/g list - enabled */
245+
static int aac_convert_sgl = 1; /* convert non-conformable s/g list - enabled */
246246

247247
module_param(aac_sync_mode, int, S_IRUGO|S_IWUSR);
248248
MODULE_PARM_DESC(aac_sync_mode, "Force sync. transfer mode"
@@ -290,7 +290,7 @@ MODULE_PARM_DESC(numacb, "Request a limit to the number of adapter control"
290290
" blocks (FIB) allocated. Valid values are 512 and down. Default is"
291291
" to use suggestion from Firmware.");
292292

293-
int acbsize = -1;
293+
static int acbsize = -1;
294294
module_param(acbsize, int, S_IRUGO|S_IWUSR);
295295
MODULE_PARM_DESC(acbsize, "Request a specific adapter control block (FIB)"
296296
" size. Valid values are 512, 2048, 4096 and 8192. Default is to use"
@@ -321,7 +321,7 @@ int aac_reset_devices;
321321
module_param_named(reset_devices, aac_reset_devices, int, S_IRUGO|S_IWUSR);
322322
MODULE_PARM_DESC(reset_devices, "Force an adapter reset at initialization.");
323323

324-
int aac_wwn = 1;
324+
static int aac_wwn = 1;
325325
module_param_named(wwn, aac_wwn, int, S_IRUGO|S_IWUSR);
326326
MODULE_PARM_DESC(wwn, "Select a WWN type for the arrays:\n"
327327
"\t0 - Disable\n"
@@ -2229,10 +2229,10 @@ int aac_get_adapter_info(struct aac_dev* dev)
22292229
}
22302230

22312231
if (dev->dac_support) {
2232-
if (!pci_set_dma_mask(dev->pdev, DMA_BIT_MASK(64))) {
2232+
if (!dma_set_mask(&dev->pdev->dev, DMA_BIT_MASK(64))) {
22332233
if (!dev->in_reset)
22342234
dev_info(&dev->pdev->dev, "64 Bit DAC enabled\n");
2235-
} else if (!pci_set_dma_mask(dev->pdev, DMA_BIT_MASK(32))) {
2235+
} else if (!dma_set_mask(&dev->pdev->dev, DMA_BIT_MASK(32))) {
22362236
dev_info(&dev->pdev->dev, "DMA mask set failed, 64 Bit DAC disabled\n");
22372237
dev->dac_support = 0;
22382238
} else {
@@ -3253,7 +3253,6 @@ int aac_scsi_cmd(struct scsi_cmnd * scsicmd)
32533253
case START_STOP:
32543254
return aac_start_stop(scsicmd);
32553255

3256-
fallthrough;
32573256
default:
32583257
/*
32593258
* Unhandled commands

0 commit comments

Comments
 (0)