Re: [PATCH v3] printk: add halt_delay parameter for printk delay in halt phase

From: Dave Young
Date: Mon Jun 08 2009 - 21:01:30 EST


On Tue, Jun 9, 2009 at 5:39 AM, Andrew Morton<akpm@xxxxxxxxxxxxxxxxxxxx> wrote:
> On Mon, 8 Jun 2009 19:15:01 +0200
> Ingo Molnar <mingo@xxxxxxx> wrote:
>
>> > questions: is it possible for interrupts to be disabled at this
>> > time? If so, can we get an NMI watchdog hit?
>>
>> no, we generally turn off the nmi watchdog during shutdown, disable
>> the lapic and io-apic, etc.
>
> Is x86 the only architecture which implements an NMI watchdog?
>
>> > Is the softlockup detector still running and if so, can it
>> > trigger?
>>
>> in (non-emergency) reboot, last i checked, we stopped all other CPUs
>> first, and then killed the current one. There's no chance for the
>> watchdog thread to run.
>
> OK, but... ÂSee below.
>
>> Anyway ... you seem to be uncomfortable about this patch - should i
>> delay it for now to let it all play out? We are close to the merge
>> window.
>
> I'm OK - I'm just bouncing ideas and questions off you guys, to make sure
> that we've thought this through all the way.
>
> Here's another: why is it a boot option rather than a runtime-tunable?
> A /proc tweakable is generally preferable because it avoids the
> oh-crap-i-forgot-to-edit-grub.conf thing. ÂAnd we could perhaps then
> remove all those system_state tests: userspace sets printk_delay
> immediately prior to running halt/reboot/etc?

Andrew, thanks your comments.
I original intention is to use not boot options but sysfs interface.
Do you perfer proc?
without system_state testing we will have to consider the NMI watchdog
and softlockup issue.

>
> Plus the feature becomes more general - perhaps there are use cases
> where people want to slow down printks, such as: kernel goes oops, data
> scrolls off, serial console/netconsole unavailable. Âpause_on_oops is
> supposed to help here but last time I tried it, it kinda didn't work,
> plus pause_on_oops doesn't solve the data-scrolled-off problem.

Seems make sense.

>
> Thirdly, if we do this as a general /proc/printk_delay thing, perhaps
> it can be consolidated with the existing boot_delay= implementation.
>



--
Regards
dave
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/