On 08/25, Rusty Russell wrote: > > Oleg Nesterov <o...@redhat.com> writes: > > On 08/24, Oleg Nesterov wrote: > >> > >> I booted the kernel with the additional patch below, and nothing bad has > >> happened, > > > > Until I tried reboot it once with "locktorture.verbose=true" paramater. > > It didn't boot. > > > > This is because parse_args() just aborts after it hits the error, so other > > arguments at the same initcall level are simply ignored. > > > > Fixed by the patch below, but I simply can't believe nobody hit this (imo) > > bug before. > > > > Why does parse_args() do this?? I simply can't understand why parse_args() > > adds more random and hard-to-understand problems if one of the args ("=true" > > in this particular case) is wrong. > > > > Yes, the patch below is probably oversimplified / incomplete but imho the > > current behaviour is confusing. At least I was greatly confused ;) At least > > (I think) it makes sense to let the user know that the rest of command line > > was probably ignored. > > This is nice, but please save and return the error properly; modules need > this too.
OK, thanks, please see the patch. > I think nobody hit this before because they notice that they screwed up > the commandline and it didn't boot. Yes, I didn't know parse_args() works this way. Besides, I didn't notice the "invalid for parameter" error message on the serial console, so I thought that the kernel panic was somehow caused by the patch I tried to test. Oleg. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/