net/mlx4_core: Convert timers to use timer_setup()
Subsystems (4)
PATCH 1/1 net/mlx4_core: Convert timers to use timer_setup()
In preparation for unconditionally passing the struct timer_list pointer to all timer callbacks, switch to using the new timer_setup() and from_timer() to pass the timer pointer explicitly.
---
This requires commit 686fef928bba ("timer: Prepare to change timer callback argument type") in v4.14-rc3, but should be otherwise stand-alone.
--- drivers/net/ethernet/mellanox/mlx4/catas.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-)
drivers/net/ethernet/mellanox/mlx4/catas.c +4 -6
@@ -231,10 +231,10 @@ static void dump_err_buf(struct mlx4_dev *dev) i, swab32(readl(priv->catas_err.map + i))); } -static void poll_catas (unsigned long dev_ptr) +static void poll_catas (struct timer_list *t) { -struct mlx4_dev *dev = (struct mlx4_dev *) dev_ptr; -struct mlx4_priv *priv =mlx4_priv (dev); +struct mlx4_priv *priv =from_timer (priv, t, catas_err.timer); +struct mlx4_dev *dev = &priv->dev;u32 slave_read;if (mlx4_is_slave (dev)) {
@@ -277,7 +277,7 @@ void mlx4_start_catas_poll(struct mlx4_dev *dev)phys_addr_t addr;INIT_LIST_HEAD (&priv->catas_err.list); -init_timer (&priv->catas_err.timer); +timer_setup (&priv->catas_err.timer, poll_catas,0 ); priv->catas_err.map =NULL ;if (!mlx4_is_slave (dev)) {
@@ -293,8 +293,6 @@ void mlx4_start_catas_poll(struct mlx4_dev *dev) } } - priv->catas_err.timer.data = (unsigned long ) dev; - priv->catas_err.timer.function = poll_catas; priv->catas_err.timer.expires =round_jiffies (jiffies +MLX4_CATAS_POLL_INTERVAL );add_timer (&priv->catas_err.timer);
Signature · 10 lines
2.7.4 -- Kees Cook Pixel Security -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
Quoted 9 lines · Kees Cook
In preparation for unconditionally passing the struct
timer_listpointer to all timer callbacks, switch to using the newtimer_setup()andfrom_timer()to pass the timer pointer explicitly.Cc Tariq Toukan <[email protected]>Cc Thomas Gleixner <[email protected]>Signed-off-by Kees Cook <[email protected]>
Quoted 8 lines
---
This requires commit686fef928bba("timer: Prepare to change timer callback argument type") in v4.14-rc3, but should be otherwise stand-alone.--- drivers/net/ethernet/mellanox/mlx4/catas.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-)
Hi Kees,
In RDMA, we had very similar patch [1] to your patch series, but it converts to setup_timer, while you are converting to timer_setup.
Which conversion is the right one?
[1] https://patchwork.kernel.org/patch/9980701/
Thanks
Quoted 47 lines
drivers/net/ethernet/mellanox/mlx4/catas.c +4
-7@@ -231,10 +231,10 @@ static void dump_err_buf(struct mlx4_dev *dev) i, swab32(readl(priv->catas_err.map + i))); } -static void poll_catas (unsigned long dev_ptr) +static void poll_catas (struct timer_list *t) { -struct mlx4_dev *dev = (struct mlx4_dev *) dev_ptr; -struct mlx4_priv *priv =mlx4_priv (dev); +struct mlx4_priv *priv =from_timer (priv, t, catas_err.timer); +struct mlx4_dev *dev = &priv->dev;u32 slave_read;if (mlx4_is_slave (dev)) {@@ -277,7 +277,7 @@ void mlx4_start_catas_poll(struct mlx4_dev *dev)phys_addr_t addr;INIT_LIST_HEAD (&priv->catas_err.list); -init_timer (&priv->catas_err.timer); +timer_setup (&priv->catas_err.timer, poll_catas,0 ); priv->catas_err.map =NULL ;if (!mlx4_is_slave (dev)) {@@ -293,8 +293,6 @@ void mlx4_start_catas_poll(struct mlx4_dev *dev) } } - priv->catas_err.timer.data = (unsigned long ) dev; - priv->catas_err.timer.function = poll_catas; priv->catas_err.timer.expires =round_jiffies (jiffies +MLX4_CATAS_POLL_INTERVAL );add_timer (&priv->catas_err.timer); --2.7.4
--
Kees Cook
Pixel Security
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Quoted 19 lines · Leon Romanovsky
Quoted 9 lines · Kees Cook
In preparation for unconditionally passing the struct
timer_listpointer to all timer callbacks, switch to using the newtimer_setup()andfrom_timer()to pass the timer pointer explicitly.Cc Tariq Toukan <tariqt-VPRAkNaXOzVWk0Htik3J/[email protected]>Cc Thomas Gleixner <[email protected]>Signed-off-by Kees Cook <[email protected]>Quoted 8 lines
---
This requires commit686fef928bba("timer: Prepare to change timer callback argument type") in v4.14-rc3, but should be otherwise stand-alone.--- drivers/net/ethernet/mellanox/mlx4/catas.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-)
Quoted 6 lines
Hi Kees,
In RDMA, we had very similar patch [1] to your patch series, but it converts to
setup_timer, while you are converting totimer_setup.Which conversion is the right one?
The timer_setup() is the new API designed to eliminate the .data field and pass in the struct timer_list to callbacks. (Please take the timer_setup() change instead.)
Thanks!
-Kees
Quoted 52 lines
[1] https://patchwork.kernel.org/patch/9980701/
Thanks
Quoted 47 lines
drivers/net/ethernet/mellanox/mlx4/catas.c +4
-7@@ -231,10 +231,10 @@ static void dump_err_buf(struct mlx4_dev *dev) i, swab32(readl(priv->catas_err.map + i))); } -static void poll_catas (unsigned long dev_ptr) +static void poll_catas (struct timer_list *t) { -struct mlx4_dev *dev = (struct mlx4_dev *) dev_ptr; -struct mlx4_priv *priv =mlx4_priv (dev); +struct mlx4_priv *priv =from_timer (priv, t, catas_err.timer); +struct mlx4_dev *dev = &priv->dev;u32 slave_read;if (mlx4_is_slave (dev)) {@@ -277,7 +277,7 @@ void mlx4_start_catas_poll(struct mlx4_dev *dev)phys_addr_t addr;INIT_LIST_HEAD (&priv->catas_err.list); -init_timer (&priv->catas_err.timer); +timer_setup (&priv->catas_err.timer, poll_catas,0 ); priv->catas_err.map =NULL ;if (!mlx4_is_slave (dev)) {@@ -293,8 +293,6 @@ void mlx4_start_catas_poll(struct mlx4_dev *dev) } } - priv->catas_err.timer.data = (unsigned long ) dev; - priv->catas_err.timer.function = poll_catas; priv->catas_err.timer.expires =round_jiffies (jiffies +MLX4_CATAS_POLL_INTERVAL );add_timer (&priv->catas_err.timer); --2.7.4
--
Kees Cook
Pixel Security
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
Signature · 6 lines
Kees Cook Pixel Security -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
Doug Ledford
AppliedQuoted 11 lines · Kees Cook
In preparation for unconditionally passing the struct
timer_listpointer to
all timer callbacks, switch to using the newtimer_setup()andfrom_timer()
to pass the timer pointer explicitly.Cc Tariq Toukan <[email protected]>Cc Thomas Gleixner <[email protected]>Signed-off-by Kees Cook <[email protected]>
Quoted 4 lines
---
This requires commit686fef928bba("timer: Prepare to change timer callback argument type") in v4.14-rc3, but should be otherwise stand-alone.
Thanks, applied.
Signature · 3 lines
Doug Ledford <[email protected]> GPG KeyID: B826A3330E572FDD Key fingerprint = AE6B 1BDA 122B 23B4 265B 1274 B826 A333 0E57 2FDD