s390/dasd: add autoquiesce feature
authorStefan Haberland <sth@linux.ibm.com>
Wed, 5 Apr 2023 14:20:12 +0000 (16:20 +0200)
committerJens Axboe <axboe@kernel.dk>
Wed, 12 Apr 2023 01:53:08 +0000 (19:53 -0600)
commit1cee2975bbabd89df1097c354867192106b058ea
tree56fa8ab2e82746ef1a65170ce91dbf5482bb8986
parent861d53dbed4cad8cf1bbef692111f2215e02c38e
s390/dasd: add autoquiesce feature

Add the internal logic to check for autoquiesce triggers and handle
them.

Quiesce and resume are functions that tell Linux to stop/resume
issuing I/Os to a specific DASD.
The DASD driver allows a manual quiesce/resume via ioctl.

Autoquiesce will define an amount of triggers that will lead to
an automatic quiesce if a certain event occurs.
There is no automatic resume.

All events will be reported via DASD Extended Error Reporting (EER)
if configured.

Signed-off-by: Stefan Haberland <sth@linux.ibm.com>
Reviewed-by: Jan Hoeppner <hoeppner@linux.ibm.com>
Reviewed-by: Halil Pasic <pasic@linux.ibm.com>
Link: https://lore.kernel.org/r/20230405142017.2446986-3-sth@linux.ibm.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
arch/s390/include/uapi/asm/dasd.h
drivers/s390/block/dasd.c
drivers/s390/block/dasd_eer.c
drivers/s390/block/dasd_int.h