Bug 680784

Summary: vga= values not accepted correctly by kernel/grub kernel line
Product: [Fedora] Fedora Reporter: George R. Goffe <grgoffe>
Component: grubAssignee: Peter Jones <pjones>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 14CC: gansalmon, itamar, jfeeney, jonathan, kernel-maint, lkundrak, madhu.chinakonda, pjones
Target Milestone: ---   
Target Release: ---   
Hardware: i686   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-08-29 17:58:49 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Attachments:
Description Flags
/boot/grub/grub.conf in current use. none

Description George R. Goffe 2011-02-27 18:33:24 UTC
Description of problem:

vga=319 and other values are not accepted correctly 

Version-Release number of selected component (if applicable):

kernel = 2.6.35.11-83.fc14.i686 (current), also fails on other kernels
grub = grub-0.97-66.fc14.i686

How reproducible:

Always

Steps to Reproduce:
1.add vga=317/8/9...
2.somehow these numbers are translated to 31d/e/f which is rejected as invalid
3.
  
Actual results:

see description

Expected results:



Additional info:

Attachment is current grub.conf. I used to have vga=xxx with the values 317/8/9 but they are not getting translated correctly. 317 is translated to 13d, 318 is translated to 13e, and 319 is translated to 13f. Others fail as well but I did NOT test all of them.

The problem exists for these other kernels as well:

title Fedora (2.6.35.11-83.fc14.i686)
title Fedora (2.6.35.10-74.fc14.i686)
title Fedora (2.6.35.10-72.fc14.i686)

Comment 1 George R. Goffe 2011-02-27 18:37:14 UTC
Created attachment 481266 [details]
/boot/grub/grub.conf in current use.

Somehow this attachment process failed when I created this bug. Sigh...

A bug or UFU? :-)

George...

Comment 2 Chuck Ebbert 2011-02-28 19:04:41 UTC
Your attachment is using vga=31a

Comment 3 George R. Goffe 2011-02-28 23:44:19 UTC
Chuck,

This seems to fail as well.

Do you need me to do something?

Regards,

George...

Comment 4 George R. Goffe 2011-03-11 14:45:16 UTC
Howdy,

Is there any status for this bug? 

The problem still exists.

Now, any specification of vga= in the kernel line causes the problem and I get a prompt for correct values even though correct values ARE specified. Just a few minutes ago, I rebooted my system. Here are the grub kernel lines. The code chokes on 318 and gives me a prompt to respecify. When I enter 318, that is accepted and booting continues.

George...

title Fedora (2.6.35.11-83.fc14.i686)
   root (hd0,0)
   kernel /vmlinuz-2.6.35.11-83.fc14.i686 ro root=/dev/sda2 rd_NO_LUKS rd_NO_LVM rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us init=/sbin/bootchartd vga=318 nomodeset drm.debug=0x04
   initrd /initramfs-2.6.35.11-83.fc14.i686.img

Comment 5 Chuck Ebbert 2011-03-12 00:34:20 UTC
Looking closer at this, I don't think 318 is a valid mode unless maybe you meant 0x318, which would be decimal 794 (1280x1024, 16-bit color.)

Comment 6 George R. Goffe 2011-03-13 02:21:15 UTC
Chuck,

When I boot, I get a complaint about 13f and then the prompt, press enter to get a list... 318 is there and I type in 318 which appears to be accepted and the boot continues.

Other ranges of 31x produce ranges of 13x, all of which are rejected but when typed in, most are accepted and the boot continues.

George...

Comment 7 Chuck Ebbert 2011-03-13 17:57:09 UTC
I think what is happening is that the kernel is assuming hexadecimal for vga modes typed at the prompt, and decimal when they're on the command line. Either "vga=0x318" or "vga=794" should work on the command line, and yield 1280x1024x16.

"It's not a bug it's a feature."

Comment 8 George R. Goffe 2011-03-17 03:17:18 UTC
Chuck,

Hmmmm... A feature?

So, how does one deal with this feature? Is there doc for the feature? Is there a standard for data entered into the kernel? I have set some parameters with a 0x0040 for example (drm.debug=0x04). Shouldn't there be an error message if a person enters the data incorrectly? One that is meaningful? 

George...
(confused in the woods).

Comment 9 George R. Goffe 2011-03-27 16:37:23 UTC
Chuck,

Is there any status on this bug?

The problem STILL exists.

Is there doc to support this "feature"?

Regards,

George...

Comment 10 Matthew Garrett 2011-08-29 17:58:49 UTC
This behaviour can't be changed as existing configuration depends upon it. If you want to pass a value in hex, use vga=0x318. If you want to pass it in decimal, use vga=794. 318 is only meaningful in hex, but looks like a decimal value, so the kernel assumes you've passed a decimal value. This is, as far as I can tell, how grub has always worked. It's also certainly not an issue with the kernel, which never even parses vga= itsel.

Comment 11 George R. Goffe 2011-08-30 09:10:30 UTC
Hi,

Thanks for your response.

I was fooled by the appearance of the values in the menu. There is no stipulation that values expected ARE hex. 

I'm a little confused by what you have written though. First you say the kernel assumes... then you say the kernel never even parses vga= values, I presume you mean values.

My point, I think, is that the menu is misleading. Values chosen from the menu should also be acceptable in the kernel line OR some text making the distinction should be made.

George...