-----Original Message-----
From: Easwar Hariharan <redacted>
Sent: Thursday, October 31, 2024 1:06 PM
To: Haiyang Zhang <haiyangz@microsoft.com>; KY Srinivasan
[off-list ref]; Wei Liu [off-list ref]; Dexuan Cui
[off-list ref]; linux-hyperv@vger.kernel.org; Anna-Maria Behnsen
[off-list ref]; Thomas Gleixner [off-list ref]; Geert
Uytterhoeven [off-list ref]; Marcel Holtmann
[off-list ref]; Johan Hedberg [off-list ref]; Luiz
Augusto von Dentz [off-list ref]; linux-
bluetooth@vger.kernel.org; linux-kernel@vger.kernel.org; Praveen Kumar
[off-list ref]; Naman Jain
[off-list ref]
Cc: <redacted>; Michael Kelley <redacted>;
Von Dentz, Luiz [off-list ref]
Subject: Re: [PATCH v3 1/2] jiffies: Define secs_to_jiffies()
On 10/31/2024 8:54 AM, Haiyang Zhang wrote:
quoted
quoted
-----Original Message-----
From: Easwar Hariharan <redacted>
Sent: Wednesday, October 30, 2024 1:48 PM
To: KY Srinivasan <redacted>; Haiyang Zhang
[off-list ref]; Wei Liu [off-list ref]; Dexuan Cui
[off-list ref]; linux-hyperv@vger.kernel.org; Anna-Maria
Behnsen
quoted
quoted
[off-list ref]; Thomas Gleixner [off-list ref];
Geert
quoted
quoted
Uytterhoeven [off-list ref]; Marcel Holtmann
[off-list ref]; Johan Hedberg [off-list ref]; Luiz
Augusto von Dentz [off-list ref]; linux-
bluetooth@vger.kernel.org; linux-kernel@vger.kernel.org; Praveen Kumar
[off-list ref]; Naman Jain
[off-list ref]
Cc: Michael Kelley <redacted>; Easwar Hariharan
[off-list ref]; Von Dentz, Luiz
[off-list ref]
Subject: [PATCH v3 1/2] jiffies: Define secs_to_jiffies()
secs_to_jiffies() is defined in hci_event.c and cannot be reused by
other call sites. Hoist it into the core code to allow conversion of
the
quoted
quoted
~1150 usages of msecs_to_jiffies() that either:
- use a multiplier value of 1000 or equivalently MSEC_PER_SEC, or
- have timeouts that are denominated in seconds (i.e. end in 000)
This will also allow conversion of yet more sites that use (sec * HZ)
directly, and improve their readability.
TO: K. Y. Srinivasan <redacted>
TO: Haiyang Zhang <haiyangz@microsoft.com>
TO: Wei Liu <wei.liu@kernel.org>
TO: Dexuan Cui <decui@microsoft.com>
TO: <redacted>
TO: Anna-Maria Behnsen <anna-maria@linutronix.de>
TO: Thomas Gleixner <redacted>
TO: Geert Uytterhoeven <geert@linux-m68k.org>
TO: Marcel Holtmann <marcel@holtmann.org>
TO: Johan Hedberg <redacted>
TO: Luiz Augusto von Dentz <luiz.dentz@gmail.com>
TO: <redacted>
TO: <redacted>
Suggested-by: Michael Kelley <redacted>
Reviewed-by: Luiz Augusto von Dentz <redacted>
Signed-off-by: Easwar Hariharan <redacted>
---
include/linux/jiffies.h | 12 ++++++++++++
net/bluetooth/hci_event.c | 2 --
2 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/include/linux/jiffies.h b/include/linux/jiffies.h
index
1220f0fbe5bf9fb6c559b4efd603db3e97db9b65..e17c220ed56e587fd55fb9cf4a133a5
quoted
quoted
3588af940 100644
--- a/include/linux/jiffies.h
+++ b/include/linux/jiffies.h
@@ -526,6 +526,18 @@ static __always_inline unsigned long
msecs_to_jiffies(const unsigned int m)
}
}
+/**
+ * secs_to_jiffies: - convert seconds to jiffies
+ * @_secs: time in seconds
+ *
+ * Conversion is done by simple multiplication with HZ
+ * secs_to_jiffies() is defined as a macro rather than a static
inline
quoted
quoted
+ * function due to its potential application in struct initializers.
+ *
+ * Return: jiffies value
+ */
+#define secs_to_jiffies(_secs) ((_secs) * HZ)
+
extern unsigned long __usecs_to_jiffies(const unsigned int u);
#if !(USEC_PER_SEC % HZ)
static inline unsigned long _usecs_to_jiffies(const unsigned int u)
diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c
index
0bbad90ddd6f87e87c03859bae48a7901d39b634..7b35c58bbbeb79f2b50a02212771fb2
quoted
quoted
83ba5643d 100644
--- a/net/bluetooth/hci_event.c
+++ b/net/bluetooth/hci_event.c
@@ -42,8 +42,6 @@
#define ZERO_KEY "\x00\x00\x00\x00\x00\x00\x00\x00" \
"\x00\x00\x00\x00\x00\x00\x00\x00"
-#define secs_to_jiffies(_secs) msecs_to_jiffies((_secs) * 1000)
-
/* Handle HCI Event packets */
static void *hci_ev_skb_pull(struct hci_dev *hdev, struct sk_buff
*skb,
quoted
quoted
--
2.34.1
All looks good.
But can you consider naming the macro as s2jiffy()? Just
to be shorter, so after adopting this macro we don't have
to split some lines for over 80 characters:)
Thanks,
- Haiyang
Thanks for the review! The patch introducing the macro has already been
accepted into timers/core in tip[1], so unfortunately I can't make that
change anymore. For readability considerations, I also find it better to
match the remaining APIs in the jiffies family, i.e. msecs_to_jiffies(),
nsecs_to_jiffies(), usecs_to_jiffies().
[1]
https://git.ker/
nel.org%2Ftip%2Fb35108a51cf7bab58d7eace1267d7965978bcdb8&data=05%7C02%7Ch
aiyangz%40microsoft.com%7C7d5db079ed124f62ac2a08dcf9ce4b20%7C72f988bf86f1
41af91ab2d7cd011db47%7C1%7C0%7C638659911651280804%7CUnknown%7CTWFpbGZsb3d
8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFp
bCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=hz5UtwU9CLw068z4tpr9kPMANntwX58De
A5dXi9pqSg%3D&reserved=0
Then, that's fine.
Thanks
- Haiyang