Re: [PATCH 10/16] wireless: intersil: convert tasklets to use new tasklet_setup() API

From: Lee Jones
Date: Wed Sep 16 2020 - 13:49:49 EST


On Mon, 17 Aug 2020, Allen Pais wrote:

> From: Allen Pais <allen.lkml@xxxxxxxxx>
>
> In preparation for unconditionally passing the
> struct tasklet_struct pointer to all tasklet
> callbacks, switch to using the new tasklet_setup()
> and from_tasklet() to pass the tasklet pointer explicitly
> and remove .data field.
>
> Signed-off-by: Romain Perier <romain.perier@xxxxxxxxx>
> Signed-off-by: Allen Pais <allen.lkml@xxxxxxxxx>
> ---
> .../net/wireless/intersil/hostap/hostap_hw.c | 18 +++++++++---------
> drivers/net/wireless/intersil/orinoco/main.c | 7 +++----
> drivers/net/wireless/intersil/p54/p54pci.c | 8 ++++----
> 3 files changed, 16 insertions(+), 17 deletions(-)

This patch seems to cause several warnings along the lines of:

drivers/net/wireless/intersil/hostap/hostap_hw.c: In function ‘prism2_init_local_data’:
drivers/net/wireless/intersil/hostap/hostap_hw.c:3185:48: warning: cast between incompatible function types from ‘void (*)(struct tasklet_struct *)’ to ‘void (*)(long unsigned int)’ [-Wcast-function-type]
3185 | do { memset((q), 0, sizeof(*(q))); (q)->func = (void(*)(unsigned long))(f); } | ^
drivers/net/wireless/intersil/hostap/hostap_hw.c:3187:2: note: in expansion of macro ‘HOSTAP_TASKLET_INIT’
3187 | HOSTAP_TASKLET_INIT(&local->bap_tasklet, hostap_bap_tasklet,
| ^~~~~~~~~~~~~~~~~~~
drivers/net/wireless/intersil/hostap/hostap_hw.c:3185:48: warning: cast between incompatible function types from ‘void (*)(struct tasklet_struct *)’ to ‘void (*)(long unsigned int)’ [-Wcast-function-type]

--
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog