Re: [patch] add kdump_after_notifier

Vivek Goyal
2007-08-17T10:56:43Z

On Thu, Aug 16, 2007 at 06:26:35PM +0900, Takenori Nagano wrote:
> Vivek Goyal wrote:
> > So for the time being I think we can put RAS tools on die notifier list
> > and if it runs into issues we can always think of creating a separate list.
> >
> > Few things come to mind.
> >
> > - Why there is a separate panic_notifier_list? Can't it be merged with
> > die_chain? die_val already got one of the event type as PANIC. If there
> > are no specific reasons then we should merge the two lists. Registering
> > RAS tools on a single list is easier.
>
> I think it is difficult, because die_chain is defined by each architecture.
>

I think die_chain is arch independent definition (kernel/die_notifier.c)?
But anyway, to begin with it can be done only for panic_notifier.

> > - Modify Kdump to register on die_chain list.
> > - Modify Kdb to register on die_chain list.
> > - Export all the registered members of die_chain through sysfs along with
> > their priorities. Priorities should be modifiable. Most likely one
> > shall have to introduce additional field in struct notifier_block. This
> > field will be a string as an identifier of the user registerd. e.g
> > "Kdump", "Kdb" etc.
> >
> > Now user will be able to view all the die_chain users through sysfs and
> > be able to modify the order in which these should run by modifying their
> > priority. Hence all the RAS tools can co-exist.
>
> This is my image of your proposal.
>
> - Print current order
>
> # cat /sys/class/misc/debug/panic_notifier_list
> priority name
> 1 IPMI
> 2 watchdog
> 3 Kdb
> 4 Kdump
>

I think Bernhard's suggestion looks better here. I noticed that
/sys/kernel/debug is already present. So how about following.

/sys/kernel/debug/kdump/priority
/sys/kernel/debug/kdb/priority
/sys/kernel/debug/IPMI/priority

I think at some point of time we shall have to create another file say
description.

/sys/kernel/debug/IPMI/description

Which can tell what does this tool do? Other a user might not have any
clue how to prioritize various things.

Thanks
Vivek