class_create() might fail, so check its return value and react
appropriately.

Signed-off-by: Andrzej Pietrasiewicz <andrze...@samsung.com>
---
 drivers/usb/gadget/function/f_hid.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/usb/gadget/function/f_hid.c 
b/drivers/usb/gadget/function/f_hid.c
index a95290a..25021df 100644
--- a/drivers/usb/gadget/function/f_hid.c
+++ b/drivers/usb/gadget/function/f_hid.c
@@ -741,6 +741,10 @@ int __init ghid_setup(struct usb_gadget *g, int count)
        dev_t dev;
 
        hidg_class = class_create(THIS_MODULE, "hidg");
+       if (IS_ERR(hidg_class)) {
+               hidg_class = NULL;
+               return PTR_ERR(hidg_class);
+       }
 
        status = alloc_chrdev_region(&dev, 0, count, "hidg");
        if (!status) {
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to