Messages in this thread |  | | Date | Mon, 3 Feb 2020 18:57:43 -0500 | From | Peter Xu <> | Subject | Re: [PATCH V4] sched/isolation: isolate from handling managed interrupt |
| |
On Mon, Feb 03, 2020 at 11:15:50PM +0000, Thomas Gleixner wrote: > Peter Xu <peterx@redhat.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.
Hi, Thomas,
Just to make sure I understand it right: are you suggesting that we fix up housekeeping_isolcpus_setup() to be able to skip unknown sub parameters?
Thanks,
-- Peter Xu
|  |