diff options
author | Stefan Haberland <sth@linux.ibm.com> | 2023-04-05 16:20:12 +0200 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2023-04-11 19:53:08 -0600 |
commit | 1cee2975bbabd89df1097c354867192106b058ea (patch) | |
tree | 56fa8ab2e82746ef1a65170ce91dbf5482bb8986 /drivers/s390/block/dasd_int.h | |
parent | 861d53dbed4cad8cf1bbef692111f2215e02c38e (diff) | |
download | linux-1cee2975bbabd89df1097c354867192106b058ea.tar.gz |
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>
Diffstat (limited to 'drivers/s390/block/dasd_int.h')
-rw-r--r-- | drivers/s390/block/dasd_int.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/s390/block/dasd_int.h b/drivers/s390/block/dasd_int.h index 47cad999fc2acc..d0ff4528d48998 100644 --- a/drivers/s390/block/dasd_int.h +++ b/drivers/s390/block/dasd_int.h @@ -450,6 +450,7 @@ extern struct dasd_discipline *dasd_diag_discipline_pointer; #define DASD_EER_STATECHANGE 3 #define DASD_EER_PPRCSUSPEND 4 #define DASD_EER_NOSPC 5 +#define DASD_EER_AUTOQUIESCE 31 /* DASD path handling */ @@ -627,6 +628,7 @@ struct dasd_device { struct dasd_format_entry format_entry; struct kset *paths_info; struct dasd_copy_relation *copy; + unsigned long aq_mask; }; struct dasd_block { |