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.