staging: r8188eu: Fix cast between incompatible function type
PATCH 1/1 staging: r8188eu: Fix cast between incompatible function type
Fix sparse warnings of casts between incompatible function types from ‘void (*)(void *)’ to ‘void (*)(long unsigned int)’ [-Wcast-function-type].
Signed-off-by Fabio M. De Francesco <[email protected]>
--- drivers/staging/r8188eu/hal/rtl8188eu_recv.c | 2 +- drivers/staging/r8188eu/hal/rtl8188eu_xmit.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
drivers/staging/r8188eu/hal/rtl8188eu_recv.c +1 -1
@@ -38,7 +38,7 @@ int rtl8188eu_init_recv_priv(struct adapter *padapter)struct recv_buf *precvbuf;tasklet_init (&precvpriv->recv_tasklet, - (void (*)(unsigned long ))rtl8188eu_recv_tasklet, + (void *)rtl8188eu_recv_tasklet, (unsigned long )padapter);/* init recv_buf */
drivers/staging/r8188eu/hal/rtl8188eu_xmit.c +1 -1
@@ -14,7 +14,7 @@ s32 rtl8188eu_init_xmit_priv(struct adapter *adapt)struct xmit_priv *pxmitpriv = &adapt->xmitpriv;tasklet_init (&pxmitpriv->xmit_tasklet, - (void (*)(unsigned long ))rtl8188eu_xmit_tasklet, + (void *)rtl8188eu_xmit_tasklet, (unsigned long )adapt);return _SUCCESS; }
Signature · 1 line
2.32.0
Quoted 15 lines · Fabio M. De Francesco
Fix sparse warnings of casts between incompatible function types from ‘void (*)(void *)’ to ‘void (*)(long unsigned int)’ [-Wcast-function-type].
Signed-off-by Fabio M. De Francesco <[email protected]>--- drivers/staging/r8188eu/hal/rtl8188eu_recv.c | 2 +- drivers/staging/r8188eu/hal/rtl8188eu_xmit.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)drivers/staging/r8188eu/hal/rtl8188eu_recv.c +0
-0
drivers/staging/r8188eu/hal/rtl8188eu_recv.c int rtl8188eu_init_recv_priv(struct adapter *padapter) · line 41
Quoted 5 lines
drivers/staging/r8188eu/hal/rtl8188eu_recv.c +1
-1@@ -38,7 +38,7 @@ int rtl8188eu_init_recv_priv(struct adapter *padapter)struct recv_buf *precvbuf; tasklet_init(&precvpriv->recv_tasklet, - (void(*)(unsigned long))rtl8188eu_recv_tasklet, + (void *)rtl8188eu_recv_tasklet,
The correct fix is to change rtl8188eu_recv_tasklet to take an unsigned long instead of a pointer. Then you can remove the casting entirely.
The rule here is that you should try avoid casting things to a void pointer.
regards,
dan carpenter