Commit ae128916 authored by Uwe Kleine-König's avatar Uwe Kleine-König Committed by Greg Kroah-Hartman
Browse files

intel_th: Remove an unused exit point from intel_th_remove()



As described in the added comment device_for_each_child() never returns
a non-zero value. So remove the corresponding error check.

This simplifies the quest to make struct bus_type::remove() return void.

Reviewed-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: default avatarUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: default avatarAlexander Shishkin <alexander.shishkin@linux.intel.com>
Link: https://lore.kernel.org/r/20210621151246.31891-3-alexander.shishkin@linux.intel.com


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent d0b371e5
Loading
Loading
Loading
Loading
+7 −5
Original line number Diff line number Diff line
@@ -100,16 +100,18 @@ static int intel_th_remove(struct device *dev)
	struct intel_th_driver *thdrv = to_intel_th_driver(dev->driver);
	struct intel_th_device *thdev = to_intel_th_device(dev);
	struct intel_th_device *hub = to_intel_th_hub(thdev);
	int err;

	if (thdev->type == INTEL_TH_SWITCH) {
		struct intel_th *th = to_intel_th(hub);
		int i, lowest;

		/* disconnect outputs */
		err = device_for_each_child(dev, thdev, intel_th_child_remove);
		if (err)
			return err;
		/*
		 * disconnect outputs
		 *
		 * intel_th_child_remove returns 0 unconditionally, so there is
		 * no need to check the return value of device_for_each_child.
		 */
		device_for_each_child(dev, thdev, intel_th_child_remove);

		/*
		 * Remove outputs, that is, hub's children: they are created