Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a5e23839 authored by Stefan Weinhuber's avatar Stefan Weinhuber Committed by Martin Schwidefsky
Browse files

[S390] dasd: fix reference counting in display method for proc/dasd/devices



Using the /proc/dasd/devices interface leaves the reference counter
of alias devices in an inconsistent state. A process that tries to set
such a device offline afterwards will hang.
The dasd_devices_show function returns immediately for alias devices
and this code path was missing a dasd_put_device call.

Signed-off-by: default avatarStefan Weinhuber <wein@de.ibm.com>
Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
parent 5c12f240
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -62,8 +62,10 @@ dasd_devices_show(struct seq_file *m, void *v)
		return 0;
	if (device->block)
		block = device->block;
	else
	else {
		dasd_put_device(device);
		return 0;
	}
	/* Print device number. */
	seq_printf(m, "%s", device->cdev->dev.bus_id);
	/* Print discipline string. */