1. 13 May, 2014 4 commits
    • Emmanuel Grumbach's avatar
      iwlwifi: pcie: disable BHs in iwl_pcie_txq_check_wrptrs · d090f878
      Emmanuel Grumbach authored
      This fixes:
      
      =================================
      [ INFO: inconsistent lock state ]
      3.14.3+ #5 Tainted: G           O
      ---------------------------------
      inconsistent {SOFTIRQ-ON-W} -> {IN-SOFTIRQ-W} usage.
      swapper/3/0 [HC0[0]:SC1[3]:HE1:SE0] takes:
       (&(&txq->lock)->rlock){+.?...}, at: [<ffffffffa059803c>] iwl_pcie_enqueue_hcmd+0x12c/0x1000 [iwlwifi]
      {SOFTIRQ-ON-W} state was registered at:
        [<ffffffff810d9071>] __lock_acquire+0x5f1/0x13b0
        [<ffffffff810d9ee0>] lock_acquire+0xb0/0x1f0
        [<ffffffff817ef80e>] _raw_spin_lock+0x3e/0x80
        [<ffffffffa0598f7a>] iwl_pcie_txq_check_wrptrs+0x6a/0xb0 [iwlwifi]
        [<ffffffffa0594b5a>] iwl_pcie_irq_handler+0xdba/0x2670 [iwlwifi]
        [<ffffffff810ef1e0>] irq_thread_fn+0x20/0x50
        [<ffffffff810ef77f>] irq_thread+0x11f/0x150
        [<ffffffff810a04f0>] kthread+0xf0/0x110
        [<ffffffff817fa4bc>] ret_from_fork+0x7c/0xb0
      irq event stamp: 1142192
      hardirqs last  enabled at (1142192): [<ffffffff817efb6c>] _raw_spin_unlock_irq+0x2c/0x40
      hardirqs last disabled at (1142191): [<ffffffff817ef9ef>] _raw_spin_lock_irq+0x1f/0x80
      softirqs last  enabled at (1142188): [<ffffffff81079082>] _local_bh_enable+0x22/0x50
      softirqs last disabled at (1142189): [<ffffffff8107ad35>] irq_exit+0xe5/0xf0
      
      other info that might help us debug this:
       Possible unsafe locking scenario:
      
             CPU0
             ----
        lock(&(&txq->lock)->rlock);
        <Interrupt>
          lock(&(&txq->lock)->rlock);
      
      Fixes: ea68f460 ("iwlwifi: pcie: clarify TX queue need_update handling")
      Signed-off-by: default avatarEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      d090f878
    • Liad Kaufman's avatar
      iwlwifi: use dev_printk instead of dev_dbg for debug logs · 7f715626
      Liad Kaufman authored
      When calling IWL_DEBUG_*() dev_dbg() is currently used, and this
      could result in the log being ignored no matter the internal
      loglevel, since dev_dbg() may get turned on or off based on the
      dynamic debug mechanism.
      
      Replace the dev_dbg() with dev_printk() since dynamic printing
      is pointless as we use our own debug level mechanism and there
      is just a single dev_dbg() call in the code.
      Signed-off-by: default avatarLiad Kaufman <liad.kaufman@intel.com>
      [rephrase commit message a bit]
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: default avatarEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      7f715626
    • Emmanuel Grumbach's avatar
      iwlwifi: remove CMD_SYNC · a1022927
      Emmanuel Grumbach authored
      CMD_SYNC is really 0 which is confusing:
      
      if (cmd.flags & CMD_SYNC) is always false.
      Fix this by simply removing its definition.
      Signed-off-by: default avatarEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      a1022927
    • Emmanuel Grumbach's avatar
  2. 11 May, 2014 12 commits
  3. 07 May, 2014 2 commits
  4. 06 May, 2014 22 commits