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.

Signed-off-by: Andy Shevchenko <andriy.shevche...@linux.intel.com>
---
 drivers/char/ipmi/ipmi_msghandler.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/drivers/char/ipmi/ipmi_msghandler.c 
b/drivers/char/ipmi/ipmi_msghandler.c
index 737c0b6b24ea..20821194292b 100644
--- a/drivers/char/ipmi/ipmi_msghandler.c
+++ b/drivers/char/ipmi/ipmi_msghandler.c
@@ -3430,9 +3430,7 @@ int ipmi_add_smi(struct module         *owner,
        intf->curr_seq = 0;
        spin_lock_init(&intf->waiting_rcv_msgs_lock);
        INIT_LIST_HEAD(&intf->waiting_rcv_msgs);
-       tasklet_init(&intf->recv_tasklet,
-                    smi_recv_tasklet,
-                    (unsigned long) intf);
+       tasklet_setup(&intf->recv_tasklet, smi_recv_tasklet);
        atomic_set(&intf->watchdog_pretimeouts_to_deliver, 0);
        spin_lock_init(&intf->xmit_msgs_lock);
        INIT_LIST_HEAD(&intf->xmit_msgs);
@@ -4467,10 +4465,10 @@ static void handle_new_recv_msgs(struct ipmi_smi *intf)
        }
 }
 
-static void smi_recv_tasklet(unsigned long val)
+static void smi_recv_tasklet(struct tasklet_struct *t)
 {
+       struct ipmi_smi *intf = from_tasklet(intf, t, recv_tasklet);
        unsigned long flags = 0; /* keep us warning-free. */
-       struct ipmi_smi *intf = (struct ipmi_smi *) val;
        int run_to_completion = intf->run_to_completion;
        struct ipmi_smi_msg *newmsg = NULL;
 
-- 
2.28.0



_______________________________________________
Openipmi-developer mailing list
Openipmi-developer@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openipmi-developer

Reply via email to