staging: gdm724x: gdm_mux: Remove create_workqueue()
authorAmitoj Kaur Chawla <amitoj1606@gmail.com>
Sat, 13 Feb 2016 05:01:02 +0000 (10:31 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 15 Feb 2016 00:52:15 +0000 (16:52 -0800)
commitc272dc2da14cde0bfd9495a5aafb8e3e94f35601
tree794b6e6a4bad01e894f56d13c682c59be1c60a59
parent73b37c91ac5f31c296220bb20dabb881c80b4222
staging: gdm724x: gdm_mux: Remove create_workqueue()

With concurrency managed workqueues, use of dedicated workqueues
can be replaced by using system_wq. Drop mux_rx_wq by using system_wq.

Since there is only one work item per mux_dev and different mux_devs
do not need to be ordered, increase of concurrency level by switching
to system_wq should not break anything.

cancel_work_sync() is used to ensure that work is not pending or
executing on any CPU.

Lastly, since all devices are suspended, which shutdowns the work item
before the driver can be unregistered, it is guaranteed that no work
item is pending or executing by the time exit path runs.

Signed-off-by: Amitoj Kaur Chawla <amitoj1606@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/gdm724x/gdm_mux.c