[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <87tw7ph3l6.fsf@concordia.ellerman.id.au>
Date: Mon, 20 Feb 2017 15:46:13 +1100
From: Michael Ellerman <mpe@...erman.id.au>
To: Pan Xinhui <xinhui@...ux.vnet.ibm.com>,
"Guilherme G. Piccoli" <gpiccoli@...ux.vnet.ibm.com>,
Pan Xinhui <xinhui.pan@...ux.vnet.ibm.com>,
linux-kernel@...r.kernel.org, linuxppc-dev@...ts.ozlabs.org
Cc: benh@...nel.crashing.org, paulus@...ba.org, npiggin@...il.com
Subject: Re: [PATCH] powerpc/xmon: Fix an unexpected xmon onoff state change
Pan Xinhui <xinhui@...ux.vnet.ibm.com> writes:
> 在 2017/2/17 14:05, Michael Ellerman 写道:
>> Pan Xinhui <xinhui@...ux.vnet.ibm.com> writes:
>>> diff --git a/arch/powerpc/xmon/xmon.c b/arch/powerpc/xmon/xmon.c
>>> index 9c0e17c..f6e5c3d 100644
>>> --- a/arch/powerpc/xmon/xmon.c
>>> +++ b/arch/powerpc/xmon/xmon.c
>>> @@ -76,6 +76,7 @@ static int xmon_gate;
>>> #endif /* CONFIG_SMP */
>>>
>>> static unsigned long in_xmon __read_mostly = 0;
>>> +static int xmon_off = !IS_ENABLED(CONFIG_XMON_DEFAULT);
>>
>> I think the logic would probably clearer if we invert this to become
>> xmon_on.
>>
> yep, make sense.
>
>>> @@ -3266,16 +3269,16 @@ static int __init setup_xmon_sysrq(void)
>>> __initcall(setup_xmon_sysrq);
>>> #endif /* CONFIG_MAGIC_SYSRQ */
>>>
>>> -static int __initdata xmon_early, xmon_off;
>>> +static int __initdata xmon_early;
>>>
>>> static int __init early_parse_xmon(char *p)
>>> {
>>> if (!p || strncmp(p, "early", 5) == 0) {
>>> /* just "xmon" is equivalent to "xmon=early" */
>>> - xmon_init(1);
>>> xmon_early = 1;
>>> + xmon_off = 0;
>>> } else if (strncmp(p, "on", 2) == 0)
>>> - xmon_init(1);
>>> + xmon_off = 0;
>>
>> You've just changed the timing of when xmon gets enabled for the above
>> two cases, from here which is called very early, to xmon_setup() which
>> is called much later in boot.
>>
>> That effectively disables xmon for most of the boot, which we do not
>> want to do.
>>
> Although it is not often that kernel got stucked during boot.
I hope you're joking! :)
cheers
Powered by blists - more mailing lists