linux-bluetooth.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/2] jiffies: Define secs_to_jiffies()
@ 2024-10-22 18:52 Easwar Hariharan
  0 siblings, 0 replies; 5+ messages in thread
From: Easwar Hariharan @ 2024-10-22 18:52 UTC (permalink / raw)
  To: lkp, Marcel Holtmann, Johan Hedberg, Luiz Augusto von Dentz,
	Anna-Maria Behnsen, Thomas Gleixner, Easwar Hariharan,
	Geert Uytterhoeven, open list, open list:BLUETOOTH SUBSYSTEM
  Cc: Naman Jain, Michael Kelley

There are ~500 usages of msecs_to_jiffies() that either use a multiplier
value of 1000 or equivalently MSEC_PER_SEC. Define secs_to_jiffies() to
allow such code to be less clunky.

Suggested-by: Michael Kelley <mhklinux@outlook.com>
Signed-off-by: Easwar Hariharan <eahariha@linux.microsoft.com>
---
 include/linux/jiffies.h   | 2 ++
 net/bluetooth/hci_event.c | 2 --
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/include/linux/jiffies.h b/include/linux/jiffies.h
index 1220f0fbe5bf..50dba516fd2f 100644
--- a/include/linux/jiffies.h
+++ b/include/linux/jiffies.h
@@ -526,6 +526,8 @@ static __always_inline unsigned long msecs_to_jiffies(const unsigned int m)
 	}
 }
 
+#define secs_to_jiffies(_secs) msecs_to_jiffies((_secs) * MSEC_PER_SEC)
+
 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 0bbad90ddd6f..7b35c58bbbeb 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


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 1/2] jiffies: Define secs_to_jiffies()
@ 2024-10-22 18:53 Easwar Hariharan
  2024-10-22 22:58 ` Easwar Hariharan
  2024-10-23 12:36 ` Anna-Maria Behnsen
  0 siblings, 2 replies; 5+ messages in thread
From: Easwar Hariharan @ 2024-10-22 18:53 UTC (permalink / raw)
  To: lkp, Marcel Holtmann, Johan Hedberg, Luiz Augusto von Dentz,
	Thomas Gleixner, Anna-Maria Behnsen, Geert Uytterhoeven,
	Easwar Hariharan, open list, open list:BLUETOOTH SUBSYSTEM
  Cc: Naman Jain, Michael Kelley

There are ~500 usages of msecs_to_jiffies() that either use a multiplier
value of 1000 or equivalently MSEC_PER_SEC. Define secs_to_jiffies() to
allow such code to be less clunky.

Suggested-by: Michael Kelley <mhklinux@outlook.com>
Signed-off-by: Easwar Hariharan <eahariha@linux.microsoft.com>
---
 include/linux/jiffies.h   | 2 ++
 net/bluetooth/hci_event.c | 2 --
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/include/linux/jiffies.h b/include/linux/jiffies.h
index 1220f0fbe5bf..50dba516fd2f 100644
--- a/include/linux/jiffies.h
+++ b/include/linux/jiffies.h
@@ -526,6 +526,8 @@ static __always_inline unsigned long msecs_to_jiffies(const unsigned int m)
 	}
 }
 
+#define secs_to_jiffies(_secs) msecs_to_jiffies((_secs) * MSEC_PER_SEC)
+
 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 0bbad90ddd6f..7b35c58bbbeb 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


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/2] jiffies: Define secs_to_jiffies()
  2024-10-22 18:53 Easwar Hariharan
@ 2024-10-22 22:58 ` Easwar Hariharan
  2024-10-23 12:36 ` Anna-Maria Behnsen
  1 sibling, 0 replies; 5+ messages in thread
From: Easwar Hariharan @ 2024-10-22 22:58 UTC (permalink / raw)
  To: lkp, Marcel Holtmann, Johan Hedberg, Luiz Augusto von Dentz,
	Thomas Gleixner, Anna-Maria Behnsen, Geert Uytterhoeven,
	open list, open list:BLUETOOTH SUBSYSTEM, K. Y. Srinivasan,
	Haiyang Zhang, Wei Liu, Dexuan Cui, Linux-HyperV
  Cc: eahariha, Naman Jain, Michael Kelley

On 10/22/2024 11:53 AM, Easwar Hariharan wrote:
> There are ~500 usages of msecs_to_jiffies() that either use a multiplier
> value of 1000 or equivalently MSEC_PER_SEC. Define secs_to_jiffies() to
> allow such code to be less clunky.
> 
> Suggested-by: Michael Kelley <mhklinux@outlook.com>
> Signed-off-by: Easwar Hariharan <eahariha@linux.microsoft.com>
> ---
>  include/linux/jiffies.h   | 2 ++
>  net/bluetooth/hci_event.c | 2 --
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/include/linux/jiffies.h b/include/linux/jiffies.h
> index 1220f0fbe5bf..50dba516fd2f 100644
> --- a/include/linux/jiffies.h
> +++ b/include/linux/jiffies.h
> @@ -526,6 +526,8 @@ static __always_inline unsigned long msecs_to_jiffies(const unsigned int m)
>  	}
>  }
>  
> +#define secs_to_jiffies(_secs) msecs_to_jiffies((_secs) * MSEC_PER_SEC)
> +
>  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 0bbad90ddd6f..7b35c58bbbeb 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,

Sorry, I should have combined distribution lists for the two patches, so
everyone received both patches. Combining the lists with this email.

Here's the lore link for the series:
https://lore.kernel.org/all/20241022185353.2080021-1-eahariha@linux.microsoft.com/

