From: Randy Dunlap <randy.dunlap@xxxxxxxxxx> The <arg> parameter in module_param_cb() should be a pointer, i.e., like one of these: union { void *arg; const struct kparam_string *str; const struct kparam_array *arr; }; sparse complains: drivers/char/ipmi/ipmi_watchdog.c:303:1: error: cannot dereference this type drivers/char/ipmi/ipmi_watchdog.c:307:1: error: cannot dereference this type drivers/char/ipmi/ipmi_watchdog.c:311:1: error: cannot dereference this type Signed-off-by: Randy Dunlap <randy.dunlap@xxxxxxxxxx> Cc: Corey Minyard <minyard@xxxxxxx> --- Note: patch is against linux-next, since these lines have changed recently. drivers/char/ipmi/ipmi_watchdog.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) --- linux-next-20100528.orig/drivers/char/ipmi/ipmi_watchdog.c +++ linux-next-20100528/drivers/char/ipmi/ipmi_watchdog.c @@ -300,15 +300,15 @@ MODULE_PARM_DESC(timeout, "Timeout value module_param(pretimeout, timeout, 0644); MODULE_PARM_DESC(pretimeout, "Pretimeout value in seconds."); -module_param_cb(action, ¶m_ops_str, action_op, 0644); +module_param_cb(action, ¶m_ops_str, &action_op, 0644); MODULE_PARM_DESC(action, "Timeout action. One of: " "reset, none, power_cycle, power_off."); -module_param_cb(preaction, ¶m_ops_str, preaction_op, 0644); +module_param_cb(preaction, ¶m_ops_str, &preaction_op, 0644); MODULE_PARM_DESC(preaction, "Pretimeout action. One of: " "pre_none, pre_smi, pre_nmi, pre_int."); -module_param_cb(preop, ¶m_ops_str, preop_op, 0644); +module_param_cb(preop, ¶m_ops_str, &preop_op, 0644); MODULE_PARM_DESC(preop, "Pretimeout driver operation. One of: " "preop_none, preop_panic, preop_give_data."); -- To unsubscribe from this list: send the line "unsubscribe linux-next" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html