iwlwifi: mvm: fix possible division by zero
authorSara Sharon <sara.sharon@intel.com>
Wed, 4 May 2016 11:22:10 +0000 (14:22 +0300)
committerLuca Coelho <luciano.coelho@intel.com>
Tue, 5 Jul 2016 21:33:06 +0000 (00:33 +0300)
Theoretically we may get only one IRQ from OS, in which
case we will have only 1 queue even in MSIx mode.
This will cause division by zero in the indirection table
calculation.
We do not need send the command in that case, as there is
only one queue so all RX traffic will be directed to it
anyway. Bail out early if there is only one queue.

Signed-off-by: Sara Sharon <sara.sharon@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
drivers/net/wireless/intel/iwlwifi/mvm/fw.c

index 7057f35..0a5490c 100644 (file)
@@ -122,6 +122,9 @@ static int iwl_send_rss_cfg_cmd(struct iwl_mvm *mvm)
                             IWL_RSS_HASH_TYPE_IPV6_PAYLOAD,
        };
 
+       if (mvm->trans->num_rx_queues == 1)
+               return 0;
+
        /* Do not direct RSS traffic to Q 0 which is our fallback queue */
        for (i = 0; i < ARRAY_SIZE(cmd.indirection_table); i++)
                cmd.indirection_table[i] =