qcacld-3.0: Fix 32-bit crash on markings

The offending code did not get the order of operations right.
It was: shift 16, cast 64,shift 16 and should have been:
cast, shift 16, shift 16.

CRs-Fixed: 2000844
Change-Id: I65cf4aaf0c20535070eb63b15d77b8c3c7dcb4e4
Этот коммит содержится в:
Orhan K AKYILDIZ
2017-02-07 14:33:11 -08:00
коммит произвёл snandini
родитель c8c27be649
Коммит 4900e1d357

Просмотреть файл

@@ -395,8 +395,10 @@ htt_rx_in_ord_paddr_get(uint32_t *u32p)
paddr = (qdf_dma_addr_t)HTT_RX_IN_ORD_PADDR_IND_PADDR_GET(*u32p); paddr = (qdf_dma_addr_t)HTT_RX_IN_ORD_PADDR_IND_PADDR_GET(*u32p);
if (sizeof(qdf_dma_addr_t) > 4) { if (sizeof(qdf_dma_addr_t) > 4) {
u32p++; u32p++;
paddr |= ((qdf_dma_addr_t) /* 32 bit architectures dont like <<32 */
(HTT_RX_IN_ORD_PADDR_IND_PADDR_GET(*u32p) << 16) << 16); paddr |= (((qdf_dma_addr_t)
HTT_RX_IN_ORD_PADDR_IND_PADDR_GET(*u32p))
<< 16 << 16);
} }
paddr = htt_rx_paddr_unmark_high_bits(paddr); paddr = htt_rx_paddr_unmark_high_bits(paddr);