@@ -19,8 +19,6 @@
#include <linux/reboot.h>
#include "../leds.h"
-static int panic_heartbeats;
-
struct heartbeat_trig_data {
struct led_classdev *led_cdev;
unsigned int phase;
@@ -39,7 +37,7 @@ static void led_heartbeat_function(struct timer_list *t)
led_cdev = heartbeat_data->led_cdev;
- if (unlikely(panic_heartbeats)) {
+ if (unlikely(in_panic_state())) {
led_set_brightness_nosleep(led_cdev, LED_OFF);
return;
}
@@ -169,28 +167,15 @@ static int heartbeat_reboot_notifier(struct notifier_block *nb,
return NOTIFY_DONE;
}
-static int heartbeat_panic_notifier(struct notifier_block *nb,
- unsigned long code, void *unused)
-{
- panic_heartbeats = 1;
- return NOTIFY_DONE;
-}
-
static struct notifier_block heartbeat_reboot_nb = {
.notifier_call = heartbeat_reboot_notifier,
};
-static struct notifier_block heartbeat_panic_nb = {
- .notifier_call = heartbeat_panic_notifier,
-};
-
static int __init heartbeat_trig_init(void)
{
int rc = led_trigger_register(&heartbeat_led_trigger);
if (!rc) {
- atomic_notifier_chain_register(&panic_notifier_list,
- &heartbeat_panic_nb);
register_reboot_notifier(&heartbeat_reboot_nb);
}
return rc;
@@ -199,8 +184,6 @@ static int __init heartbeat_trig_init(void)
static void __exit heartbeat_trig_exit(void)
{
unregister_reboot_notifier(&heartbeat_reboot_nb);
- atomic_notifier_chain_unregister(&panic_notifier_list,
- &heartbeat_panic_nb);
led_trigger_unregister(&heartbeat_led_trigger);
}
Replace the global variable "panic_heartbeats" with in_panic_state() Signed-off-by: Xiaoming Ni <nixiaoming@huawei.com> --- drivers/leds/trigger/ledtrig-heartbeat.c | 19 +------------------ 1 file changed, 1 insertion(+), 18 deletions(-)