linux/drivers/s390/block
Stefan Haberland c99bff3429 s390/dasd: fix command reject error on ESE devices
Formatting a thin-provisioned (ESE) device that is part of a PPRC copy
relation might fail with the following error:

dasd-eckd 0.0.f500: An error occurred in the DASD device driver, reason=09
[...]
24 Byte: 0 MSG 4, no MSGb to SYSOP

During format of an ESE disk the Release Allocated Space command is used.
A bit in the payload of the command is set that is not allowed to be set
for devices in a copy relation. This bit is set to allow the partial
release of an extent.

Check for the existence of a copy relation before setting the respective
bit.

Fixes: 91dc4a1975 ("s390/dasd: Add new ioctl to release space")
Cc: stable@kernel.org # 5.3+
Signed-off-by: Stefan Haberland <sth@linux.ibm.com>
Reviewed-by: Jan Hoeppner <hoeppner@linux.ibm.com>
Link: https://lore.kernel.org/r/20230519102340.3854819-2-sth@linux.ibm.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2023-05-19 20:03:59 -06:00
..
dasd_3990_erp.c s390/dasd: sort out physical vs virtual pointers usage 2023-02-09 17:05:43 -07:00
dasd_alias.c s390/dasd: sort out physical vs virtual pointers usage 2023-02-09 17:05:43 -07:00
dasd_devmap.c s390/dasd: add aq_timeouts autoquiesce trigger 2023-04-11 19:53:08 -06:00
dasd_diag.c s390/dasd: use blk_mq_alloc_disk 2022-09-28 08:56:34 -06:00
dasd_diag.h
dasd_eckd.c s390/dasd: fix command reject error on ESE devices 2023-05-19 20:03:59 -06:00
dasd_eckd.h s390/dasd: add device ping attribute 2022-09-21 08:32:51 -06:00
dasd_eer.c s390/dasd: add autoquiesce feature 2023-04-11 19:53:08 -06:00
dasd_erp.c s390/dasd: handle request magic consistently as unsigned int 2021-10-20 08:10:41 -06:00
dasd_fba.c s390/dasd: sort out physical vs virtual pointers usage 2023-02-09 17:05:43 -07:00
dasd_fba.h
dasd_genhd.c s390/dasd: use blk_mq_alloc_disk 2022-09-28 08:56:34 -06:00
dasd_int.h s390/dasd: add aq_timeouts autoquiesce trigger 2023-04-11 19:53:08 -06:00
dasd_ioctl.c s390/dasd: Fix spelling mistake "Ivalid" -> "Invalid" 2022-11-23 10:37:37 -07:00
dasd_proc.c proc: convert everything to "struct proc_ops" 2020-02-04 03:05:26 +00:00
dasd.c s390/dasd: fix hanging blockdevice after request requeue 2023-04-11 19:53:08 -06:00
dcssblk.c s390/dcssblk:: don't call bio_split_to_limits 2023-01-29 15:18:35 -07:00
Kconfig dax: remove CONFIG_DAX_DRIVER 2021-12-04 08:58:51 -08:00
Makefile s390: remove xpram device driver 2021-09-07 13:38:42 +02:00
scm_blk.c block: remove blk_cleanup_disk 2022-06-28 06:33:15 -06:00
scm_blk.h block: remove genhd.h 2022-02-02 07:49:59 -07:00
scm_drv.c s390/scm: Make struct scm_driver::remove return void 2021-07-21 11:53:42 +02:00