Re: [PATCH] net: bluetooth: hci_core.c: Cleaning up uninitialized variables
From: Rickard Strandqvist <hidden>
Date: 2014-06-01 15:41:15
Also in:
linux-bluetooth, lkml
Hi Marcel!
Sorry sorry!! This is obviously not necessary!
This is code that was left when I tried to split up my original big patch.
This was part of code trying to solve a possible divided by 0.
int q = 0;
...
if (num)
q = cnt / num;
*quote = q ? q : 1;
But I'm not sure if it can happen in reality...
Guessing it will be caught by in that case by:
if (!chan)
return NULL;
I had actually not planned to submit this divided by 0 patch at all :-/
Best regards
Rickard Strandqvist
2014-06-01 16:24 GMT+02:00 Marcel Holtmann [off-list ref]:Hi Rickard,quoted
There is a risk that the variable will be used without being initialized. This was largely found by using a static code analysis program called cppcheck. Signed-off-by: Rickard Strandqvist <redacted> --- net/bluetooth/hci_core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c index 1c6ffaa..1d93d2f 100644 --- a/net/bluetooth/hci_core.c +++ b/net/bluetooth/hci_core.c@@ -4603,7 +4603,7 @@ static struct hci_chan *hci_chan_sent(struct hci_dev *hdev, __u8 type, struct hci_chan *chan = NULL; unsigned int num = 0, min = ~0, cur_prio = 0; struct hci_conn *conn; - int cnt, q, conn_num = 0; + int cnt, q = 0, conn_num = 0;I have no idea on how the variable will be used without being initialized. Have you actually looked through that function. The only thing we do with q is assign it and then use it. That is it. Regards Marcel