Message ID | 20250128-converge-secs-to-jiffies-part-two-v1-0-9a6ecf0b2308@linux.microsoft.com |
---|---|
Headers | show |
Series | Converge on using secs_to_jiffies() part two | expand |
On Tue, Jan 28, 2025 at 06:21:56PM +0000, Easwar Hariharan wrote: > Commit b35108a51cf7 ("jiffies: Define secs_to_jiffies()") introduced > secs_to_jiffies(). As the value here is a multiple of 1000, use > secs_to_jiffies() instead of msecs_to_jiffies to avoid the multiplication. > > This is converted using scripts/coccinelle/misc/secs_to_jiffies.cocci with > the following Coccinelle rules: > > @depends on patch@ > expression E; > @@ > > -msecs_to_jiffies > +secs_to_jiffies > (E > - * \( 1000 \| MSEC_PER_SEC \) > ) > > Signed-off-by: Easwar Hariharan <eahariha@linux.microsoft.com> > --- > drivers/nvme/host/core.c | 6 ++---- > 1 file changed, 2 insertions(+), 4 deletions(-) > > diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c > index 76b615d4d5b91e163e5a6e7baf451c959a2c3cab..87498215ede4bcaf48660b89c901075dfcfaf041 100644 > --- a/drivers/nvme/host/core.c > +++ b/drivers/nvme/host/core.c > @@ -4459,11 +4459,9 @@ static void nvme_fw_act_work(struct work_struct *work) > nvme_auth_stop(ctrl); > > if (ctrl->mtfa) > - fw_act_timeout = jiffies + > - msecs_to_jiffies(ctrl->mtfa * 100); > + fw_act_timeout = jiffies + msecs_to_jiffies(ctrl->mtfa * 100); > else > - fw_act_timeout = jiffies + > - msecs_to_jiffies(admin_timeout * 1000); > + fw_act_timeout = jiffies + secs_to_jiffies(admin_timeout); > > nvme_quiesce_io_queues(ctrl); > while (nvme_ctrl_pp_status(ctrl)) { > > -- Acked-by: Keith Busch <kbusch@kernel.org>
On Tue, Jan 28, 2025 at 06:21:54PM +0000, Easwar Hariharan wrote: > Commit b35108a51cf7 ("jiffies: Define secs_to_jiffies()") introduced > secs_to_jiffies(). As the value here is a multiple of 1000, use > secs_to_jiffies() instead of msecs_to_jiffies to avoid the multiplication. > > This is converted using scripts/coccinelle/misc/secs_to_jiffies.cocci with > the following Coccinelle rules: > > @depends on patch@ > expression E; > @@ > > -msecs_to_jiffies > +secs_to_jiffies > (E > - * \( 1000 \| MSEC_PER_SEC \) > ) > > Signed-off-by: Easwar Hariharan <eahariha@linux.microsoft.com> Looks good to me, Acked-by: "Darrick J. Wong" <djwong@kernel.org> --D > --- > fs/xfs/xfs_icache.c | 2 +- > fs/xfs/xfs_sysfs.c | 7 +++---- > 2 files changed, 4 insertions(+), 5 deletions(-) > > diff --git a/fs/xfs/xfs_icache.c b/fs/xfs/xfs_icache.c > index 7b6c026d01a1fc020a41a678964cdbf7a8113323..7a1feb8dc21f6f71d04f88de866e5a95925e0c54 100644 > --- a/fs/xfs/xfs_icache.c > +++ b/fs/xfs/xfs_icache.c > @@ -230,7 +230,7 @@ xfs_blockgc_queue( > rcu_read_lock(); > if (radix_tree_tagged(&pag->pag_ici_root, XFS_ICI_BLOCKGC_TAG)) > queue_delayed_work(mp->m_blockgc_wq, &pag->pag_blockgc_work, > - msecs_to_jiffies(xfs_blockgc_secs * 1000)); > + secs_to_jiffies(xfs_blockgc_secs)); > rcu_read_unlock(); > } > > diff --git a/fs/xfs/xfs_sysfs.c b/fs/xfs/xfs_sysfs.c > index 60cb5318fdae3cc246236fd988b4749df57f8bfc..eed0f28afe97ead762a9539e45f292db7d0d0c4a 100644 > --- a/fs/xfs/xfs_sysfs.c > +++ b/fs/xfs/xfs_sysfs.c > @@ -568,8 +568,8 @@ retry_timeout_seconds_store( > if (val == -1) > cfg->retry_timeout = XFS_ERR_RETRY_FOREVER; > else { > - cfg->retry_timeout = msecs_to_jiffies(val * MSEC_PER_SEC); > - ASSERT(msecs_to_jiffies(val * MSEC_PER_SEC) < LONG_MAX); > + cfg->retry_timeout = secs_to_jiffies(val); > + ASSERT(secs_to_jiffies(val) < LONG_MAX); > } > return count; > } > @@ -686,8 +686,7 @@ xfs_error_sysfs_init_class( > if (init[i].retry_timeout == XFS_ERR_RETRY_FOREVER) > cfg->retry_timeout = XFS_ERR_RETRY_FOREVER; > else > - cfg->retry_timeout = msecs_to_jiffies( > - init[i].retry_timeout * MSEC_PER_SEC); > + cfg->retry_timeout = secs_to_jiffies(init[i].retry_timeout); > } > return 0; > > > -- > 2.43.0 > >
On Tue, 28 Jan 2025 18:21:45 +0000 Easwar Hariharan <eahariha@linux.microsoft.com> wrote: > This is the second series (part 1*) that converts users of msecs_to_jiffies() that > either use the multiply pattern of either of: > - msecs_to_jiffies(N*1000) or > - msecs_to_jiffies(N*MSEC_PER_SEC) > > where N is a constant or an expression, to avoid the multiplication. > > The conversion is made with Coccinelle with the secs_to_jiffies() script > in scripts/coccinelle/misc. Attention is paid to what the best change > can be rather than restricting to what the tool provides. > > Andrew has kindly agreed to take the series through mm.git modulo the > patches maintainers want to pick through their own trees. I added patches 2-16 to mm.git. If any of these later get merged into a subsystem tree, Stephen will tell us and I'll drop the mm.git copy.
On Tue, 28 Jan 2025 19:21:49 +0100, Easwar Hariharan wrote: > > Commit b35108a51cf7 ("jiffies: Define secs_to_jiffies()") introduced > secs_to_jiffies(). As the value here is a multiple of 1000, use > secs_to_jiffies() instead of msecs_to_jiffies to avoid the multiplication. > > This is converted using scripts/coccinelle/misc/secs_to_jiffies.cocci with > the following Coccinelle rules: > > @depends on patch@ > expression E; > @@ > > -msecs_to_jiffies > +secs_to_jiffies > (E > - * \( 1000 \| MSEC_PER_SEC \) > ) > > Signed-off-by: Easwar Hariharan <eahariha@linux.microsoft.com> Acked-by: Takashi Iwai <tiwai@suse.de> thanks, Takashi > --- > sound/pci/ac97/ac97_codec.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/sound/pci/ac97/ac97_codec.c b/sound/pci/ac97/ac97_codec.c > index 6e710dce5c6068ec20c2da751b6f5372ad1df211..88ac37739b7653f69af430dd0163f5ab4ddf0d0c 100644 > --- a/sound/pci/ac97/ac97_codec.c > +++ b/sound/pci/ac97/ac97_codec.c > @@ -2461,8 +2461,7 @@ int snd_ac97_update_power(struct snd_ac97 *ac97, int reg, int powerup) > * (for avoiding loud click noises for many (OSS) apps > * that open/close frequently) > */ > - schedule_delayed_work(&ac97->power_work, > - msecs_to_jiffies(power_save * 1000)); > + schedule_delayed_work(&ac97->power_work, secs_to_jiffies(power_save)); > else { > cancel_delayed_work(&ac97->power_work); > update_power_regs(ac97); > > -- > 2.43.0 >
On 1/29/2025 9:12 AM, Easwar Hariharan wrote: > On 1/28/2025 9:21 PM, Christoph Hellwig wrote: >> On Tue, Jan 28, 2025 at 06:21:54PM +0000, Easwar Hariharan wrote: >>> else >>> - cfg->retry_timeout = msecs_to_jiffies( >>> - init[i].retry_timeout * MSEC_PER_SEC); >>> + cfg->retry_timeout = secs_to_jiffies(init[i].retry_timeout); >> >> This messes up the formatting by introducing an overly long line. >> >> Otherwise the change looks fine. > > I'll fix this in v2. Thanks for the review! > > - Easwar (he/him) Andrew seems to have fixed it up in his copy, so I'll skip this change in v2. Thanks Andrew! - Easwar
On 1/28/2025 10:21 AM, Easwar Hariharan wrote: > Commit b35108a51cf7 ("jiffies: Define secs_to_jiffies()") introduced > secs_to_jiffies(). As the value here is a multiple of 1000, use > secs_to_jiffies() instead of msecs_to_jiffies to avoid the multiplication. > > This is converted using scripts/coccinelle/misc/secs_to_jiffies.cocci with > the following Coccinelle rules: > > @depends on patch@ > expression E; > @@ > > -msecs_to_jiffies > +secs_to_jiffies > (E > - * \( 1000 \| MSEC_PER_SEC \) > ) > > Signed-off-by: Easwar Hariharan <eahariha@linux.microsoft.com> > --- > drivers/block/rbd.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > <snip> > @@ -6283,9 +6283,9 @@ static int rbd_parse_param(struct fs_parameter *param, > break; > case Opt_lock_timeout: > /* 0 is "wait forever" (i.e. infinite timeout) */ > - if (result.uint_32 > INT_MAX / 1000) > + if (result.uint_32 > INT_MAX) > goto out_of_range; > - opt->lock_timeout = msecs_to_jiffies(result.uint_32 * 1000); > + opt->lock_timeout = secs_to_jiffies(result.uint_32); > break; > case Opt_pool_ns: > kfree(pctx->spec->pool_ns); > Hi Ilya, Dongsheng, Jens, others, Could you please review this hunk and confirm the correct range check here? I figure this is here because of the multiplier to msecs_to_jiffies() and therefore unneeded after the conversion. If so, I noticed patch 07 has similar range checks that I neglected to fix and can do in a v2. Thanks, Easwar (he/him)
This is the second series (part 1*) that converts users of msecs_to_jiffies() that either use the multiply pattern of either of: - msecs_to_jiffies(N*1000) or - msecs_to_jiffies(N*MSEC_PER_SEC) where N is a constant or an expression, to avoid the multiplication. The conversion is made with Coccinelle with the secs_to_jiffies() script in scripts/coccinelle/misc. Attention is paid to what the best change can be rather than restricting to what the tool provides. Andrew has kindly agreed to take the series through mm.git modulo the patches maintainers want to pick through their own trees. This series is based on next-20250128 Signed-off-by: Easwar Hariharan <eahariha@linux.microsoft.com> * https://lore.kernel.org/all/20241210-converge-secs-to-jiffies-v3-0-ddfefd7e9f2a@linux.microsoft.com/ --- Easwar Hariharan (16): coccinelle: misc: secs_to_jiffies: Patch expressions too scsi: lpfc: convert timeouts to secs_to_jiffies() accel/habanalabs: convert timeouts to secs_to_jiffies() ALSA: ac97: convert timeouts to secs_to_jiffies() btrfs: convert timeouts to secs_to_jiffies() rbd: convert timeouts to secs_to_jiffies() libceph: convert timeouts to secs_to_jiffies() libata: zpodd: convert timeouts to secs_to_jiffies() xfs: convert timeouts to secs_to_jiffies() power: supply: da9030: convert timeouts to secs_to_jiffies() nvme: convert timeouts to secs_to_jiffies() spi: spi-fsl-lpspi: convert timeouts to secs_to_jiffies() spi: spi-imx: convert timeouts to secs_to_jiffies() platform/x86/amd/pmf: convert timeouts to secs_to_jiffies() platform/x86: thinkpad_acpi: convert timeouts to secs_to_jiffies() RDMA/bnxt_re: convert timeouts to secs_to_jiffies() .../accel/habanalabs/common/command_submission.c | 2 +- drivers/accel/habanalabs/common/debugfs.c | 2 +- drivers/accel/habanalabs/common/device.c | 2 +- drivers/accel/habanalabs/common/habanalabs_drv.c | 2 +- drivers/ata/libata-zpodd.c | 3 +-- drivers/block/rbd.c | 6 +++--- drivers/infiniband/hw/bnxt_re/qplib_rcfw.c | 2 +- drivers/nvme/host/core.c | 6 ++---- drivers/platform/x86/amd/pmf/acpi.c | 3 ++- drivers/platform/x86/thinkpad_acpi.c | 2 +- drivers/power/supply/da9030_battery.c | 3 +-- drivers/scsi/lpfc/lpfc_init.c | 4 ++-- drivers/scsi/lpfc/lpfc_scsi.c | 12 +++++------ drivers/scsi/lpfc/lpfc_sli.c | 24 ++++++++-------------- drivers/scsi/lpfc/lpfc_vport.c | 2 +- drivers/spi/spi-fsl-lpspi.c | 2 +- drivers/spi/spi-imx.c | 2 +- fs/btrfs/disk-io.c | 6 +++--- fs/xfs/xfs_icache.c | 2 +- fs/xfs/xfs_sysfs.c | 7 +++---- net/ceph/ceph_common.c | 10 ++++----- net/ceph/osd_client.c | 3 +-- scripts/coccinelle/misc/secs_to_jiffies.cocci | 22 ++++++++++++++------ sound/pci/ac97/ac97_codec.c | 3 +-- 24 files changed, 63 insertions(+), 69 deletions(-) --- base-commit: 9a87ce288fe30f268b3a598422fe76af9bb2c2d2 change-id: 20241217-converge-secs-to-jiffies-part-two-f44017aa6f67 Best regards,