Thread (16 messages) 16 messages, 2 authors, 2016-03-10

Re: [PATCH 6/7] mwifiex: factor out mwifiex_cancel_pending_scan_cmd

From: Julian Calaby <hidden>
Date: 2016-02-25 01:14:21

Hi Andreas,

On Thu, Feb 25, 2016 at 11:08 AM, Andreas Fenkart [off-list ref] wrote:
quoted hunk ↗ jump to hunk
releasing the scan_pending lock in mwifiex_check_next_scan_command
is valid, since the lock is taken again, and all nodes removed
from the scan_pending queue.

Signed-off-by: Andreas Fenkart <redacted>
---
 drivers/net/wireless/marvell/mwifiex/cmdevt.c      | 43 ++++++++++------------
 drivers/net/wireless/marvell/mwifiex/main.h        |  1 +
 drivers/net/wireless/marvell/mwifiex/scan.c        | 23 +++---------
 drivers/net/wireless/marvell/mwifiex/sta_cmdresp.c | 13 +------
 4 files changed, 27 insertions(+), 53 deletions(-)
diff --git a/drivers/net/wireless/marvell/mwifiex/scan.c b/drivers/net/wireless/marvell/mwifiex/scan.c
index 6ddc98b..490d0d1 100644
--- a/drivers/net/wireless/marvell/mwifiex/scan.c
+++ b/drivers/net/wireless/marvell/mwifiex/scan.c
@@ -1920,13 +1910,10 @@ static void mwifiex_check_next_scan_command(struct mwifiex_private *priv)
                }
        } else if ((priv->scan_aborting && !priv->scan_request) ||
                   priv->scan_block) {
-               list_for_each_entry_safe(cmd_node, tmp_node,
-                                        &adapter->scan_pending_q, list) {
-                       list_del(&cmd_node->list);
-                       mwifiex_insert_cmd_to_free_q(adapter, cmd_node);
-               }
                spin_unlock_irqrestore(&adapter->scan_pending_q_lock, flags);

+               mwifiex_cancel_pending_scan_cmd(adapter);
+
This is creating a "short" window where &adapter->scan_pending_q_lock
is unlocked here. Is that safe?

You might want to write mwifiex_cancel_pending_scan_cmd() as two
functions, one which takes the spinlock and calls the other and one
which does all the work so you can call the latter here without that
window where ..._q_lock is unlocked.

Thanks,

-- 
Julian Calaby

Email: julian.calaby@gmail.com
Profile: http://www.google.com/profiles/julian.calaby/
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help