View previous topic :: View next topic |
Author |
Message |
smileaf n00b
Joined: 16 Mar 2005 Posts: 14 Location: USA
|
Posted: Sat Oct 19, 2013 3:04 am Post subject: Issues after Grub2 upgrade |
|
|
First off my system boots !
However after I select the menu option in grub it says: Loading [kernel image name here]..
Then a few seconds later X loads
So whats the problem? I have No output! nothing from the kernel loading(don't overly care tho) Nothing from the initscripts (This is quite useful and thus important to me) But the real problem I have is.. if X for any reason fails to load I'm completely screwed! I don't get any terminal login, beyond X I only get a black screen.
Is this a resolution problem? grub problem? did the initscripts/boot environment change and i just didn't notice? what am I missing
I'm using all defaults from /etc/default/grub no changes to /etc/grub.d/* no custom anything
no framebuffer, I do use nvidia-drivers. I'm on an amd64. _________________ This has been leafed. |
|
Back to top |
|
|
mv Watchman
Joined: 20 Apr 2005 Posts: 6747
|
Posted: Sat Oct 19, 2013 4:35 pm Post subject: |
|
|
Just to be sure: From your comments about init-scripts, I suppose that you are using openrc!?
What are your grub2 USE-Flags Code: | I='<version>: <use>\n' eix --format '<installedversions:I>' -e grub |
Please post your grub.cfg up to (and including) the first menuentry section. |
|
Back to top |
|
|
smileaf n00b
Joined: 16 Mar 2005 Posts: 14 Location: USA
|
Posted: Sun Oct 20, 2013 2:48 am Post subject: |
|
|
Yes I am using openrc.
Code: | USE="multislot nls sdl truetype -custom-cflags -debug -device-mapper -doc -efiemu (-libzfs) -mount -static {-test}" GRUB_PLATFORMS="pc -coreboot -efi-32 -efi-64 -emu -ieee1275 -multiboot -qemu -qemu-mips -yeeloong" |
grub.cfg
Code: | #
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub2-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#
### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
load_env
fi
if [ "${next_entry}" ] ; then
set default="${next_entry}"
set next_entry=
save_env next_entry
set boot_once=true
else
set default="0"
fi
if [ x"${feature_menuentry_id}" = xy ]; then
menuentry_id_option="--id"
else
menuentry_id_option=""
fi
export menuentry_id_option
if [ "${prev_saved_entry}" ]; then
set saved_entry="${prev_saved_entry}"
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi
function savedefault {
if [ -z "${boot_once}" ]; then
saved_entry="${chosen}"
save_env saved_entry
fi
}
function load_video {
if [ x$feature_all_video_module = xy ]; then
insmod all_video
else
insmod efi_gop
insmod efi_uga
insmod ieee1275_fb
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
fi
}
if [ x$feature_default_font_path = xy ] ; then
font=unicode
else
insmod part_msdos
insmod ext2
set root='hd1,msdos2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos2 --hint-efi=hd1,msdos2 --hint-baremetal=ahci1,msdos2 --hint='hd1,msdos2' 8c755e2a-46dd-46dc-87a4-a9162e4d23c7
else
search --no-floppy --fs-uuid --set=root 8c755e2a-46dd-46dc-87a4-a9162e4d23c7
fi
font="/usr/share/grub/unicode.pf2"
fi
if loadfont $font ; then
set gfxmode=1024x768
load_video
insmod gfxterm
set locale_dir=$prefix/locale
set lang=
insmod gettext
fi
terminal_output gfxterm
insmod part_msdos
insmod ext2
set root='hd1,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos1 --hint-efi=hd1,msdos1 --hint-baremetal=ahci1,msdos1 --hint='hd1,msdos1' 1ae25a34-cce1-4702-b08b-3d32b1d97610
else
search --no-floppy --fs-uuid --set=root 1ae25a34-cce1-4702-b08b-3d32b1d97610
fi
insmod jpeg
background_image -m stretch /grub/background.jpg
if sleep --interruptible 0 ; then
set timeout=10
fi
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/10_linux ###
menuentry 'Gentoo GNU/Linux' --class gentoo --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-8c755e2a-46dd-46dc-87a4-a9162e4d23c7' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
set root='hd1,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos1 --hint-efi=hd1,msdos1 --hint-baremetal=ahci1,msdos1 --hint='hd1,msdos1' 1ae25a34-cce1-4702-b08b-3d32b1d97610
else
search --no-floppy --fs-uuid --set=root 1ae25a34-cce1-4702-b08b-3d32b1d97610
fi
echo 'Loading Linux 3.10.7-gentoo-r1 ...'
linux /vmlinuz-3.10.7-gentoo-r1 root=/dev/sdb2 ro
} |
_________________ This has been leafed. |
|
Back to top |
|
|
mv Watchman
Joined: 20 Apr 2005 Posts: 6747
|
Posted: Sun Oct 20, 2013 6:03 am Post subject: |
|
|
Try first to set a different value for gfxpayload, e.g. gfxpayload='1280x1024x32' (or whatever you "native" resolution is).
The next thing I would try is (in addition) to remove the call of load_video in the boot section.
Next thing you can try is to remove "insmode jpeg" and "background_image...".
What certainly should give you a visible screen is if in addition to both of the above you remove the call (or content) of load_video, "insmod gfxterm" (and perhaps in addition load_font).
Of course, if you do all this you have a text-only grub screen, so you can try step by step what you can still use without destroying the boot screen.
(I never compiled grub with "truetype" support, so I had never run grub (succesfully) with "insmod gfxterm" and thus had no reason for load_video, so I cannot help with more experience). |
|
Back to top |
|
|
smileaf n00b
Joined: 16 Mar 2005 Posts: 14 Location: USA
|
Posted: Sun Oct 20, 2013 8:32 pm Post subject: |
|
|
Ok so removing what you mentioned worked great I'm able to actually see my computer boot up again!
Tho I'll try to do a bit more playing around with things to figure out exactly *why* it didn't show for me so maybe we can keep it from happing to anyone else. plus I'd love to enable a background image and still be able to have my terminal
I've tried enabling a framebuffer in my kernel tho at the time since its been so long since I've set one up my 1st attempt was a failure or it did work and I'm just too stupid to realize it
my thinking is that grub2 uses a framebuffer, then the kernel has issues outputting when it doesn't know how to handle a framebuffer or something along those lines _________________ This has been leafed. |
|
Back to top |
|
|
smileaf n00b
Joined: 16 Mar 2005 Posts: 14 Location: USA
|
Posted: Mon Oct 21, 2013 6:35 pm Post subject: |
|
|
Ok framebuffer test did work. after enabling a framebuffer in the kernel I was able to see my console again even with a background image in grub
So in order for grub2's default configurations to work (note I only enabled a background image *after* I first noticed it didn't work initially) the kernel must have framebuffer support.
Maybe this is also the cause of the 'truetype' USE flag that you mentioned you didn't use? _________________ This has been leafed. |
|
Back to top |
|
|
mv Watchman
Joined: 20 Apr 2005 Posts: 6747
|
Posted: Tue Oct 22, 2013 5:27 am Post subject: |
|
|
smileaf wrote: | So in order for grub2's default configurations to work (note I only enabled a background image *after* I first noticed it didn't work initially) the kernel must have framebuffer support. |
I thought this is clear: How can you expect a different resolution to work if the kernel is not able to draw characters in it?
Quote: | Maybe this is also the cause of the 'truetype' USE flag that you mentioned you didn't use? |
In this case it would be grub that would need to be able to draw characters. I do not use it, because it pulls in fonts I would not need otherwise. Perhaps it could be setup to use the fonts which I have, but obviously this is not the default under gentoo. |
|
Back to top |
|
|
smileaf n00b
Joined: 16 Mar 2005 Posts: 14 Location: USA
|
Posted: Wed Oct 23, 2013 1:09 am Post subject: |
|
|
mv wrote: | smileaf wrote: | So in order for grub2's default configurations to work (note I only enabled a background image *after* I first noticed it didn't work initially) the kernel must have framebuffer support. |
I thought this is clear: How can you expect a different resolution to work if the kernel is not able to draw characters in it? |
Not as clear as you might expect, the kernel has abilities to change to a framebuffer, so my expectations would be it could also swap it to pure text since it doesn't know how to use a framebuffer, or that grub would drop the framebuffer when it transfers things over to the kernel.
Seems weird to me the kernel doesn't realize it can't output and change the display to something it can output to, tho I understand this would be a rare case and why waste the time/effort in doing this, or that grub doesn't release the framebuffer so as to not assume whatever is being loaded after can handle the framebuffer. then this might also be the side-effects of perhaps the "set gfxpayload=keep" within every menuentry. I don't really know.
Reguardless, the fact that the defaults to grub2 requires your kernel to have a framebuffer to me is a problem. this should be fixed, or at the very least warn the user.
mv wrote: | Quote: | Maybe this is also the cause of the 'truetype' USE flag that you mentioned you didn't use? |
In this case it would be grub that would need to be able to draw characters. I do not use it, because it pulls in fonts I would not need otherwise. Perhaps it could be setup to use the fonts which I have, but obviously this is not the default under gentoo. |
my USE in make.conf does not have truetype in it. I am using the desktop profile tho. so thats default enough for me. _________________ This has been leafed. |
|
Back to top |
|
|
mv Watchman
Joined: 20 Apr 2005 Posts: 6747
|
Posted: Wed Oct 23, 2013 6:14 pm Post subject: |
|
|
smileaf wrote: | or that grub doesn't release the framebuffer so as to not assume whatever is being loaded after can handle the framebuffer. then this might also be the side-effects of perhaps the "set gfxpayload=keep" within every menuentry. |
This is exactly the meaning of "keep" here...
Quote: | my USE in make.conf does not have truetype in it. I am using the desktop profile tho. so thats default enough for me. |
I explicitly disabled it for grub to avoid the dependency on fonts I do not need. |
|
Back to top |
|
|
smileaf n00b
Joined: 16 Mar 2005 Posts: 14 Location: USA
|
Posted: Thu Oct 24, 2013 2:02 am Post subject: |
|
|
mv wrote: | smileaf wrote: | or that grub doesn't release the framebuffer so as to not assume whatever is being loaded after can handle the framebuffer. then this might also be the side-effects of perhaps the "set gfxpayload=keep" within every menuentry. |
This is exactly the meaning of "keep" here... |
Then the fix is very obvious, this line should be changed to accommodate the possible lack of a framebuffer in a kernel by default, not keep the framebuffer which causes it to require the kernel to have it. _________________ This has been leafed. |
|
Back to top |
|
|
|