diff options
author | Stefan Haberland <sth@linux.vnet.ibm.com> | 2017-12-19 10:18:38 -0500 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2018-02-22 09:31:23 -0500 |
commit | ddc1c9453550eabd6284021b167f708982df3ca9 (patch) | |
tree | b6d014c22cc3693ae1dc5a447459473cc890d022 /arch/s390/include | |
parent | 66aec647216f129b8560dba738303a8486481c53 (diff) |
s390/dasd: configurable IFCC handling
Make the behavior in case of constant IFCC/CCC errors configurable.
Add a sysfs attribute to switch between path disabled after threshold
exceeded (default) and message only.
Reviewed-by: Jan Hoeppner <hoeppner@linux.vnet.ibm.com>
Reviewed-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Stefan Haberland <sth@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/include')
-rw-r--r-- | arch/s390/include/uapi/asm/dasd.h | 38 |
1 files changed, 20 insertions, 18 deletions
diff --git a/arch/s390/include/uapi/asm/dasd.h b/arch/s390/include/uapi/asm/dasd.h index 451c601406b6..832be5c2584f 100644 --- a/arch/s390/include/uapi/asm/dasd.h +++ b/arch/s390/include/uapi/asm/dasd.h | |||
@@ -68,25 +68,27 @@ typedef struct dasd_information2_t { | |||
68 | #define DASD_FORMAT_CDL 2 | 68 | #define DASD_FORMAT_CDL 2 |
69 | /* | 69 | /* |
70 | * values to be used for dasd_information_t.features | 70 | * values to be used for dasd_information_t.features |
71 | * 0x00: default features | 71 | * 0x100: default features |
72 | * 0x01: readonly (ro) | 72 | * 0x001: readonly (ro) |
73 | * 0x02: use diag discipline (diag) | 73 | * 0x002: use diag discipline (diag) |
74 | * 0x04: set the device initially online (internal use only) | 74 | * 0x004: set the device initially online (internal use only) |
75 | * 0x08: enable ERP related logging | 75 | * 0x008: enable ERP related logging |
76 | * 0x10: allow I/O to fail on lost paths | 76 | * 0x010: allow I/O to fail on lost paths |
77 | * 0x20: allow I/O to fail when a lock was stolen | 77 | * 0x020: allow I/O to fail when a lock was stolen |
78 | * 0x40: give access to raw eckd data | 78 | * 0x040: give access to raw eckd data |
79 | * 0x80: enable discard support | 79 | * 0x080: enable discard support |
80 | * 0x100: enable autodisable for IFCC errors (default) | ||
80 | */ | 81 | */ |
81 | #define DASD_FEATURE_DEFAULT 0x00 | 82 | #define DASD_FEATURE_READONLY 0x001 |
82 | #define DASD_FEATURE_READONLY 0x01 | 83 | #define DASD_FEATURE_USEDIAG 0x002 |
83 | #define DASD_FEATURE_USEDIAG 0x02 | 84 | #define DASD_FEATURE_INITIAL_ONLINE 0x004 |
84 | #define DASD_FEATURE_INITIAL_ONLINE 0x04 | 85 | #define DASD_FEATURE_ERPLOG 0x008 |
85 | #define DASD_FEATURE_ERPLOG 0x08 | 86 | #define DASD_FEATURE_FAILFAST 0x010 |
86 | #define DASD_FEATURE_FAILFAST 0x10 | 87 | #define DASD_FEATURE_FAILONSLCK 0x020 |
87 | #define DASD_FEATURE_FAILONSLCK 0x20 | 88 | #define DASD_FEATURE_USERAW 0x040 |
88 | #define DASD_FEATURE_USERAW 0x40 | 89 | #define DASD_FEATURE_DISCARD 0x080 |
89 | #define DASD_FEATURE_DISCARD 0x80 | 90 | #define DASD_FEATURE_PATH_AUTODISABLE 0x100 |
91 | #define DASD_FEATURE_DEFAULT DASD_FEATURE_PATH_AUTODISABLE | ||
90 | 92 | ||
91 | #define DASD_PARTN_BITS 2 | 93 | #define DASD_PARTN_BITS 2 |
92 | 94 | ||