[PATCH 0/2] add new notifier function ,take3
Andrew Morton
akpm at linux-foundation.org
Sat Apr 12 00:07:51 EDT 2008
On Fri, 11 Apr 2008 16:53:47 +0900 Takenori Nagano <t-nagano at ah.jp.nec.com> wrote:
> Hi,
>
> A big thanks to everybody who read and replied to previous version.
>
> changelog take2 -> take3
>
> - Rebased 2.6.25-rc8-mm1
> - comment updated
> - renamed the notifiner name "tunable_notifier" to "tunable_atomic_notifier"
> - fixed typo
> - move control files debugfs to /sys/kernel
>
> These patches add new notifier function and implement it to panic_notifier_list.
> We used the hardcoded notifier chain so far, but it was not flexible. New
> notifier is very flexible, because user can change a list of order by control files.
>
> Example)
>
> # cd /sys/kernel/notifiers/
> # ls
> panic_notifier_list
> # cd panic_notifier_list/
> # ls
> ipmi_msghandler ipmi_wdog
> # insmod notifier_test.ko
> # ls
> ipmi_msghandler ipmi_wdog notifier_test1 notifier_test2
> # cat */priority
> 200
> 150
> 500
> 1000
> Kernel panic - not syncing: Panic by panic_module.
> __tunable_atomic_notifier_call_chain enter
> notifier_test: notifier_test_panic2() is called.
> notifier_test: notifier_test_panic() is called.
> msg_handler:panic_event was called.
> ipmi_wdog:wdog_panic_handler was called.
>
> .....(reboot)
>
> # cd /sys/kernel/notifiers/panic_notifier_list/
> # ls
> ipmi_msghandler ipmi_wdog notifier_test1 notifier_test2
> # cat */priority
> 200
> 150
> 500
> 1000
> # echo 10000 > ipmi_msghandler/priority
> # echo 5000 > ipmi_wdog/priority
> # echo 3000 > notifier_test1/priority
> # echo 1500 > notifier_test2/priority
> # cat */priority
> 10000
> 5000
> 3000
> 1500
> Kernel panic - not syncing: Panic by panic_module.
> __tunable_atomic_notifier_call_chain enter
> msg_handler:panic_event was called.
> ipmi_wdog:wdog_panic_handler was called.
> notifier_test: notifier_test_panic() is called.
> notifier_test: notifier_test_panic2() is called.
OK. But I don't see anywhere in here the most important piece of
information: why do we need this feature in Linux?
What are the use-cases? What is the value? etc.
Often I can guess (but I like the originator to remove the guesswork). In
this case I'm stumped - I can't see any reason why anyone would want this.
Awaiting enlightenment ;)
Thanks.
More information about the kexec
mailing list