[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1452012850-6990-5-git-send-email-peter.senna@collabora.com>
Date: Tue, 5 Jan 2016 17:54:09 +0100
From: Peter Senna Tschudin <peter.senna@...labora.com>
To: thomas@...ischhofer.net, gregkh@...uxfoundation.org,
trivial@...nel.org, linux-usb@...r.kernel.org,
linux-kernel@...r.kernel.org
Cc: Peter Senna Tschudin <peter.senna@...il.com>,
Peter Senna Tschudin <peter.senna@...labora.com>
Subject: [PATCH 4/5] usb-misc: sisusbvga: Remove kmalloc logs and fix error path
From: Peter Senna Tschudin <peter.senna@...il.com>
This patch remove four calls to dev_err() from sisusb_probe() as
reporting memory allocation failures is redundant:
- Remove a call to dev_err() that was reporting unsuccesful call to
kzalloc().
- Remove two calls to dev_err() that were reporting unsuccesful calls
to kmalloc().
- Remove a call to dev_err() that was reporting unsuccesful call to
kmalloc(), and replace it by code that clean up previously allocated
resources and abort the probe with -ENOMEM. Before this modification
sisusb->SiS_Pr could be dereferenced even it was null.
Signed-off-by: Peter Senna Tschudin <peter.senna@...labora.com>
---
Tested by compilation only.
drivers/usb/misc/sisusbvga/sisusb.c | 10 ++++------
1 file changed, 4 insertions(+), 6 deletions(-)
diff --git a/drivers/usb/misc/sisusbvga/sisusb.c b/drivers/usb/misc/sisusbvga/sisusb.c
index 6cce4fb..875e365 100644
--- a/drivers/usb/misc/sisusbvga/sisusb.c
+++ b/drivers/usb/misc/sisusbvga/sisusb.c
@@ -3040,10 +3040,9 @@ static int sisusb_probe(struct usb_interface *intf,
/* Allocate memory for our private */
sisusb = kzalloc(sizeof(*sisusb), GFP_KERNEL);
- if (!sisusb) {
- dev_err(&dev->dev, "Failed to allocate memory for private data\n");
+ if (!sisusb)
return -ENOMEM;
- }
+
kref_init(&sisusb->kref);
mutex_init(&(sisusb->lock));
@@ -3070,7 +3069,6 @@ static int sisusb_probe(struct usb_interface *intf,
sisusb->ibufsize = SISUSB_IBUF_SIZE;
sisusb->ibuf = kmalloc(SISUSB_IBUF_SIZE, GFP_KERNEL);
if (!sisusb->ibuf) {
- dev_err(&sisusb->sisusb_dev->dev, "Failed to allocate memory for input buffer");
retval = -ENOMEM;
goto error_2;
}
@@ -3081,7 +3079,6 @@ static int sisusb_probe(struct usb_interface *intf,
sisusb->obuf[i] = kmalloc(SISUSB_OBUF_SIZE, GFP_KERNEL);
if (!sisusb->obuf[i]) {
if (i == 0) {
- dev_err(&sisusb->sisusb_dev->dev, "Failed to allocate memory for output buffer\n");
retval = -ENOMEM;
goto error_3;
}
@@ -3119,7 +3116,8 @@ static int sisusb_probe(struct usb_interface *intf,
/* Allocate our SiS_Pr */
sisusb->SiS_Pr = kmalloc(sizeof(struct SiS_Private), GFP_KERNEL);
if (!sisusb->SiS_Pr) {
- dev_err(&sisusb->sisusb_dev->dev, "Failed to allocate SiS_Pr\n");
+ retval = -ENOMEM;
+ goto error_4;
}
#endif
--
2.5.0
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists