The functions time_before, time_before_eq, time_after, and time_after_eq are more robust for comparing jiffies against other values.
So following patch implements usage of the time_after() macro, defined at linux/jiffies.h, which deals with wrapping correctly
Cc: [email protected]
Signed-off-by: S.Çağlar Onur <[email protected]>
---
net/bluetooth/hci_core.c | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c
index 372b0d3..930b58e 100644
--- a/net/bluetooth/hci_core.c
+++ b/net/bluetooth/hci_core.c
@@ -24,6 +24,7 @@
/* Bluetooth HCI core. */
+#include <linux/jiffies.h>
#include <linux/module.h>
#include <linux/kmod.h>
@@ -1321,7 +1322,7 @@ static inline void hci_sched_acl(struct hci_dev *hdev)
if (!test_bit(HCI_RAW, &hdev->flags)) {
/* ACL tx timeout must be longer than maximum
* link supervision timeout (40.9 seconds) */
- if (!hdev->acl_cnt && (jiffies - hdev->acl_last_tx) > (HZ * 45))
+ if (!hdev->acl_cnt && time_after(jiffies, hdev->acl_last_tx + HZ * 45))
hci_acl_tx_to(hdev);
}
@@ -1543,7 +1544,7 @@ static void hci_cmd_task(unsigned long arg)
BT_DBG("%s cmd %d", hdev->name, atomic_read(&hdev->cmd_cnt));
- if (!atomic_read(&hdev->cmd_cnt) && (jiffies - hdev->cmd_last_tx) > HZ) {
+ if (!atomic_read(&hdev->cmd_cnt) && time_after(jiffies, hdev->cmd_last_tx + HZ)) {
BT_ERR("%s command tx timeout", hdev->name);
atomic_set(&hdev->cmd_cnt, 1);
}
--
1.5.3.7
Hi,
> The functions time_before, time_before_eq, time_after, and time_after_eq are more robust for comparing jiffies against other values.
>
> So following patch implements usage of the time_after() macro, defined at linux/jiffies.h, which deals with wrapping correctly
>
> Cc: [email protected]
> Signed-off-by: S.Çağlar Onur <[email protected]>
since this is full serious of patches, I am not sure if it should go via
the subsystem maintainers or better applied as whole. In case of Linus
or Andrew decide to take them all at once and push them, this on is
acked by me.
Acked-by: Marcel Holtmann <[email protected]>
Regards
Marcel
From: Marcel Holtmann <[email protected]>
Date: Thu, 14 Feb 2008 17:03:51 +0100
> since this is full serious of patches, I am not sure if it should go via
> the subsystem maintainers or better applied as whole. In case of Linus
> or Andrew decide to take them all at once and push them, this on is
> acked by me.
I'll take care of it.
> Acked-by: Marcel Holtmann <[email protected]>
Thanks.