Thanks,
Easwar

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/2] jiffies: Define secs_to_jiffies()
  2024-10-22 18:53 Easwar Hariharan
  2024-10-22 22:58 ` Easwar Hariharan
@ 2024-10-23 12:36 ` Anna-Maria Behnsen
  2024-10-23 18:02   ` Easwar Hariharan
  1 sibling, 1 reply; 5+ messages in thread
From: Anna-Maria Behnsen @ 2024-10-23 12:36 UTC (permalink / raw)
  To: Easwar Hariharan, lkp, Marcel Holtmann, Johan Hedberg,
	Luiz Augusto von Dentz, Thomas Gleixner, Geert Uytterhoeven,
	Easwar Hariharan, open list, open list:BLUETOOTH SUBSYSTEM
  Cc: Naman Jain, Michael Kelley

Easwar Hariharan <eahariha@linux.microsoft.com> writes:

> There are ~500 usages of msecs_to_jiffies() that either use a multiplier
> value of 1000 or equivalently MSEC_PER_SEC. Define secs_to_jiffies() to
> allow such code to be less clunky.

Can you please provide a proper cover letter for a series (also if it is
a series with only 2 patches)?

Regarding your commit message: secs_to_jiffies() is defined in hci_event
and cannot be reused by other callsites and this is why it's valuable to
move it into core code. Especially because there are ~500 users which do
the multiplier thing and there are also several users which use (secs *
HZ).

What do you think about converting the other users e.g. using
Coccinelle?

> Suggested-by: Michael Kelley <mhklinux@outlook.com>
> Signed-off-by: Easwar Hariharan <eahariha@linux.microsoft.com>
> ---
>  include/linux/jiffies.h   | 2 ++
>  net/bluetooth/hci_event.c | 2 --
>  2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/include/linux/jiffies.h b/include/linux/jiffies.h
> index 1220f0fbe5bf..50dba516fd2f 100644
> --- a/include/linux/jiffies.h
> +++ b/include/linux/jiffies.h
> @@ -526,6 +526,8 @@ static __always_inline unsigned long msecs_to_jiffies(const unsigned int m)
>  	}
>  }
>  
> +#define secs_to_jiffies(_secs) msecs_to_jiffies((_secs) * MSEC_PER_SEC)
> +

Why not only doing

#define secs_to_jiffies(s) (s * 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 0bbad90ddd6f..7b35c58bbbeb 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,

Thanks,

	Anna-Maria


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/2] jiffies: Define secs_to_jiffies()
  2024-10-23 12:36 ` Anna-Maria Behnsen
@ 2024-10-23 18:02   ` Easwar Hariharan
  0 siblings, 0 replies; 5+ messages in thread
From: Easwar Hariharan @ 2024-10-23 18:02 UTC (permalink / raw)
  To: Anna-Maria Behnsen, lkp, Marcel Holtmann, Johan Hedberg,
	Luiz Augusto von Dentz, Thomas Gleixner, Geert Uytterhoeven,
	open list, open list:BLUETOOTH SUBSYSTEM
  Cc: eahariha, Naman Jain, Michael Kelley

On 10/23/2024 5:36 AM, Anna-Maria Behnsen wrote:
> Easwar Hariharan <eahariha@linux.microsoft.com> writes:
> 
>> There are ~500 usages of msecs_to_jiffies() that either use a multiplier
>> value of 1000 or equivalently MSEC_PER_SEC. Define secs_to_jiffies() to
>> allow such code to be less clunky.
> 
> Can you please provide a proper cover letter for a series (also if it is
> a series with only 2 patches)?

Yes, apologies, this isn't my usual mode of operations.

> 
> Regarding your commit message: secs_to_jiffies() is defined in hci_event
> and cannot be reused by other callsites and this is why it's valuable to
> move it into core code. Especially because there are ~500 users which do
> the multiplier thing and there are also several users which use (secs *
> HZ).
> 
> What do you think about converting the other users e.g. using
> Coccinelle?
> 

I intended to follow up this series with such. I'm not super familiar
with Coccinelle and am occupied by commercial work, so that may take longer.

>> Suggested-by: Michael Kelley <mhklinux@outlook.com>
>> Signed-off-by: Easwar Hariharan <eahariha@linux.microsoft.com>
>> ---
>>  include/linux/jiffies.h   | 2 ++
>>  net/bluetooth/hci_event.c | 2 --
>>  2 files changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/include/linux/jiffies.h b/include/linux/jiffies.h
>> index 1220f0fbe5bf..50dba516fd2f 100644
>> --- a/include/linux/jiffies.h
>> +++ b/include/linux/jiffies.h
>> @@ -526,6 +526,8 @@ static __always_inline unsigned long msecs_to_jiffies(const unsigned int m)
>>  	}
>>  }
>>  
>> +#define secs_to_jiffies(_secs) msecs_to_jiffies((_secs) * MSEC_PER_SEC)
>> +
> 
> Why not only doing
> 
> #define secs_to_jiffies(s) (s * HZ)

Yes, fair enough, I can change accordingly.

Thanks,
Easwar

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2024-10-23 18:01 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-10-22 18:52 [PATCH 1/2] jiffies: Define secs_to_jiffies() Easwar Hariharan
  -- strict thread matches above, loose matches on Subject: below --
2024-10-22 18:53 Easwar Hariharan
2024-10-22 22:58 ` Easwar Hariharan
2024-10-23 12:36 ` Anna-Maria Behnsen
2024-10-23 18:02   ` Easwar Hariharan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).