Commit 98f69975 authored by Martin K. Petersen's avatar Martin K. Petersen
Browse files

Merge branch '7.1/scsi-queue' into 7.1/scsi-fixes



Pull in remaining commits from 7.1/scsi-queue.

Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parents 254f4963 2f383577
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -37,7 +37,7 @@
#define TPGS_MODE_EXPLICIT		0x2

#define ALUA_RTPG_SIZE			128
#define ALUA_FAILOVER_TIMEOUT		60
#define ALUA_FAILOVER_TIMEOUT		255	/* max 255 (8-bit value) */
#define ALUA_FAILOVER_RETRIES		5
#define ALUA_RTPG_DELAY_MSECS		5
#define ALUA_RTPG_RETRY_DELAY		2
+1 −1
Original line number Diff line number Diff line
@@ -1491,7 +1491,7 @@ static void prep_ata_v3_hw(struct hisi_hba *hisi_hba,
		phy_id = device->phy->identify.phy_identifier;
		hdr->dw0 |= cpu_to_le32((1U << phy_id)
				<< CMD_HDR_PHY_ID_OFF);
		hdr->dw0 |= CMD_HDR_FORCE_PHY_MSK;
		hdr->dw0 |= cpu_to_le32(CMD_HDR_FORCE_PHY_MSK);
		hdr->dw0 |= cpu_to_le32(4U << CMD_HDR_CMD_OFF);
	}

+13 −1
Original line number Diff line number Diff line
@@ -2738,8 +2738,20 @@ scsih_sdev_configure(struct scsi_device *sdev, struct queue_limits *lim)
				pcie_device->enclosure_level,
				pcie_device->connector_name);

		/*
		 * The HBA firmware passes the NVMe drive's MDTS
		 * (Maximum Data Transfer Size) up to the driver. However,
		 * the driver hardcodes a 4K buffer size for the PRP list,
		 * accommodating at most 512 entries. This strictly limits
		 * the maximum supported NVMe I/O transfer to 2 MiB.
		 *
		 * Cap max_hw_sectors to the smaller of the drive's reported
		 * MDTS or the 2 MiB driver limit to prevent kernel oopses.
		 */
		lim->max_hw_sectors = SZ_2M >> SECTOR_SHIFT;
		if (pcie_device->nvme_mdts)
			lim->max_hw_sectors = pcie_device->nvme_mdts / 512;
			lim->max_hw_sectors = min(lim->max_hw_sectors,
					pcie_device->nvme_mdts >> SECTOR_SHIFT);

		pcie_device_put(pcie_device);
		spin_unlock_irqrestore(&ioc->pcie_device_lock, flags);
+1 −1
Original line number Diff line number Diff line
@@ -657,7 +657,7 @@ struct pmcraid_hostrcb {
 */
struct pmcraid_instance {
	/* Array of allowed-to-be-exposed resources, initialized from
	 * Configutation Table, later updated with CCNs
	 * Configuration Table, later updated with CCNs
	 */
	struct pmcraid_resource_entry *res_entries;

+1 −1
Original line number Diff line number Diff line
@@ -1801,7 +1801,7 @@ sg_start_req(Sg_request *srp, unsigned char *cmd)
	}

	res = blk_rq_map_user_io(rq, md, hp->dxferp, hp->dxfer_len,
			GFP_ATOMIC, iov_count, iov_count, 1, rw);
			GFP_KERNEL, iov_count, iov_count, 1, rw);
	if (!res) {
		srp->bio = rq->bio;

Loading