1
0
Files
linux/drivers
Jan Höppner 9de67725c8 s390/dasd: Fix locking issue when changing EER attribute
The reference to a device in question may get lost when the extended
error reporting (EER) attribute is being enabled/disabled while the
device is set offline at the same time. This is due to missing
refcounting and incorrect locking. Fix this by the following:

- In dasd_eer_store() get the device directly and handle the refcount
  accordingly.
- Move the lock in dasd_eer_enable() up so we can ensure safe
  processing.
- Check if the device is being set offline and return with -EBUSY if so.
- While at it, change the return code from -EPERM to -EMEDIUMTYPE as
  suggested by a FIXME, since that is what we're actually checking.

Reviewed-by: Stefan Haberland <sth@linux.vnet.ibm.com>
Signed-off-by: Jan Höppner <hoeppner@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2016-10-28 10:09:04 +02:00
..
2016-10-10 10:58:22 +02:00
2016-09-27 12:33:47 +02:00
2016-10-11 15:06:33 -07:00
2016-10-19 08:39:47 -07:00
2016-10-20 00:06:06 +02:00
2016-10-11 15:06:33 -07:00
2016-10-11 15:06:33 -07:00
2016-09-29 13:36:38 -06:00
2016-10-19 08:39:47 -07:00