Messages in this thread | | | Date | Thu, 17 Jun 2004 14:13:56 +0200 | From | Ingo Molnar <> | Subject | Re: [3/4] [PATCH]Diskdump - yet another crash dump function |
| |
* Takao Indoh <indou.takao@soft.fujitsu.com> wrote:
> int mod_timer(struct timer_list *timer, unsigned long expires) > { > BUG_ON(!timer->function); > > + if (crashdump_mode()) { > + return diskdump_mod_timer(timer, expires); > + }
looks good. Please use the proper coding style:
+ if (crashdump_mode()) + return diskdump_mod_timer(timer, expires);
but there's another possible method (suggested by Alan Cox) that requires no changes to the timer API hotpaths: 'clear' all timer lists upon a crash [once all CPUs have stopped and irqs are disabled] and just let the drivers use the normal timer APIs. Drive timer execution via a polling method.
this basically approximates your polling based implementation but uses the existing kernel timer data structures and timer mechanism so should be robust and compatible. It doesnt rely on any previous state (because all currently pending timers are discarded) so it's as crash-safe as possible.
what do you think?
Ingo - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |