Hello Norbert, Am Freitag, den 09.10.2009, 05:49 +0200 schrieb Norbert Preining: > On Do, 08 Okt 2009, Raphael Gradenwitz wrote: > > My /boot/grub/grub.cfg has the same entry like yours but the quotes do > > not survive the boot process, the quotes are removed in /proc/cmdline > > and that results in wrong interpretation by the kernel. > > I'm not sure whether this counts, I mean what you see in /proc/cmdline. > The cmd line arguments there are anyway merged together, I still believe > that the kernel gets the right argument, although the /proc/cmdline > does not show the quotes. And in fact that is right, because the > quotes are not part of the argument.
The *Quotes* are not part of the argument but the *Space* between Windows and 2006 is. And /proc/cmdline is parsed in a way like: for ARG in $(cat /proc/cmdline) do echo "${ARG}"|grep -q "=" && ${ARG%=*}=${ARG##*=} done and as you can see, that would result in acpi_osi=!Windows and 2006 wil be interpreted as a (not understood) alone standing word. There are more such words without a '=' like ro, splash, quiet (etc..) There is no way for the kernel other than "guessing" if the next word is part of the argument and if not. OK, it could check the result with a database of possible values but what if !Windows is a possible value too? And we know that this "guessing" is not part of the comandline parsing process. > > And in fact here on my laptop switching works without any problems. Is the led on the stamina-speed slider burning on your vaio after a reboot? Even if your /proc/cmdline had the argument without quotes the boot before? For me it does *not*. > > So are you sure that these additional quotes are necessary? I am not. I am absolutely sure, at least for the Kernel and the grub-pc version I am using! When booting with grub legacy: :~$ cat /proc/cmdline root=UUID=b4acd5c9-258f-47fc-8a8c-0f497f6f5137 ro splash vga=791 acpi_osi="!Windows 2006" acpi_backlight=vendor and after a boot with grub2: :~$ cat /proc/cmdline root=UUID=b4acd5c9-258f-47fc-8a8c-0f497f6f5137 ro splash vga=791 acpi_osi=!Windows 2006 acpi_backlight=vendor When I boot with grub2 and edit the comandline in the grub shell by hand puting a backslash in front of those quote-signs: acpi_osi=\"!Windows 2006\" than it works. Understand me right please, I have tried a lot, even changing the script /etc/grub.d/10_linux (for testing) and after executing sudo /usr/sbin/grub-mkconfig it resulted in a /boot/grub/grub.cfg like: root=UUID=b4acd5c9-258f-47fc-8a8c-0f497f6f5137 ro splash vga=791 acpi_osi=\"!Windows 2006\" acpi_backlight=vendor and even this I have tried: root=UUID=b4acd5c9-258f-47fc-8a8c-0f497f6f5137 ro splash vga=791 acpi_osi=\\\"!Windows 2006\\\" acpi_backlight=vendor but, no matter what I have done, after a normal boot, the backslashes where all gone and not visible in the grub shell nor in the /boot/grub/grub.cfg. only the alone standing quotes. Raphael -- (Please post and/or answer >if possible< with Reply-to: sony-vaio-z-series@lists.launchpad.net Thanks)
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________ Mailing list: https://launchpad.net/~sony-vaio-z-series Post to : sony-vaio-z-series@lists.launchpad.net Unsubscribe : https://launchpad.net/~sony-vaio-z-series More help : https://help.launchpad.net/ListHelp