APM-EMULATION: apm_get_power_status() should be NULL on init. Signed-off-by: Rodolfo Giometti <giometti@xxxxxxxxxxxx> --- If the function apm_get_info() do like this: static int apm_get_info(char *buf, char **start, off_t fpos, int length) { struct apm_power_info info; char *units; int ret; info.ac_line_status = 0xff; info.battery_status = 0xff; info.battery_flag = 0xff; info.battery_life = -1; info.time = -1; info.units = -1; if (apm_get_power_status) apm_get_power_status(&info); ... we shouldn't set: static void __apm_get_power_status(struct apm_power_info *info) { } void (*apm_get_power_status)(struct apm_power_info *) = __apm_get_power_status; otherwise the check is not needed. Furthermore setting the function to NULL signals that the apm-emulation layer is not already assigned (I found this very useful for my apm-emulation battery_class support).