diff options
| author | Emmanuel Grumbach <emmanuel.grumbach@intel.com> | 2008-07-18 13:53:09 +0800 | 
|---|---|---|
| committer | John W. Linville <linville@tuxdriver.com> | 2008-08-04 15:09:09 -0400 | 
| commit | 4aa41f12aa4f08a10b0b07ed334faa3638ba8e9c (patch) | |
| tree | 06ae60c3944a0520ab5994b4ba5dfa8d4f5a4200 | |
| parent | c785d1d5018b93878a9280b0c04df96682cc6eff (diff) | |
iwlwifi: bug fix in AGG flow - cast const to ULL
This patch fixes a bug in AGG flow:
u64 bitmap = 0;
bitmap |= 1 << 32 results to be 0xffffffff80000000.
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
| -rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-4965.c | 6 | ||||
| -rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-5000.c | 6 | ||||
| -rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-tx.c | 2 | 
3 files changed, 7 insertions, 7 deletions
| diff --git a/drivers/net/wireless/iwlwifi/iwl-4965.c b/drivers/net/wireless/iwlwifi/iwl-4965.c index c0ba28fa6724..f356f4f0944b 100644 --- a/drivers/net/wireless/iwlwifi/iwl-4965.c +++ b/drivers/net/wireless/iwlwifi/iwl-4965.c @@ -2130,9 +2130,9 @@ static int iwl4965_tx_status_reply_tx(struct iwl_priv *priv,  				bitmap = bitmap << sh;  				sh = 0;  			} -			bitmap |= (1 << sh); -			IWL_DEBUG_TX_REPLY("start=%d bitmap=0x%x\n", -					   start, (u32)(bitmap & 0xFFFFFFFF)); +			bitmap |= 1ULL << sh; +			IWL_DEBUG_TX_REPLY("start=%d bitmap=0x%llx\n", +					   start, (unsigned long long)bitmap);  		}  		agg->bitmap = bitmap; diff --git a/drivers/net/wireless/iwlwifi/iwl-5000.c b/drivers/net/wireless/iwlwifi/iwl-5000.c index f91c54b5ff53..076d3560302b 100644 --- a/drivers/net/wireless/iwlwifi/iwl-5000.c +++ b/drivers/net/wireless/iwlwifi/iwl-5000.c @@ -1228,9 +1228,9 @@ static int iwl5000_tx_status_reply_tx(struct iwl_priv *priv,  				bitmap = bitmap << sh;  				sh = 0;  			} -			bitmap |= (1 << sh); -			IWL_DEBUG_TX_REPLY("start=%d bitmap=0x%x\n", -					   start, (u32)(bitmap & 0xFFFFFFFF)); +			bitmap |= 1ULL << sh; +			IWL_DEBUG_TX_REPLY("start=%d bitmap=0x%llx\n", +					   start, (unsigned long long)bitmap);  		}  		agg->bitmap = bitmap; diff --git a/drivers/net/wireless/iwlwifi/iwl-tx.c b/drivers/net/wireless/iwlwifi/iwl-tx.c index 0182e4da8e35..39f19ebee973 100644 --- a/drivers/net/wireless/iwlwifi/iwl-tx.c +++ b/drivers/net/wireless/iwlwifi/iwl-tx.c @@ -1391,7 +1391,7 @@ static int iwl_tx_status_reply_compressed_ba(struct iwl_priv *priv,  	/* For each frame attempted in aggregation,  	 * update driver's record of tx frame's status. */  	for (i = 0; i < agg->frame_count ; i++) { -		ack = bitmap & (1 << i); +		ack = bitmap & (1ULL << i);  		successes += !!ack;  		IWL_DEBUG_TX_REPLY("%s ON i=%d idx=%d raw=%d\n",  			ack? "ACK":"NACK", i, (agg->start_idx + i) & 0xff, | 
