1. 09 4月, 2013 1 次提交
    • B
      mwifiex: fix negative cmd_pending count · 9908b074
      Bing Zhao 提交于
      cmd_pending is increased in mwifiex_wait_queue_complete() and
      decreased in mwifiex_complete_cmd() currently.
      If there are two or more commands in the cmd_pending_q the main
      worker thread will pick up next command from cmd_pending_q
      automatically after finishing current command. As a result
      mwifiex_wait_queue_complete() will not be called because
      the command is alreay completed. This leads to a negative
      number in cmd_pending count.
      
      Fix it by increasing cmd_pending when a cmd is queued into
      cmd_pending_q and decreasing when that cmd is recycled. For scan
      commands we don't perform inc/dec operations until it's moved
      from scan_pending_q to cmd_pending_q. This covers both
      synchronous and asynchronous commands.
      Reported-by: NDaniel Drake <dsd@laptop.org>
      Tested-by: NDaniel Drake <dsd@laptop.org>
      Tested-by: NMarco Cesarano <marco@marvell.com>
      Signed-off-by: NBing Zhao <bzhao@marvell.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      9908b074
  2. 04 4月, 2013 27 次提交
  3. 02 4月, 2013 12 次提交