Message ID | 20241115-converge-secs-to-jiffies-v1-0-19aadc34941b@linux.microsoft.com |
---|---|
Headers | show |
Series | Converge on using secs_to_jiffies() | expand |
On 11/15/2024 1:22 PM, Easwar Hariharan wrote: > 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@outlook.com> > Signed-off-by: Easwar Hariharan <eahariha@linux.microsoft.com> > Signed-off-by: Thomas Gleixner <tglx@linutronix.de> > Reviewed-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com> > Link: https://lore.kernel.org/all/20241030-open-coded-timeouts-v3-1-9ba123facf88@linux.microsoft.com your signed-off-by should be last. and you have a patch ordering problem since this patch must come before all the patches that use secs_to_jiffies(), otherwise this series cannot be bisected
On 11/15/2024 1:30 PM, Jeff Johnson wrote: > On 11/15/2024 1:22 PM, Easwar Hariharan wrote: >> 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@outlook.com> >> Signed-off-by: Easwar Hariharan <eahariha@linux.microsoft.com> >> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> >> Reviewed-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com> >> Link: https://lore.kernel.org/all/20241030-open-coded-timeouts-v3-1-9ba123facf88@linux.microsoft.com > > your signed-off-by should be last. > > and you have a patch ordering problem since this patch must come before all > the patches that use secs_to_jiffies(), otherwise this series cannot be bisected Thanks for the quick response, indeed this patch is already in tip[1], I pulled it in for testing the series but missed out on removing it before sending. Please review v2 that excludes this: https://lore.kernel.org/all/20241115-converge-secs-to-jiffies-v2-0-911fb7595e79@linux.microsoft.com/ [1]: https://git.kernel.org/tip/b35108a51cf7bab58d7eace1267d7965978bcdb8 Thanks, Easwar
On Fri, Nov 15, 2024 at 09:22:49PM +0000, Easwar Hariharan wrote: > diff --git a/samples/livepatch/livepatch-callbacks-busymod.c b/samples/livepatch/livepatch-callbacks-busymod.c > index 378e2d40271a9717d09eff51d3d3612c679736fc..d0fd801a7c21b7d7939c29d83f9d993badcc9aba 100644 > --- a/samples/livepatch/livepatch-callbacks-busymod.c > +++ b/samples/livepatch/livepatch-callbacks-busymod.c > @@ -45,7 +45,7 @@ static int livepatch_callbacks_mod_init(void) > { > pr_info("%s\n", __func__); > schedule_delayed_work(&work, > - msecs_to_jiffies(1000 * 0)); > + secs_to_jiffies(0)); Better to just call schedule_delayed_work(&work, 0); > return 0; > } regards, dan carpenter
On Fri, 2024-11-15 at 21:22 +0000, Easwar Hariharan wrote: > Changes made with the following Coccinelle rules: > > @@ constant C; @@ > > - msecs_to_jiffies(C * 1000) > + secs_to_jiffies(C) > > @@ constant C; @@ > > - msecs_to_jiffies(C * MSEC_PER_SEC) > + secs_to_jiffies(C) > > Signed-off-by: Easwar Hariharan <eahariha@linux.microsoft.com> Reviewed-by: Thomas Hellström <thomas.hellstrom@linux.intel.com> < > --- > drivers/gpu/drm/xe/xe_device.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/xe/xe_device.c > b/drivers/gpu/drm/xe/xe_device.c > index > a1987b554a8d2aa42b29301f2853edddfda7fda5..bb3338ef4191e76128611eeb953 > 1c9d2089db85a 100644 > --- a/drivers/gpu/drm/xe/xe_device.c > +++ b/drivers/gpu/drm/xe/xe_device.c > @@ -502,7 +502,7 @@ static int wait_for_lmem_ready(struct xe_device > *xe) > drm_dbg(&xe->drm, "Waiting for lmem initialization\n"); > > start = jiffies; > - timeout = start + msecs_to_jiffies(60 * 1000); /* 60 sec! */ > + timeout = start + secs_to_jiffies(60); /* 60 sec! */ > > do { > if (signal_pending(current)) >
This is a series that follows up on my previous series to introduce secs_to_jiffies() and convert a few initial users.[1] In the review for that series, Anna-Maria requested converting other users with Coccinelle. This is part 1 that converts users of msecs_to_jiffies() that use the multiply pattern of either of: - msecs_to_jiffies(N*1000), or - msecs_to_jiffies(N*MSEC_PER_SEC) The entire conversion is made with Coccinelle in the script added in patch 2. Some changes suggested by Coccinelle have been deferred to later parts that will address other possible variant patterns. CC: Anna-Maria Behnsen <anna-maria@linutronix.de> Signed-off-by: Easwar Hariharan <eahariha@linux.microsoft.com> [1] https://lore.kernel.org/all/20241030-open-coded-timeouts-v3-0-9ba123facf88@linux.microsoft.com/ [2] https://lore.kernel.org/all/8734kngfni.fsf@somnus/ --- Easwar Hariharan (22): netfilter: conntrack: Cleanup timeout definitions coccinelle: misc: Add secs_to_jiffies script arm: pxa: Convert timeouts to use secs_to_jiffies() s390: kernel: Convert timeouts to use secs_to_jiffies() powerpc/papr_scm: Convert timeouts to secs_to_jiffies() mm: kmemleak: Convert timeouts to secs_to_jiffies() accel/habanalabs: Convert timeouts to secs_to_jiffies() drm/xe: Convert timeout to secs_to_jiffies() drm/etnaviv: Convert timeouts to secs_to_jiffies() scsi: lpfc: Convert timeouts to secs_to_jiffies() scsi: arcmsr: Convert timeouts to secs_to_jiffies() scsi: pm8001: Convert timeouts to secs_to_jiffies() xen/blkback: Convert timeouts to secs_to_jiffies() gve: Convert timeouts to secs_to_jiffies() wifi: ath11k: Convert timeouts to secs_to_jiffies() Bluetooth: MGMT: Convert timeouts to secs_to_jiffies() staging: vc04_services: Convert timeouts to secs_to_jiffies() ceph: Convert timeouts to secs_to_jiffies() livepatch: Convert timeouts to secs_to_jiffies() ALSA: line6: Convert timeouts to secs_to_jiffies() nfp: Convert timeouts to secs_to_jiffies() jiffies: Define secs_to_jiffies() arch/arm/mach-pxa/sharpsl_pm.c | 6 +++--- arch/powerpc/platforms/pseries/papr_scm.c | 2 +- arch/s390/kernel/lgr.c | 3 ++- arch/s390/kernel/time.c | 4 ++-- arch/s390/kernel/topology.c | 2 +- drivers/accel/habanalabs/common/device.c | 2 +- drivers/accel/habanalabs/common/habanalabs_drv.c | 3 +-- drivers/block/xen-blkback/blkback.c | 2 +- drivers/gpu/drm/etnaviv/etnaviv_cmdbuf.c | 2 +- drivers/gpu/drm/xe/xe_device.c | 2 +- drivers/net/ethernet/google/gve/gve_tx_dqo.c | 6 ++---- drivers/net/ethernet/netronome/nfp/nfp_net_common.c | 2 +- drivers/net/wireless/ath/ath11k/debugfs.c | 2 +- drivers/scsi/arcmsr/arcmsr_hba.c | 2 +- drivers/scsi/lpfc/lpfc_init.c | 18 +++++++++--------- drivers/scsi/lpfc/lpfc_nportdisc.c | 8 ++++---- drivers/scsi/lpfc/lpfc_nvme.c | 2 +- drivers/scsi/lpfc/lpfc_sli.c | 4 ++-- drivers/scsi/lpfc/lpfc_vmid.c | 2 +- drivers/scsi/pm8001/pm8001_init.c | 2 +- .../vc04_services/bcm2835-audio/bcm2835-vchiq.c | 2 +- fs/ceph/quota.c | 2 +- include/linux/jiffies.h | 13 +++++++++++++ mm/kmemleak.c | 4 ++-- net/bluetooth/hci_event.c | 2 -- net/bluetooth/mgmt.c | 2 +- net/netfilter/nf_conntrack_proto_sctp.c | 21 ++++++++------------- samples/livepatch/livepatch-callbacks-busymod.c | 2 +- samples/livepatch/livepatch-shadow-fix1.c | 2 +- samples/livepatch/livepatch-shadow-mod.c | 10 +++++----- scripts/coccinelle/misc/secs_to_jiffies.cocci | 21 +++++++++++++++++++++ sound/usb/line6/toneport.c | 2 +- 32 files changed, 92 insertions(+), 67 deletions(-) --- base-commit: 2d5404caa8c7bb5c4e0435f94b28834ae5456623 change-id: 20241112-converge-secs-to-jiffies-d99d1016bd11 Best regards,