Bluetooth: i reaches pkts_to_be_removed + 1
PATCH 1/1 Bluetooth: i reaches pkts_to_be_removed + 1
i reaches pkts_to_be_removed + 1
---
drivers/bluetooth/hci_bcsp.c +1 -1
@@ -385,7 +385,7 @@ static void bcsp_pkt_cull(struct bcsp_struct *bcsp)spin_unlock_irqrestore (&bcsp->unack.lock, flags); -if (i != pkts_to_be_removed) +if (i <= pkts_to_be_removed)BT_ERR ("Removed only %u out of %u pkts" , i, pkts_to_be_removed); }
Marcel Holtmann
maintainerHi Roel,
Quoted 9 lines
i reaches
pkts_to_be_removed+ 1Signed-off-by Roel Kluin <[email protected]>---
drivers/bluetooth/hci_bcsp.c +0
-0
drivers/bluetooth/hci_bcsp.c static void bcsp_pkt_cull(struct bcsp_struct *bcsp) · line 390
Quoted 7 lines
drivers/bluetooth/hci_bcsp.c +1
-1@@ -385,7 +385,7 @@ static void bcsp_pkt_cull(struct bcsp_struct *bcsp)spin_unlock_irqrestore (&bcsp->unack.lock, flags); -if (i != pkts_to_be_removed) +if (i <= pkts_to_be_removed)BT_ERR ("Removed only %u out of %u pkts" , i, pkts_to_be_removed); }
patch looks good, but can you please fill in the commit message with a little bit more details and background.
Regards
Marcel
Quoted 4 lines
Quoted 1 line
i reaches
pkts_to_be_removed+ 1patch looks good, but can you please fill in the commit message with a little bit more details and background.
This was found by code inspection by the way, and not tested.
how about:
------------------------------>8-------------8<--------------------------------- When all packets are removed 'i' reaches pkts_to_be_removed + 1, so the error message was printed upon success, and not when the last packet wasn't removed.
---
drivers/bluetooth/hci_bcsp.c +1 -1
@@ -385,7 +385,7 @@ static void bcsp_pkt_cull(struct bcsp_struct *bcsp)spin_unlock_irqrestore (&bcsp->unack.lock, flags); -if (i != pkts_to_be_removed) +if (i <= pkts_to_be_removed)BT_ERR ("Removed only %u out of %u pkts" , i, pkts_to_be_removed); }
Quoted 15 lines · Marcel Holtmann
Hi Roel,
Quoted 12 lines
i reaches
pkts_to_be_removed+ 1Signed-off-by Roel Kluin <[email protected]>---
drivers/bluetooth/hci_bcsp.c +0
-0@@ -385,7 +385,7 @@ static void bcsp_pkt_cull(struct bcsp_struct *bcsp)spin_unlock_irqrestore (&bcsp->unack.lock, flags);
Quoted 9 lines
drivers/bluetooth/hci_bcsp.c static void bcsp_pkt_cull(struct bcsp_struct *bcsp) · line 391
Quoted 5 lines
drivers/bluetooth/hci_bcsp.c +1
-1-if (i != pkts_to_be_removed) +if (i <= pkts_to_be_removed)BT_ERR ("Removed only %u out of %u pkts" , i, pkts_to_be_removed); }patch looks good, but can you please fill in the commit message with a little bit more details and background.
Isn't there something wrong with this? The patched code looks like it will output apparently nonsensical messages like "Removed only 10 out of 10 pkts".
Marcel Holtmann
maintainerHi David,
Quoted 18 lines
Quoted 8 lines
Quoted 8 lines
drivers/bluetooth/hci_bcsp.c +0
-0@@ -385,7 +385,7 @@ static void bcsp_pkt_cull(struct bcsp_struct *bcsp)spin_unlock_irqrestore (&bcsp->unack.lock, flags);Quoted 9 lines
drivers/bluetooth/hci_bcsp.c static void bcsp_pkt_cull(struct bcsp_struct *bcsp) · line 391
Quoted 5 lines
drivers/bluetooth/hci_bcsp.c +1
-1-if (i != pkts_to_be_removed) +if (i <= pkts_to_be_removed)BT_ERR ("Removed only %u out of %u pkts" , i, pkts_to_be_removed); }patch looks good, but can you please fill in the commit message with a little bit more details and background.
Quoted 3 lines
Isn't there something wrong with this? The patched code looks like it will output apparently nonsensical messages like "Removed only 10 out of 10 pkts".
yeah, that would make no real sense. I actually just thought about why we have that error message at all. We might should remove the message all together.
Regards
Marcel
Quoted 7 lines
Quoted 4 lines
Isn't there something wrong with this? The patched code looks like it will output apparently nonsensical messages like "Removed only 10 out of 10 pkts".
yeah, that would make no real sense. I actually just thought about why we have that error message at all. We should remove the message all together.
------------------------------>8-------------8<--------------------------------- When all packets are removed 'i' reaches pkts_to_be_removed + 1, so the error message was printed upon success, and not when the last packet wasn't removed. Since it results in nonsensical messages, it was decided to remove the test altogether.
---
drivers/bluetooth/hci_bcsp.c +0 -3
@@ -384,9 +384,6 @@ static void bcsp_pkt_cull(struct bcsp_struct *bcsp)del_timer (&bcsp->tbcsp);spin_unlock_irqrestore (&bcsp->unack.lock, flags); - -if (i != pkts_to_be_removed) -BT_ERR ("Removed only %u out of %u pkts" , i, pkts_to_be_removed); }/* Handle BCSP link-establishment packets. When we