svn commit: r213305 - in head/sys: gdb kern sys

Andriy Gapon avg at freebsd.org
Thu Sep 30 17:28:48 UTC 2010


on 30/09/2010 20:18 mdf at FreeBSD.org said the following:
> On Thu, Sep 30, 2010 at 10:05 AM, Andriy Gapon <avg at freebsd.org> wrote:
>> Author: avg
>> Date: Thu Sep 30 17:05:23 2010
>> New Revision: 213305
>> URL: http://svn.freebsd.org/changeset/base/213305
>>
>> Log:
>>  there must be only one SYSINIT with SI_SUB_RUN_SCHEDULER+SI_ORDER_ANY order
>>
>>  SI_SUB_RUN_SCHEDULER+SI_ORDER_ANY should only be used to call
>>  scheduler() function which turns the initial thread into swapper proper
>>  and thus there is no further SYSINIT processing.
> 
> Does this imply that scheduler() shouldn't be called from a sysinit at
> all, and instead a hand-call after processing all the boot-time
> sysinit's would make more sense?  This prevents the bug from
> reoccuring, and also prevents bugs with adding a SYSINIT that runs at
> SI_SUB_RUN_SCHEDULER + 1 time.

I have no firm opinion about this.
What you suggest sounds good to me.
OTOH, both SI_SUB_RUN_SCHEDULER and SI_ORDER_ANY are documented (in sys/kernel.h
though) to be the last order/sub-order.

-- 
Andriy Gapon


More information about the svn-src-head mailing list