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

Commit f3b017d8 authored by Ralph Wuerthner's avatar Ralph Wuerthner Committed by Martin Schwidefsky
Browse files

[S390] Improve AP bus device removal.



Added a call to device_unregister() in ap_scan_bus() to actively
remove unavailable AP bus devices with every bus scan. Previously
devices were only removed in ap_queue_message() or __ap_poll_all().

Signed-off-by: default avatarRalph Wuerthner <rwuerthn@de.ibm.com>
Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
parent 12bae235
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -739,11 +739,16 @@ static void ap_scan_bus(void *data)
		dev = bus_find_device(&ap_bus_type, NULL,
				      (void *)(unsigned long)qid,
				      __ap_scan_bus);
		rc = ap_query_queue(qid, &queue_depth, &device_type);
		if (dev && rc) {
			put_device(dev);
			device_unregister(dev);
			continue;
		}
		if (dev) {
			put_device(dev);
			continue;
		}
		rc = ap_query_queue(qid, &queue_depth, &device_type);
		if (rc)
			continue;
		rc = ap_init_queue(qid);