lkml.org 
[lkml]   [2020]   [Feb]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 4.4 045/100] iwlegacy: Fix -Wcast-function-type
    Date
    From: Phong Tran <tranmanphong@gmail.com>

    [ Upstream commit da5e57e8a6a3e69dac2937ba63fa86355628fbb2 ]

    correct usage prototype of callback in tasklet_init().
    Report by https://github.com/KSPP/linux/issues/20

    Signed-off-by: Phong Tran <tranmanphong@gmail.com>
    Reviewed-by: Kees Cook <keescook@chromium.org>
    Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/net/wireless/iwlegacy/3945-mac.c | 5 +++--
    drivers/net/wireless/iwlegacy/4965-mac.c | 5 +++--
    2 files changed, 6 insertions(+), 4 deletions(-)

    diff --git a/drivers/net/wireless/iwlegacy/3945-mac.c b/drivers/net/wireless/iwlegacy/3945-mac.c
    index af1b3e6839fa6..775f5e7791d48 100644
    --- a/drivers/net/wireless/iwlegacy/3945-mac.c
    +++ b/drivers/net/wireless/iwlegacy/3945-mac.c
    @@ -1399,8 +1399,9 @@ il3945_dump_nic_error_log(struct il_priv *il)
    }

    static void
    -il3945_irq_tasklet(struct il_priv *il)
    +il3945_irq_tasklet(unsigned long data)
    {
    + struct il_priv *il = (struct il_priv *)data;
    u32 inta, handled = 0;
    u32 inta_fh;
    unsigned long flags;
    @@ -3432,7 +3433,7 @@ il3945_setup_deferred_work(struct il_priv *il)
    setup_timer(&il->watchdog, il_bg_watchdog, (unsigned long)il);

    tasklet_init(&il->irq_tasklet,
    - (void (*)(unsigned long))il3945_irq_tasklet,
    + il3945_irq_tasklet,
    (unsigned long)il);
    }

    diff --git a/drivers/net/wireless/iwlegacy/4965-mac.c b/drivers/net/wireless/iwlegacy/4965-mac.c
    index 04b0349a6ad9f..b1925bdb11718 100644
    --- a/drivers/net/wireless/iwlegacy/4965-mac.c
    +++ b/drivers/net/wireless/iwlegacy/4965-mac.c
    @@ -4361,8 +4361,9 @@ il4965_synchronize_irq(struct il_priv *il)
    }

    static void
    -il4965_irq_tasklet(struct il_priv *il)
    +il4965_irq_tasklet(unsigned long data)
    {
    + struct il_priv *il = (struct il_priv *)data;
    u32 inta, handled = 0;
    u32 inta_fh;
    unsigned long flags;
    @@ -6257,7 +6258,7 @@ il4965_setup_deferred_work(struct il_priv *il)
    setup_timer(&il->watchdog, il_bg_watchdog, (unsigned long)il);

    tasklet_init(&il->irq_tasklet,
    - (void (*)(unsigned long))il4965_irq_tasklet,
    + il4965_irq_tasklet,
    (unsigned long)il);
    }

    --
    2.20.1
    \
     
     \ /
      Last update: 2020-02-14 17:30    [W:4.319 / U:0.260 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site