Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 647b2425 authored by FUJITA Tomonori's avatar FUJITA Tomonori Committed by James Bottomley
Browse files

[SCSI] aic7xxx: fix IOMMU mapping failure handling

parent ed5f606f
Loading
Loading
Loading
Loading
+7 −3
Original line number Diff line number Diff line
@@ -1398,12 +1398,18 @@ ahc_linux_run_command(struct ahc_softc *ahc, struct ahc_linux_device *dev,
			return SCSI_MLQUEUE_DEVICE_BUSY;
	}

	nseg = scsi_dma_map(cmd);
	if (nseg < 0)
		return SCSI_MLQUEUE_HOST_BUSY;

	/*
	 * Get an scb to use.
	 */
	scb = ahc_get_scb(ahc);
	if (!scb)
	if (!scb) {
		scsi_dma_unmap(cmd);
		return SCSI_MLQUEUE_HOST_BUSY;
	}

	scb->io_ctx = cmd;
	scb->platform_data->dev = dev;
@@ -1464,8 +1470,6 @@ ahc_linux_run_command(struct ahc_softc *ahc, struct ahc_linux_device *dev,
	ahc_set_sense_residual(scb, 0);
	scb->sg_count = 0;

	nseg = scsi_dma_map(cmd);
	BUG_ON(nseg < 0);
	if (nseg > 0) {
		struct	ahc_dma_seg *sg;
		struct	scatterlist *cur_seg;