mwifiex: avoid queue_work while work is ongoing
authorShengzhen Li <szli@marvell.com>
Fri, 13 Mar 2015 12:07:54 +0000 (17:37 +0530)
committerKalle Valo <kvalo@codeaurora.org>
Mon, 16 Mar 2015 16:12:25 +0000 (18:12 +0200)
commitb2713f67f7a4c3226772c5ac581c7f37d7c473f1
treec17b7a7e0beaf3804be5b19cbcbaf2554a072f41
parentea44f4d04c9356dc844af5312a376b6528cec7c5
mwifiex: avoid queue_work while work is ongoing

Current code does not check whether main_work_queue or
rx_work_queue is running when preparing to do queue_work,
this code fix add check before calling queue_work, reducing
unnecessary queue_work switch.

This change instead sets more_task flag to ensure we run main_process
superloop once again.

Signed-off-by: Shengzhen Li <szli@marvell.com>
Signed-off-by: Zhaoyang Liu <liuzy@marvell.com>
Reviewed-by: Cathy Luo <cluo@marvell.com>
Reviewed-by: Amitkumar Karwar <akarwar@marvell.com>
Reviewed-by: Avinash Patil <patila@marvell.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/mwifiex/main.c
drivers/net/wireless/mwifiex/main.h
drivers/net/wireless/mwifiex/pcie.c
drivers/net/wireless/mwifiex/usb.c