[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 22/22] jiffies: Define secs_to_jiffies()
- To: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>, Jozsef Kadlecsik <kadlec@xxxxxxxxxxxxx>, "David S. Miller" <davem@xxxxxxxxxxxxx>, Eric Dumazet <edumazet@xxxxxxxxxx>, Jakub Kicinski <kuba@xxxxxxxxxx>, Paolo Abeni <pabeni@xxxxxxxxxx>, Simon Horman <horms@xxxxxxxxxx>, Julia Lawall <Julia.Lawall@xxxxxxxx>, Nicolas Palix <nicolas.palix@xxxxxxx>, Daniel Mack <daniel@xxxxxxxxxx>, Haojian Zhuang <haojian.zhuang@xxxxxxxxx>, Robert Jarzmik <robert.jarzmik@xxxxxxx>, Russell King <linux@xxxxxxxxxxxxxxx>, Heiko Carstens <hca@xxxxxxxxxxxxx>, Vasily Gorbik <gor@xxxxxxxxxxxxx>, Alexander Gordeev <agordeev@xxxxxxxxxxxxx>, Christian Borntraeger <borntraeger@xxxxxxxxxxxxx>, Sven Schnelle <svens@xxxxxxxxxxxxx>, Ofir Bitton <obitton@xxxxxxxxx>, Oded Gabbay <ogabbay@xxxxxxxxxx>, Lucas De Marchi <lucas.demarchi@xxxxxxxxx>, Thomas Hellström <thomas.hellstrom@xxxxxxxxxxxxxxx>, Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx>, Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>, Maxime Ripard <mripard@xxxxxxxxxx>, Thomas Zimmermann <tzimmermann@xxxxxxx>, David Airlie <airlied@xxxxxxxxx>, Simona Vetter <simona@xxxxxxxx>, Jeroen de Borst <jeroendb@xxxxxxxxxx>, Praveen Kaligineedi <pkaligineedi@xxxxxxxxxx>, Shailend Chand <shailend@xxxxxxxxxx>, Andrew Lunn <andrew+netdev@xxxxxxx>, James Smart <james.smart@xxxxxxxxxxxx>, Dick Kennedy <dick.kennedy@xxxxxxxxxxxx>, "James E.J. Bottomley" <James.Bottomley@xxxxxxxxxxxxxxxxxxxxx>, "Martin K. Petersen" <martin.petersen@xxxxxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>, Jens Axboe <axboe@xxxxxxxxx>, Kalle Valo <kvalo@xxxxxxxxxx>, Jeff Johnson <jjohnson@xxxxxxxxxx>, Catalin Marinas <catalin.marinas@xxxxxxx>, Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>, Jack Wang <jinpu.wang@xxxxxxxxxxxxxxx>, Marcel Holtmann <marcel@xxxxxxxxxxxx>, Johan Hedberg <johan.hedberg@xxxxxxxxx>, Luiz Augusto von Dentz <luiz.dentz@xxxxxxxxx>, Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>, Florian Fainelli <florian.fainelli@xxxxxxxxxxxx>, Ray Jui <rjui@xxxxxxxxxxxx>, Scott Branden <sbranden@xxxxxxxxxxxx>, Broadcom internal kernel review list <bcm-kernel-feedback-list@xxxxxxxxxxxx>, Xiubo Li <xiubli@xxxxxxxxxx>, Ilya Dryomov <idryomov@xxxxxxxxx>, Josh Poimboeuf <jpoimboe@xxxxxxxxxx>, Jiri Kosina <jikos@xxxxxxxxxx>, Miroslav Benes <mbenes@xxxxxxx>, Petr Mladek <pmladek@xxxxxxxx>, Joe Lawrence <joe.lawrence@xxxxxxxxxx>, Jaroslav Kysela <perex@xxxxxxxx>, Takashi Iwai <tiwai@xxxxxxxx>, Lucas Stach <l.stach@xxxxxxxxxxxxxx>, Russell King <linux+etnaviv@xxxxxxxxxxxxxxx>, Christian Gmeiner <christian.gmeiner@xxxxxxxxx>, Louis Peens <louis.peens@xxxxxxxxxxxx>, Michael Ellerman <mpe@xxxxxxxxxxxxxx>, Nicholas Piggin <npiggin@xxxxxxxxx>, Christophe Leroy <christophe.leroy@xxxxxxxxxx>, Naveen N Rao <naveen@xxxxxxxxxx>, Madhavan Srinivasan <maddy@xxxxxxxxxxxxx>
- From: Easwar Hariharan <eahariha@xxxxxxxxxxxxxxxxxxx>
- Date: Fri, 15 Nov 2024 21:22:52 +0000
- Cc: netfilter-devel@xxxxxxxxxxxxxxx, coreteam@xxxxxxxxxxxxx, netdev@xxxxxxxxxxxxxxx, linux-kernel@xxxxxxxxxxxxxxx, cocci@xxxxxxxx, linux-arm-kernel@xxxxxxxxxxxxxxxxxxx, linux-s390@xxxxxxxxxxxxxxx, dri-devel@xxxxxxxxxxxxxxxxxxxxx, intel-xe@xxxxxxxxxxxxxxxxxxxxx, linux-scsi@xxxxxxxxxxxxxxx, xen-devel@xxxxxxxxxxxxxxxxxxxx, linux-block@xxxxxxxxxxxxxxx, linux-wireless@xxxxxxxxxxxxxxx, ath11k@xxxxxxxxxxxxxxxxxxx, linux-mm@xxxxxxxxx, linux-bluetooth@xxxxxxxxxxxxxxx, linux-staging@xxxxxxxxxxxxxxx, linux-rpi-kernel@xxxxxxxxxxxxxxxxxxx, ceph-devel@xxxxxxxxxxxxxxx, live-patching@xxxxxxxxxxxxxxx, linux-sound@xxxxxxxxxxxxxxx, etnaviv@xxxxxxxxxxxxxxxxxxxxx, oss-drivers@xxxxxxxxxxxx, linuxppc-dev@xxxxxxxxxxxxxxxx, Anna-Maria Behnsen <anna-maria@xxxxxxxxxxxxx>, Easwar Hariharan <eahariha@xxxxxxxxxxxxxxxxxxx>, Michael Kelley <mhklinux@xxxxxxxxxxx>, Thomas Gleixner <tglx@xxxxxxxxxxxxx>, Luiz Augusto von Dentz <luiz.von.dentz@xxxxxxxxx>
- Delivery-date: Fri, 15 Nov 2024 21:39:15 +0000
- Dkim-filter: OpenDKIM Filter v2.11.0 linux.microsoft.com A22AA206BCEE
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
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
~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)
It's implemented as a macro to allow usage in static initializers.
This will also allow conversion of yet more sites that use (sec * HZ)
directly, and improve their readability.
Suggested-by: Michael Kelley <mhklinux@xxxxxxxxxxx>
Signed-off-by: Easwar Hariharan <eahariha@xxxxxxxxxxxxxxxxxxx>
Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
Reviewed-by: Luiz Augusto von Dentz <luiz.von.dentz@xxxxxxxxx>
Link:
https://lore.kernel.org/all/20241030-open-coded-timeouts-v3-1-9ba123facf88@xxxxxxxxxxxxxxxxxxx
---
include/linux/jiffies.h | 13 +++++++++++++
net/bluetooth/hci_event.c | 2 --
2 files changed, 13 insertions(+), 2 deletions(-)
diff --git a/include/linux/jiffies.h b/include/linux/jiffies.h
index
1220f0fbe5bf9fb6c559b4efd603db3e97db9b65..0a7382753c6b636fe285599953e314fb7479ea01
100644
--- a/include/linux/jiffies.h
+++ b/include/linux/jiffies.h
@@ -526,6 +526,19 @@ 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
+ * function so it can be used in static 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..7b35c58bbbeb79f2b50a02212771fb283ba5643d
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,
--
2.34.1
|