[PATCH] HID: emsff: properly handle emsff_init failure
Subsystems:
hid core layer, the rest
STALE5544d
2 messages,
2 authors,
2011-07-20 · open the first message on its own page
emsff_init() may fail, let's properly handle the failure.
Signed-off-by: Axel Lin <redacted>
---
drivers/hid/hid-emsff.c | 7 ++++++-
1 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/drivers/hid/hid-emsff.c b/drivers/hid/hid-emsff.c
index 81877c6..a5dc13f 100644
--- a/drivers/hid/hid-emsff.c
+++ b/drivers/hid/hid-emsff.c
@@ -126,7 +126,12 @@ static int ems_probe(struct hid_device *hdev, const struct hid_device_id *id)
goto err;
}
- emsff_init(hdev);
+ ret = emsff_init(hdev);
+ if (ret) {
+ dev_err(&hdev->dev, "force feedback init failed\n");
+ hid_hw_stop(hdev);
+ goto err;
+ }
return 0;
err:--
1.7.4.1
On Tue, 19 Jul 2011, Axel Lin wrote:
quoted hunk
emsff_init() may fail, let's properly handle the failure.
Signed-off-by: Axel Lin <redacted>
---
drivers/hid/hid-emsff.c | 7 ++++++-
1 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/drivers/hid/hid-emsff.c b/drivers/hid/hid-emsff.c
index 81877c6..a5dc13f 100644
--- a/drivers/hid/hid-emsff.c
+++ b/drivers/hid/hid-emsff.c
@@ -126,7 +126,12 @@ static int ems_probe(struct hid_device *hdev, const struct hid_device_id *id)
goto err;
}
- emsff_init(hdev);
+ ret = emsff_init(hdev);
+ if (ret) {
+ dev_err(&hdev->dev, "force feedback init failed\n");
+ hid_hw_stop(hdev);
+ goto err;
+ }
return 0;
err:
Good catch, applied, thanks.
--
Jiri Kosina
SUSE Labs