Stop scheduler on panic

mdf at FreeBSD.org mdf at FreeBSD.org
Fri Dec 2 15:30:28 UTC 2011


On Fri, Dec 2, 2011 at 2:05 AM, Andriy Gapon <avg at freebsd.org> wrote:
> on 02/12/2011 06:36 John Baldwin said the following:
>> Ah, ok (I had thought SCHEDULER_STOPPED was going to always be true when kdb was
>> active).  But I think these two changes should cover critical_exit() ok.
>>
>
> I attempted to start a discussion about this a few times already :-)
> Should we treat kdb context the same as SCHEDULER_STOPPED context (in the
> current definition) ?  That is, skip all locks in the same fashion?
> There are pros and contras.

Does kdb pause all CPUs with an interrupt (NMI or regular interrupt, I
can no longer remember...) when it enters?  If so, then I'd say
whether it enters via sysctl or panic doesn't matter.  It's in a
special environment where nothing else is running, which is what is
needed for proper exploration of the machine (via breakpoint, for
debugging a hang, etc).

Maybe the question is, why wouldn't SCHEDULER_STOPPED be true
regardless of how kdb is entered?

Thanks,
matthew


More information about the freebsd-current mailing list