Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1416542 > unrolled thread

[PATCH] mlxsw: core: Remove deprecated create_workqueue

Started byBhaktipriya Shridhar <bhaktipriya96@gmail.com>
First post2016-06-07 22:00 +0200
Last post2016-06-10 09:00 +0200
Articles 4 — 4 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] mlxsw: core: Remove deprecated create_workqueue Bhaktipriya Shridhar <bhaktipriya96@gmail.com> - 2016-06-07 22:00 +0200
    Re: [PATCH] mlxsw: core: Remove deprecated create_workqueue Jiri Pirko <jiri@resnulli.us> - 2016-06-08 10:00 +0200
    Re: [PATCH] mlxsw: core: Remove deprecated create_workqueue Ido Schimmel <idosch@mellanox.com> - 2016-06-08 10:30 +0200
    Re: [PATCH] mlxsw: core: Remove deprecated create_workqueue David Miller <davem@davemloft.net> - 2016-06-10 09:00 +0200

#1416542 — [PATCH] mlxsw: core: Remove deprecated create_workqueue

FromBhaktipriya Shridhar <bhaktipriya96@gmail.com>
Date2016-06-07 22:00 +0200
Subject[PATCH] mlxsw: core: Remove deprecated create_workqueue
Message-ID<rHvkl-6Ti-11@gated-at.bofh.it>
alloc_workqueue replaces deprecated create_workqueue().

A dedicated workqueue has been used since the workqueue
mlxsw_wq is used for FDB notif. processing with workitems that are
involved in normal device operation && because it's a network device
which can be depended upon during memory reclaim.

Workitems &trans->timeout_dw and &mlxsw_sp->fdb_notify.dw,
map to mlxsw_sp_fdb_notify_work (processes FDB notifications from the
underlying device and resolves the netdev to which the entry points to
and notifies the bridge using the switchdev notifier) and
mlxsw_emad_trans_timeout_work (provides async EMAD register access)
respectively. They require forward progress under memory pressure and
hence, WQ_MEM_RECLAIM has been set.

Since there are only a fixed number of work items, explicit concurrency
limit is unnecessary here.

Signed-off-by: Bhaktipriya Shridhar <bhaktipriya96@gmail.com>
---
 drivers/net/ethernet/mellanox/mlxsw/core.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/mellanox/mlxsw/core.c b/drivers/net/ethernet/mellanox/mlxsw/core.c
index b0a0b01..01ae548 100644
--- a/drivers/net/ethernet/mellanox/mlxsw/core.c
+++ b/drivers/net/ethernet/mellanox/mlxsw/core.c
@@ -1736,7 +1736,7 @@ static int __init mlxsw_core_module_init(void)
 {
 	int err;

-	mlxsw_wq = create_workqueue(mlxsw_core_driver_name);
+	mlxsw_wq = alloc_workqueue(mlxsw_core_driver_name, WQ_MEM_RECLAIM, 0);
 	if (!mlxsw_wq)
 		return -ENOMEM;
 	mlxsw_core_dbg_root = debugfs_create_dir(mlxsw_core_driver_name, NULL);
--
2.1.4

[toc] | [next] | [standalone]


#1417005

FromJiri Pirko <jiri@resnulli.us>
Date2016-06-08 10:00 +0200
Message-ID<rHGz8-5Mb-21@gated-at.bofh.it>
In reply to#1416542
Tue, Jun 07, 2016 at 09:59:46PM CEST, bhaktipriya96@gmail.com wrote:
>alloc_workqueue replaces deprecated create_workqueue().
>
>A dedicated workqueue has been used since the workqueue
>mlxsw_wq is used for FDB notif. processing with workitems that are
>involved in normal device operation && because it's a network device
>which can be depended upon during memory reclaim.
>
>Workitems &trans->timeout_dw and &mlxsw_sp->fdb_notify.dw,
>map to mlxsw_sp_fdb_notify_work (processes FDB notifications from the
>underlying device and resolves the netdev to which the entry points to
>and notifies the bridge using the switchdev notifier) and
>mlxsw_emad_trans_timeout_work (provides async EMAD register access)
>respectively. They require forward progress under memory pressure and
>hence, WQ_MEM_RECLAIM has been set.
>
>Since there are only a fixed number of work items, explicit concurrency
>limit is unnecessary here.
>
>Signed-off-by: Bhaktipriya Shridhar <bhaktipriya96@gmail.com>

Acked-by: Jiri Pirko <jiri@mellanox.com>

[toc] | [prev] | [next] | [standalone]


#1417047

FromIdo Schimmel <idosch@mellanox.com>
Date2016-06-08 10:30 +0200
Message-ID<rHH29-6b9-13@gated-at.bofh.it>
In reply to#1416542
Tue, Jun 07, 2016 at 10:59:46PM IDT, bhaktipriya96@gmail.com wrote:
>alloc_workqueue replaces deprecated create_workqueue().
>
>A dedicated workqueue has been used since the workqueue
>mlxsw_wq is used for FDB notif. processing with workitems that are
>involved in normal device operation && because it's a network device
>which can be depended upon during memory reclaim.
>
>Workitems &trans->timeout_dw and &mlxsw_sp->fdb_notify.dw,
>map to mlxsw_sp_fdb_notify_work (processes FDB notifications from the
>underlying device and resolves the netdev to which the entry points to
>and notifies the bridge using the switchdev notifier) and
>mlxsw_emad_trans_timeout_work (provides async EMAD register access)
>respectively.

The ordering here is off - timeout_dw is for
mlxsw_emad_trans_timeout_work() and fdb_notify.dw is for
mlxsw_sp_fdb_notify_work(), but otherwise this seems fine to me.

Tested-by: Ido Schimmel <idosch@mellanox.com>

Thanks!

[toc] | [prev] | [next] | [standalone]


#1419072

FromDavid Miller <davem@davemloft.net>
Date2016-06-10 09:00 +0200
Message-ID<rIoA9-1dl-5@gated-at.bofh.it>
In reply to#1416542
From: Bhaktipriya Shridhar <bhaktipriya96@gmail.com>
Date: Wed, 8 Jun 2016 01:29:46 +0530

> alloc_workqueue replaces deprecated create_workqueue().
> 
> A dedicated workqueue has been used since the workqueue
> mlxsw_wq is used for FDB notif. processing with workitems that are
> involved in normal device operation && because it's a network device
> which can be depended upon during memory reclaim.
> 
> Workitems &trans->timeout_dw and &mlxsw_sp->fdb_notify.dw,
> map to mlxsw_sp_fdb_notify_work (processes FDB notifications from the
> underlying device and resolves the netdev to which the entry points to
> and notifies the bridge using the switchdev notifier) and
> mlxsw_emad_trans_timeout_work (provides async EMAD register access)
> respectively. They require forward progress under memory pressure and
> hence, WQ_MEM_RECLAIM has been set.
> 
> Since there are only a fixed number of work items, explicit concurrency
> limit is unnecessary here.
> 
> Signed-off-by: Bhaktipriya Shridhar <bhaktipriya96@gmail.com>

Applied.

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web