mwifiex: avoid null-pointer-subtraction warning
clang complains about some NULL pointer arithmetic in this driver: drivers/net/wireless/marvell/mwifiex/sta_tx.c:65:59: error: performing pointer subtraction with a null pointer has undefined behavior [-Werror,-Wnull-pointer-subtraction] pad = ((void *)skb->data - (sizeof(*local_tx_pd) + hroom)- ^ drivers/net/wireless/marvell/mwifiex/uap_txrx.c:478:53: error: performing pointer subtraction with a null pointer has undefined behavior [-Werror,-Wnull-pointer-subtraction] pad = ((void *)skb->data - (sizeof(*txpd) + hroom) - NULL) & Rework that expression to do the same thing using a uintptr_t. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Kalle Valo <kvalo@codeaurora.org> Link: https://lore.kernel.org/r/20210927121656.940304-1-arnd@kernel.org
This commit is contained in:
Родитель
151a7c12c4
Коммит
603a1621ca
|
@ -62,8 +62,8 @@ void *mwifiex_process_sta_txpd(struct mwifiex_private *priv,
|
|||
|
||||
pkt_type = mwifiex_is_skb_mgmt_frame(skb) ? PKT_TYPE_MGMT : 0;
|
||||
|
||||
pad = ((void *)skb->data - (sizeof(*local_tx_pd) + hroom)-
|
||||
NULL) & (MWIFIEX_DMA_ALIGN_SZ - 1);
|
||||
pad = ((uintptr_t)skb->data - (sizeof(*local_tx_pd) + hroom)) &
|
||||
(MWIFIEX_DMA_ALIGN_SZ - 1);
|
||||
skb_push(skb, sizeof(*local_tx_pd) + pad);
|
||||
|
||||
local_tx_pd = (struct txpd *) skb->data;
|
||||
|
|
|
@ -475,8 +475,8 @@ void *mwifiex_process_uap_txpd(struct mwifiex_private *priv,
|
|||
|
||||
pkt_type = mwifiex_is_skb_mgmt_frame(skb) ? PKT_TYPE_MGMT : 0;
|
||||
|
||||
pad = ((void *)skb->data - (sizeof(*txpd) + hroom) - NULL) &
|
||||
(MWIFIEX_DMA_ALIGN_SZ - 1);
|
||||
pad = ((uintptr_t)skb->data - (sizeof(*txpd) + hroom)) &
|
||||
(MWIFIEX_DMA_ALIGN_SZ - 1);
|
||||
|
||||
skb_push(skb, sizeof(*txpd) + pad);
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче