diff mbox series

HID: cougar: Make use of the helper function devm_add_action_or_reset()

Message ID 20210922125932.374-1-caihuoqing@baidu.com (mailing list archive)
State Mainlined
Commit 8e3cd9221c66b97c31964c013499e6c8d0f49440
Delegated to: Jiri Kosina
Headers show
Series HID: cougar: Make use of the helper function devm_add_action_or_reset() | expand

Commit Message

Cai,Huoqing Sept. 22, 2021, 12:59 p.m. UTC
The helper function devm_add_action_or_reset() will internally
call devm_add_action(), and if devm_add_action() fails then it will
execute the action mentioned and return the error code. So
use devm_add_action_or_reset() instead of devm_add_action()
to simplify the error handling, reduce the code.

Signed-off-by: Cai Huoqing <caihuoqing@baidu.com>
---
 drivers/hid/hid-cougar.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

Comments

Jiri Kosina Oct. 7, 2021, 11:37 a.m. UTC | #1
On Wed, 22 Sep 2021, Cai Huoqing wrote:

> The helper function devm_add_action_or_reset() will internally
> call devm_add_action(), and if devm_add_action() fails then it will
> execute the action mentioned and return the error code. So
> use devm_add_action_or_reset() instead of devm_add_action()
> to simplify the error handling, reduce the code.

Applied, thanks.
diff mbox series

Patch

diff --git a/drivers/hid/hid-cougar.c b/drivers/hid/hid-cougar.c
index 28d671c5e0ca..cb8bd8aae15b 100644
--- a/drivers/hid/hid-cougar.c
+++ b/drivers/hid/hid-cougar.c
@@ -179,10 +179,9 @@  static int cougar_bind_shared_data(struct hid_device *hdev,
 
 	cougar->shared = shared;
 
-	error = devm_add_action(&hdev->dev, cougar_remove_shared_data, cougar);
+	error = devm_add_action_or_reset(&hdev->dev, cougar_remove_shared_data, cougar);
 	if (error) {
 		mutex_unlock(&cougar_udev_list_lock);
-		cougar_remove_shared_data(cougar);
 		return error;
 	}