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

Commit 93805091 authored by Christoph Hellwig's avatar Christoph Hellwig Committed by James Bottomley
Browse files

[SCSI] scsi: handle ->slave_configure return value



When >slave_configure fails the scsi midlayer should handle it.

Signed-off-by: default avatarJames Bottomley <James.Bottomley@SteelEye.com>
parent 8b097a67
Loading
Loading
Loading
Loading
+14 −2
Original line number Diff line number Diff line
@@ -752,8 +752,20 @@ static int scsi_add_lun(struct scsi_device *sdev, char *inq_result, int *bflags)

	transport_configure_device(&sdev->sdev_gendev);

	if (sdev->host->hostt->slave_configure)
		sdev->host->hostt->slave_configure(sdev);
	if (sdev->host->hostt->slave_configure) {
		int ret = sdev->host->hostt->slave_configure(sdev);
		if (ret) {
			/*
			 * if LLDD reports slave not present, don't clutter
			 * console with alloc failure messages
			 */
			if (ret != -ENXIO) {
				sdev_printk(KERN_ERR, sdev,
					"failed to configure device\n");
			}
			return SCSI_SCAN_NO_RESPONSE;
		}
	}

	/*
	 * Ok, the device is now all set up, we can