Commit 7fd66446 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull SCSI fixes from James Bottomley:
 "Two small fixes, all in drivers (the more obsolete mpt3sas and the
  newer mpi3mr)"

* tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
  scsi: mpt3sas: Prevent sending diag_reset when the controller is ready
  scsi: mpi3mr: Reduce stack usage in mpi3mr_refresh_sas_ports()
parents 5ad3cb0e ee0017c3
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -1671,7 +1671,7 @@ mpi3mr_update_mr_sas_port(struct mpi3mr_ioc *mrioc, struct host_port *h_port,
void
mpi3mr_refresh_sas_ports(struct mpi3mr_ioc *mrioc)
{
	struct host_port h_port[64];
	struct host_port *h_port = NULL;
	int i, j, found, host_port_count = 0, port_idx;
	u16 sz, attached_handle, ioc_status;
	struct mpi3_sas_io_unit_page0 *sas_io_unit_pg0 = NULL;
@@ -1685,6 +1685,10 @@ mpi3mr_refresh_sas_ports(struct mpi3mr_ioc *mrioc)
	sas_io_unit_pg0 = kzalloc(sz, GFP_KERNEL);
	if (!sas_io_unit_pg0)
		return;
	h_port = kcalloc(64, sizeof(struct host_port), GFP_KERNEL);
	if (!h_port)
		goto out;

	if (mpi3mr_cfg_get_sas_io_unit_pg0(mrioc, sas_io_unit_pg0, sz)) {
		ioc_err(mrioc, "failure at %s:%d/%s()!\n",
		    __FILE__, __LINE__, __func__);
@@ -1814,6 +1818,7 @@ mpi3mr_refresh_sas_ports(struct mpi3mr_ioc *mrioc)
		}
	}
out:
	kfree(h_port);
	kfree(sas_io_unit_pg0);
}

+3 −1
Original line number Diff line number Diff line
@@ -7378,6 +7378,8 @@ _base_wait_for_iocstate(struct MPT3SAS_ADAPTER *ioc, int timeout)
		return -EFAULT;
	}

	return 0;

issue_diag_reset:
	rc = _base_diag_reset(ioc);
	return rc;