[SCSI] st: Fixup -ENOMEDIUM

Based on the original patch from Hannes Reinecke <[email protected]>

Fix st_open() to return -ENOMEDIUM instead of -EIO if no medium is
found.

Signed-off-by: Kai Makisara <[email protected]>
Signed-off-by: James Bottomley <[email protected]>
diff --git a/drivers/scsi/st.c b/drivers/scsi/st.c
index 3babdc7..e1a52c5 100644
--- a/drivers/scsi/st.c
+++ b/drivers/scsi/st.c
@@ -1177,7 +1177,10 @@
 		goto err_out;
 	if ((filp->f_flags & O_NONBLOCK) == 0 &&
 	    retval != CHKRES_READY) {
-		retval = (-EIO);
+		if (STp->ready == NO_TAPE)
+			retval = (-ENOMEDIUM);
+		else
+			retval = (-EIO);
 		goto err_out;
 	}
 	return 0;