bugGNU GRUB - Bugs: bug #44580, Grub is handling kernel boot...

 
 

You are not allowed to post comments on this tracker with your current authentication level.

bug #44580: Grub is handling kernel boot parameters incorrectly when the parameters have quotes and spaces

Submitted by:  prash <prash>
Submitted on:  Thu 19 Mar 2015 05:31:15 PM UTC  
 
Category: BootingSeverity: Major
Priority: 5 - NormalItem Group: Software Error
Status: NonePrivacy: Public
Assigned to: NoneOriginator Name: 
Open/Closed: ClosedRelease: 
Release: 2.02~beta1Reproducibility: Every Time
Planned Release: None

(Jump to the original submission Jump to the original submission)

Fri 12 Jun 2015 07:04:27 AM UTC, comment #7:

OK, I'm closing it then. Feel free to reopen if new data is available.

Andrei Borzenkov <arvidjaar>
Project Member
Thu 19 Mar 2015 07:39:41 PM UTC, comment #6:

I am not a kernel developer, so I did not know if it's acceptable. The kernel developer I was interacting with suggested that it was a bug in grub. Additionally, my dmesg has the line:
dynamic_debug:ddebug_exec_query: query parse failed

Another user trying other boot parameters has attached his dmesg dump to the comment, https://bugzilla.kernel.org/show_bug.cgi?id=67101#c29. I checked, but I did not see "query parse failed" in his dmesg dump.

I assumed I had that message because of the way grub handles quotes. But if you say they are equivalent, I'll take your word for it.

prash <prash>
Thu 19 Mar 2015 07:09:03 PM UTC, comment #5:

These two forms are completely equivalent. In both foo="bar baz" and "foo=bar baz" kernel parses it as

name: foo
value: bar baz

What exactly does not work in the second case?

Andrei Borzenkov <arvidjaar>
Project Member
Thu 19 Mar 2015 06:44:06 PM UTC, comment #4:

Sorry, my comment seems cryptic when I add it to the attached file. Anyhow, when I looked in dmesg, I saw the following:

Command line: BOOT_IMAGE=/vmlinuz-linux-stable-git root=UUID=0e6a9b73-7b06-47ee-93ee-4615ef23f84a rw splash quiet "module.dyndbg=module thermal_sys +fp" "dyndbg=file thermal_core.c +fp; file step_wise.c +fp"

prash <prash>
Thu 19 Mar 2015 06:35:13 PM UTC, comment #3:

Please attach (or paste) grub.cfg with command line that does not work.

Andrei Borzenkov <arvidjaar>
Project Member
Thu 19 Mar 2015 06:26:49 PM UTC, comment #2:

I have tried 2 methods.
1. During bootup, press 'e' and modify the command line manually.
2. Modify grub.cfg to add the desired parameters to the kernel I was testing.

Either way, I get exactly the same results in dmesg.

I did not modify GRUB_CMDLINE_LINUX in /etc/default/grub because I wanted these parameters to take effect only in one specific version of the Linux kernel. I have 2 other versions installed, where I don't want these parameters.

prash <prash>
Thu 19 Mar 2015 06:07:34 PM UTC, comment #1:

How exactly do you pass parameters? Directly on grub command line (linux foo="bar baz")? In grub menu entry editor? Adding them to GRUB_CMDLINE_LINUX in /etc/default/grub?

Andrei Borzenkov <arvidjaar>
Project Member
Thu 19 Mar 2015 05:31:15 PM UTC, original submission:

I was trying to test some bugs in the Linux kernel (Ref.: https://bugzilla.kernel.org/show_bug.cgi?id=92431). The kernel developer asked me to pass various parameters for debugging the module he was changing. In one of the instances, I had to specify the following in the kernel's boot parameters:
module.dyndbg="module thermal_sys +fp" dyndbg="file thermal_core.c +fp; file step_wise.c +fp"

However, Grub transformed that to:
"module.dyndbg=module thermal_sys +fp" "dyndbg=file thermal_core.c +fp; file step_wise.c +fp"

Refer to https://bugzilla.kernel.org/attachment.cgi?id=170911 for my dmesg dump which shows the incorrectly transformed quotations. The dmesg dump also show that some of the quoted parameters were accepted by the kernel, and others were not. However, that is of secondary consequence to grub.

I run Archlinux, with Grub version 2.02.beta2-5. (I have selected beta1 in the form above, because beta2 was not available.)

prash <prash>

 

Attached Files
file #33400:  grub.cfg added by prash (11KiB - application/octet-stream - dmesg reports: Command line: BOOT_IMAGE=/vmlinuz-linux-stable-git root=UUID=0e6a9b73-7b06-47ee-93ee-4615ef23f84a rw splash quiet "module.dyndbg=module thermal_sys +fp" "dyndbg=file thermal_core.c +fp; file step_wise.c +fp")

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by arvidjaar (Posted a comment)
  • -unavailable- added by prash (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follow 2 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Fri 12 Jun 2015 07:04:27 AM UTCarvidjaarOpen/ClosedOpen=>Closed
    Thu 19 Mar 2015 06:42:00 PM UTCprashAttached File-=>Added grub.cfg, #33400

    Back to the top


    Powered by Savane 3.1-cleanup1