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 7057f35cb2e76703c9f8810b9bbdc10f0a2bee9f..0a5490c46d2e7c81a392782cdfd7ceea4df9055d 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] =