From: Todd Poynor Date: Tue, 17 Jul 2018 20:56:54 +0000 (-0700) Subject: staging: gasket: bail out of reset sequence on device callback error X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=45042402ae97682b965d88f2393f317f48bb0042;p=openwrt%2Fstaging%2Fblogic.git staging: gasket: bail out of reset sequence on device callback error If device reset callback returns an error, error out at the gasket level. Reported-by: Dmitry Torokhov Signed-off-by: Zhongze Hu Signed-off-by: Todd Poynor Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/gasket/gasket_core.c b/drivers/staging/gasket/gasket_core.c index 94e64b900380..bc3662eafb63 100644 --- a/drivers/staging/gasket/gasket_core.c +++ b/drivers/staging/gasket/gasket_core.c @@ -1875,9 +1875,11 @@ int gasket_reset_nolock(struct gasket_dev *gasket_dev, uint reset_type) /* Perform a device reset of the requested type. */ ret = driver_desc->device_reset_cb(gasket_dev, reset_type); - if (ret) + if (ret) { gasket_log_error( gasket_dev, "Device reset cb returned %d.", ret); + return ret; + } /* Reinitialize the page tables and interrupt framework. */ for (i = 0; i < driver_desc->num_page_tables; ++i)