Commit 1fca631a authored by Stefan Haberland's avatar Stefan Haberland Committed by Jens Axboe
Browse files

s390/dasd: suppress generic error messages for PPRC secondary devices



Suppress generic command reject messages and dump of sense data for
Peer-To-Peer-Remote-Copy (PPRC) secondary errors.
If IO is issued on a PPRC secondary device, a specific
error message is printed instead.

Signed-off-by: default avatarStefan Haberland <sth@linux.ibm.com>
Reviewed-by: default avatarJan Hoeppner <hoeppner@linux.ibm.com>
Link: https://lore.kernel.org/r/20220920192616.808070-7-sth@linux.ibm.com


Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent 112ff512
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -215,6 +215,11 @@ union scsw {
#define SNS2_ENV_DATA_PRESENT	0x10
#define SNS2_INPRECISE_END	0x04

/*
 * architectured values for PPRC errors
 */
#define SNS7_INVALID_ON_SEC	0x0e

/**
 * scsw_is_tm - check for transport mode scsw
 * @scsw: pointer to scsw
+5 −0
Original line number Diff line number Diff line
@@ -1050,6 +1050,11 @@ dasd_3990_erp_com_rej(struct dasd_ccw_req * erp, char *sense)
		dev_err(&device->cdev->dev, "An I/O request was rejected"
			" because writing is inhibited\n");
		erp = dasd_3990_erp_cleanup(erp, DASD_CQR_FAILED);
	} else if (sense[7] & SNS7_INVALID_ON_SEC) {
		dev_err(&device->cdev->dev, "An I/O request was rejected on a copy pair secondary device\n");
		/* suppress dump of sense data for this error */
		set_bit(DASD_CQR_SUPPRESS_CR, &erp->refers->flags);
		erp = dasd_3990_erp_cleanup(erp, DASD_CQR_FAILED);
	} else {
		/* fatal error -  set status to FAILED
		   internal error 09 - Command Reject */