Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kernel fault -current of 23/24 Apr 2015



On Sat, Apr 25, 2015 at 03:41:46PM +0800, Paul Goyette wrote:
> A quick scan shows that there are about 125-130 sources files which 
> attempt to register with sysmon_{pswitch,wdog,envsys}_register.

Since this is only about early access to the register functions, can't we
just add a static boolean for each of sysmon_envsys_init, sysmon_wdog_init
and sysmon_power_init, and change the functions to just ignore multiple
calls?

Something like:

void
sysmon_wdog_init(void)
{
	static bool passed = false;

	if (passed)
		return;
	passed = true;

        mutex_init(&sysmon_wdog_list_mtx, MUTEX_DEFAULT, IPL_NONE);
        mutex_init(&sysmon_wdog_mtx, MUTEX_DEFAULT, IPL_SOFTCLOCK);
...


And then add sysmon_wdog_init() calls to the *_register() functions?

Martin


Home | Main Index | Thread Index | Old Index