On Wed, Apr 18, 2018 at 03:07:15PM +0800, Michael Chang wrote:
> On Tue, Apr 17, 2018 at 06:37:06PM +0200, Daniel Kiper wrote:
> > On Wed, Apr 11, 2018 at 05:17:03PM +0800, Michael Chang wrote:
> > > And this bug report seems relevant ..
> > >
> > > https://savannah.gnu.org/bugs/?49937
> > >
> > > On Wed, Apr 11, 2018 at 04:58:54PM +0800, Michael Chang wrote:
> > > > The command line has been processed by grub shell, then the result is 
> > > > expected
> > > > to be passed to kernel command line as verbatim according to the grub 
> > > > manual
> > > > [1][2].
> > > >
> > > > This patch removes extra escape character added as it helps nothing but 
> > > > only
> > > > creates trouble as you want them to be literal. Besides the surrounding
> > > > double-quotes added is kept as it used to protect space.
> >
> > CC-ing Vladmir.
> >
> > Hmmm... Have you tested this patch on all platforms supported by GRUB2?
>
> AFAICS, it affects boot protocols of which grub supports in commands like
> linux, multiboot, xen_hypervisor and so on. Non of them will intepret escape
> sequence and are pretty straightforward in composition -- In general, use 
> space
> to delimit options and quote the options by double quotes once they contain 
> any
> space.
>
> > I understand that current behavior is not accepted on some but I have
> > a feeling that somebody make it work in that way due to some reason.
> > Sadly I cannot find anything about that in git log. So, I have to think
> > how to cope with that. Or...
>
> As a side note, we had a down stream bug report that udev generates symlink
> names containing '\' character, and with the current grub command processing
> it's never possible to use those symlinks as kernel command line option, as 
> the
> character is either stripped or doubled.

I understand your problem but I am afraid about compatibility. I would
agree if you change the behavior here and introduce a shell variable to
disable that change. If nobody will complain for some time then we can
drop that variable a leave new desired behavior. Does it make sense?

And I have a question about space (what about tab?): why it is quoted
if, AIUI, kernel command line should not be processed at this point?
Should not it be created earlier properly? I mean with required quotes.

Hmmm... What about modules command lines?

Daniel

_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to