Re: [patch] add kdump_after_notifier

Vivek Goyal
2007-08-14T13:25:10Z

On Tue, Aug 14, 2007 at 10:37:10AM +0200, Bernhard Walle wrote:
> * Takenori Nagano <t-nagano@ah.jp.nec.com> [2007-08-14 10:34]:
> > Vivek Goyal wrote:
> > > On Fri, Aug 03, 2007 at 02:05:47PM +1000, Keith Owens wrote:
> > >
> > >
> > > To sum up, couple of options come to mind.
> > >
> > > - Register all the RAS tools on die notifier and panic
> > > notifier lists with fairly high priority. Export list
> > > of RAS tools to user space and allow users to decide the
> > > order of execution and priority of RAS tools.
> > >
> > > - Create a separate RAS tool notifier list (ras_tool_notifer_list).
> > > All the RAS tools register on this list. This list gets priority
> > > over die or panic notifier list. User decides the oder of execution
> > > of RAS tools.
> > >
> > > Here assumption is that above list will not be exported to modules.
> > > All the RAS tools will be in kernel and they always get a priority
> > > to inspect an event.
> > >
> > > What do others think?
> >
> > Very good idea. But there is a problem how to give default priority to RAS tools.
> >
> > How about priority changeable notifier_list? User can change list order
> > dynamically if they want. Of course, we have to give highest priority to kdump
> > by default. It is very useful for users who want to use some RAS tools.
>
> I think that was the idea of the first “-” (“export list of RAS tools
> to user space”).
>

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.
- 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.

Any thoughts?

Thanks
Vivek

>
> Thanks,
> Bernhard