* [PATCH 0/4] [media] CPia2: Fine-tuning for four function implementations
@ 2017-09-17 13:30 SF Markus Elfring
2017-09-17 13:31 ` [PATCH 1/4] [media] cpia2: Use common error handling code in cpia2_usb_probe() SF Markus Elfring
` (3 more replies)
0 siblings, 4 replies; 5+ messages in thread
From: SF Markus Elfring @ 2017-09-17 13:30 UTC (permalink / raw)
To: linux-media, Arvind Yadav, Hans Verkuil, Laurent Pinchart,
Mauro Carvalho Chehab, Sakari Ailus, Shyam Saini
Cc: LKML, kernel-janitors
From: Markus Elfring <elfring@users.sourceforge.net>
Date: Sun, 17 Sep 2017 15:25:35 +0200
A few update suggestions were taken into account
from static source code analysis.
Markus Elfring (4):
Use common error handling code in cpia2_usb_probe()
Adjust two function calls together with a variable assignment
Delete unnecessary null pointer checks in free_sbufs()
Delete an unnecessary return statement in process_frame()
drivers/media/usb/cpia2/cpia2_usb.c | 35 ++++++++++++++++-------------------
1 file changed, 16 insertions(+), 19 deletions(-)
--
2.14.1
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 1/4] [media] cpia2: Use common error handling code in cpia2_usb_probe()
2017-09-17 13:30 [PATCH 0/4] [media] CPia2: Fine-tuning for four function implementations SF Markus Elfring
@ 2017-09-17 13:31 ` SF Markus Elfring
2017-09-17 13:32 ` [PATCH 2/4] [media] cpia2: Adjust two function calls together with a variable assignment SF Markus Elfring
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: SF Markus Elfring @ 2017-09-17 13:31 UTC (permalink / raw)
To: linux-media, Arvind Yadav, Hans Verkuil, Laurent Pinchart,
Mauro Carvalho Chehab, Sakari Ailus, Shyam Saini
Cc: LKML, kernel-janitors
From: Markus Elfring <elfring@users.sourceforge.net>
Date: Sun, 17 Sep 2017 12:40:14 +0200
Add a jump target so that a bit of exception handling can be better reused
at the end of this function.
This issue was detected by using the Coccinelle software.
Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
---
drivers/media/usb/cpia2/cpia2_usb.c | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/drivers/media/usb/cpia2/cpia2_usb.c b/drivers/media/usb/cpia2/cpia2_usb.c
index 6089036049d9..c6be2786a66f 100644
--- a/drivers/media/usb/cpia2/cpia2_usb.c
+++ b/drivers/media/usb/cpia2/cpia2_usb.c
@@ -849,13 +849,11 @@ static int cpia2_usb_probe(struct usb_interface *intf,
if (ret < 0) {
ERR("%s: usb_set_interface error (ret = %d)\n", __func__, ret);
- kfree(cam);
- return ret;
+ goto free_data;
}
if((ret = cpia2_init_camera(cam)) < 0) {
ERR("%s: failed to initialize cpia2 camera (ret = %d)\n", __func__, ret);
- kfree(cam);
- return ret;
+ goto free_data;
}
LOG(" CPiA Version: %d.%02d (%d.%d)\n",
@@ -877,9 +875,12 @@ static int cpia2_usb_probe(struct usb_interface *intf,
if (ret < 0) {
ERR("%s: Failed to register cpia2 camera (ret = %d)\n", __func__, ret);
- kfree(cam);
- return ret;
+ goto free_data;
}
return 0;
+
+free_data:
+ kfree(cam);
+ return ret;
}
--
2.14.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 2/4] [media] cpia2: Adjust two function calls together with a variable assignment
2017-09-17 13:30 [PATCH 0/4] [media] CPia2: Fine-tuning for four function implementations SF Markus Elfring
2017-09-17 13:31 ` [PATCH 1/4] [media] cpia2: Use common error handling code in cpia2_usb_probe() SF Markus Elfring
@ 2017-09-17 13:32 ` SF Markus Elfring
2017-09-17 13:34 ` [PATCH 3/4] [media] cpia2: Delete unnecessary null pointer checks in free_sbufs() SF Markus Elfring
2017-09-17 13:35 ` [PATCH 4/4] [media] cpia2: Delete an unnecessary return statement in process_frame() SF Markus Elfring
3 siblings, 0 replies; 5+ messages in thread
From: SF Markus Elfring @ 2017-09-17 13:32 UTC (permalink / raw)
To: linux-media, Arvind Yadav, Hans Verkuil, Laurent Pinchart,
Mauro Carvalho Chehab, Sakari Ailus, Shyam Saini
Cc: LKML, kernel-janitors
From: Markus Elfring <elfring@users.sourceforge.net>
Date: Sun, 17 Sep 2017 12:56:50 +0200
The script "checkpatch.pl" pointed information out like the following.
ERROR: do not use assignment in if condition
Thus fix the affected source code places.
Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
---
drivers/media/usb/cpia2/cpia2_usb.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/drivers/media/usb/cpia2/cpia2_usb.c b/drivers/media/usb/cpia2/cpia2_usb.c
index c6be2786a66f..161c9b827f8e 100644
--- a/drivers/media/usb/cpia2/cpia2_usb.c
+++ b/drivers/media/usb/cpia2/cpia2_usb.c
@@ -367,7 +367,8 @@ static void cpia2_usb_complete(struct urb *urb)
if(cam->streaming) {
/* resubmit */
urb->dev = cam->dev;
- if ((i = usb_submit_urb(urb, GFP_ATOMIC)) != 0)
+ i = usb_submit_urb(urb, GFP_ATOMIC);
+ if (i != 0)
ERR("%s: usb_submit_urb ret %d!\n", __func__, i);
}
}
@@ -852,5 +853,5 @@ static int cpia2_usb_probe(struct usb_interface *intf,
}
-
- if((ret = cpia2_init_camera(cam)) < 0) {
+ ret = cpia2_init_camera(cam);
+ if (ret < 0) {
ERR("%s: failed to initialize cpia2 camera (ret = %d)\n", __func__, ret);
--
2.14.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 3/4] [media] cpia2: Delete unnecessary null pointer checks in free_sbufs()
2017-09-17 13:30 [PATCH 0/4] [media] CPia2: Fine-tuning for four function implementations SF Markus Elfring
2017-09-17 13:31 ` [PATCH 1/4] [media] cpia2: Use common error handling code in cpia2_usb_probe() SF Markus Elfring
2017-09-17 13:32 ` [PATCH 2/4] [media] cpia2: Adjust two function calls together with a variable assignment SF Markus Elfring
@ 2017-09-17 13:34 ` SF Markus Elfring
2017-09-17 13:35 ` [PATCH 4/4] [media] cpia2: Delete an unnecessary return statement in process_frame() SF Markus Elfring
3 siblings, 0 replies; 5+ messages in thread
From: SF Markus Elfring @ 2017-09-17 13:34 UTC (permalink / raw)
To: linux-media, Arvind Yadav, Hans Verkuil, Laurent Pinchart,
Mauro Carvalho Chehab, Sakari Ailus, Shyam Saini
Cc: LKML, kernel-janitors
From: Markus Elfring <elfring@users.sourceforge.net>
Date: Sun, 17 Sep 2017 13:23:47 +0200
The script "checkpatch.pl" pointed information out like the following.
WARNING: kfree(NULL) is safe and this check is probably not required
Thus fix the affected source code place.
Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
---
drivers/media/usb/cpia2/cpia2_usb.c | 14 +++++---------
1 file changed, 5 insertions(+), 9 deletions(-)
diff --git a/drivers/media/usb/cpia2/cpia2_usb.c b/drivers/media/usb/cpia2/cpia2_usb.c
index 161c9b827f8e..d1750fa48aa8 100644
--- a/drivers/media/usb/cpia2/cpia2_usb.c
+++ b/drivers/media/usb/cpia2/cpia2_usb.c
@@ -519,15 +519,11 @@ static void free_sbufs(struct camera_data *cam)
int i;
for (i = 0; i < NUM_SBUF; i++) {
- if(cam->sbuf[i].urb) {
- usb_kill_urb(cam->sbuf[i].urb);
- usb_free_urb(cam->sbuf[i].urb);
- cam->sbuf[i].urb = NULL;
- }
- if(cam->sbuf[i].data) {
- kfree(cam->sbuf[i].data);
- cam->sbuf[i].data = NULL;
- }
+ usb_kill_urb(cam->sbuf[i].urb);
+ usb_free_urb(cam->sbuf[i].urb);
+ cam->sbuf[i].urb = NULL;
+ kfree(cam->sbuf[i].data);
+ cam->sbuf[i].data = NULL;
}
}
--
2.14.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 4/4] [media] cpia2: Delete an unnecessary return statement in process_frame()
2017-09-17 13:30 [PATCH 0/4] [media] CPia2: Fine-tuning for four function implementations SF Markus Elfring
` (2 preceding siblings ...)
2017-09-17 13:34 ` [PATCH 3/4] [media] cpia2: Delete unnecessary null pointer checks in free_sbufs() SF Markus Elfring
@ 2017-09-17 13:35 ` SF Markus Elfring
3 siblings, 0 replies; 5+ messages in thread
From: SF Markus Elfring @ 2017-09-17 13:35 UTC (permalink / raw)
To: linux-media, Arvind Yadav, Hans Verkuil, Laurent Pinchart,
Mauro Carvalho Chehab, Sakari Ailus, Shyam Saini
Cc: LKML, kernel-janitors
From: Markus Elfring <elfring@users.sourceforge.net>
Date: Sun, 17 Sep 2017 13:32:45 +0200
The script "checkpatch.pl" pointed information out like the following.
WARNING: void function return statements are not generally useful
Thus remove such a statement in the affected function.
Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
---
drivers/media/usb/cpia2/cpia2_usb.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/media/usb/cpia2/cpia2_usb.c b/drivers/media/usb/cpia2/cpia2_usb.c
index d1750fa48aa8..f224992590b8 100644
--- a/drivers/media/usb/cpia2/cpia2_usb.c
+++ b/drivers/media/usb/cpia2/cpia2_usb.c
@@ -154,6 +154,5 @@ static void process_frame(struct camera_data *cam)
}
cam->workbuff->status = FRAME_ERROR;
- return;
}
--
2.14.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2017-09-17 13:35 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-09-17 13:30 [PATCH 0/4] [media] CPia2: Fine-tuning for four function implementations SF Markus Elfring
2017-09-17 13:31 ` [PATCH 1/4] [media] cpia2: Use common error handling code in cpia2_usb_probe() SF Markus Elfring
2017-09-17 13:32 ` [PATCH 2/4] [media] cpia2: Adjust two function calls together with a variable assignment SF Markus Elfring
2017-09-17 13:34 ` [PATCH 3/4] [media] cpia2: Delete unnecessary null pointer checks in free_sbufs() SF Markus Elfring
2017-09-17 13:35 ` [PATCH 4/4] [media] cpia2: Delete an unnecessary return statement in process_frame() SF Markus Elfring
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).