[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87a75zz2hl.fsf@nanos.tec.linutronix.de>
Date: Mon, 03 Feb 2020 23:15:50 +0000
From: Thomas Gleixner <tglx@...utronix.de>
To: Peter Xu <peterx@...hat.com>
Cc: Ming Lei <ming.lei@...hat.com>, linux-kernel@...r.kernel.org,
Ingo Molnar <mingo@...hat.com>,
Peter Zijlstra <peterz@...radead.org>,
Juri Lelli <juri.lelli@...hat.com>,
Luiz Capitulino <lcapitulino@...hat.com>
Subject: Re: [PATCH V4] sched/isolation: isolate from handling managed interrupt
Peter Xu <peterx@...hat.com> writes:
> The new "managed_irq" works for us, thanks for both of your work!
>
> However I just noticed that this new sub-parameter might break users
> if applied incorrectly to old kernels, because iiuc "isolcpus="
> parameter will not apply at all when there's unknown sub-parameters:
>
> static int __init housekeeping_isolcpus_setup(char *str)
> {
> unsigned int flags = 0;
>
> while (isalpha(*str)) {
> ...
> pr_warn("isolcpus: Error, unknown flag\n");
> return 0;
> }
> ...
> }
>
> Then the same kernel parameter will break isolcpus= if the user
> reboots and switches to an older kernel.
>
> A solution to this could be that we introduce an isolated parameter
> for "managed_irq", then on the old kernels only the new parameter will
> be ignored rather than the whole "isolcpus=" parameter, so nothing
> will break.
>
> I'm not sure whether it's already too late for this, or if there's any
> better alternative. Just raise this question up to see whether we
> still have chance to fix this up.
No, really. The basic guarantee is that your new kernel is going to work
fine with the previous command line, but making a guarantee that new
command line options still work on an old kernel are just creating a
horrible mess. So if that command line interface was not designed to
handle unknown arguments in the first place, you better fix that.
Thanks,
tglx
Powered by blists - more mailing lists