WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-users

Re: [Xen-users] OpenSuse 11 hvm domU: screen resolution up to 640x480

To: Flavio <fbcyborg@xxxxxxxxx>, xen-users@xxxxxxxxxxxxxxxxxxx
Subject: Re: [Xen-users] OpenSuse 11 hvm domU: screen resolution up to 640x480
From: jim burns <jim_burn@xxxxxxxxxxxxx>
Date: Wed, 09 Nov 2011 18:15:19 -0500
Cc: "Fajar A. Nugraha" <list@xxxxxxxxx>
Delivery-date: Wed, 09 Nov 2011 15:16:58 -0800
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bellsouth.net; s=s1024; t=1320880530; bh=rMS0IllwuPkZZ/t/LyPhRNSf7JNUQW8tP6Jbuj9+KMg=; h=X-Yahoo-Newman-Property:X-YMail-OSG:X-Yahoo-SMTP:Received:From:To:Cc:Subject:Date:Message-ID:User-Agent:In-Reply-To:References:MIME-Version:Content-Transfer-Encoding:Content-Type; b=HapAvqgO8U1a3ggqkYK1aMFxdp3JPUFJ3c0iOKlpAdzfBolE4fbnrAOogdU7sYg9J2HkOv20+f0+IqzrZliA86mZ6MAn5RaNBdbbUt/1Z0PK5CmqL9M3eAuXdfkZYFlAin/vQXxLLJHTVGI2JdK6I+yKnDS/+wSTJ8Evoo0D6yY=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <CAP8Jb=pWG_U9fb6hMMN-77C9Cvrg5t9KfpU5WhTK+DrJs6qRuA@xxxxxxxxxxxxxx>
List-help: <mailto:xen-users-request@lists.xensource.com?subject=help>
List-id: Xen user discussion <xen-users.lists.xensource.com>
List-post: <mailto:xen-users@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-users>, <mailto:xen-users-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-users>, <mailto:xen-users-request@lists.xensource.com?subject=unsubscribe>
References: <7877809.94pu0BOf0I@dell4550> <1413334.czjCUj28zx@dell4550> <CAP8Jb=pWG_U9fb6hMMN-77C9Cvrg5t9KfpU5WhTK+DrJs6qRuA@xxxxxxxxxxxxxx>
Sender: xen-users-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: KMail/4.7.3 (Linux/2.6.37.6-0.7-default; KDE/4.7.3; i686; ; )
On Wed November 9 2011, 1:47:52 PM, Flavio wrote:
> On 9 November 2011 10:48, Flavio <fbcyborg@xxxxxxxxx> wrote:
> > After reboot, the only problem (apart the screen) is that xennet (or
> > similar) and another module
> > were not available. So the network didn't work (but this is another
> > issue). Let's concentrate on
> > the screen now.
> 
> Heres the missing modules:
> modprobe: Module xennet not found.
> WARNING: no dependencies for kernel module 'xennet' found.
> modprobe: Module xenblk not found.
> WARNING: no dependencies for kernel module 'xenblk' found.
> 
> I've just recompiled the kernel.
> And now:
> # cat /etc/modprobe.d/xen-fbfront.conf
> options xen-fbfront video=32,1280,1024
> 
> but when I modprobe the module, it says:
> FATAL: Error inserting xen_fbfront
> (/lib/modules/3.1.0-1.2-desktop/kernel/drivers/video/xen-fbfront.ko):
> No such device
> 
> So, definitely this is not the right way to solve the problem.

Correct - as I said, wrong driver for hvm. That is a pv driver.

On Wed November 9 2011, 10:48:19 AM, Flavio wrote:
> Indeed it is just what I've thought too, but I did want to make tests even I
> think that this is not the right way to proceed (what I am doing is of
> course not recommended).
> What am I doing?
> 1) I've got the vanilla sources (3.1.0) and extracted to /usr/src/
> 2) cp /boot/config-2.6.37.1-1.2-desktop /usr/src/linux/.config
> 3) make menuconfig
> 4) I selected all the modules needed by domU (including XEN_FBDEV):
> CONFIG_XEN=y
> CONFIG_XEN_DOM0=y
> CONFIG_XEN_PRIVILEGED_GUEST=y
> CONFIG_XEN_PVHVM=y
> CONFIG_XEN_MAX_DOMAIN_MEMORY=128
> CONFIG_XEN_SAVE_RESTORE=y
> # CONFIG_XEN_DEBUG_FS is not set
> # CONFIG_XEN_DEBUG is not set
> CONFIG_PCI_XEN=y
> CONFIG_XEN_PCIDEV_FRONTEND=y
> CONFIG_XEN_BLKDEV_FRONTEND=y
> CONFIG_NETXEN_NIC=m
> CONFIG_XEN_NETDEV_FRONTEND=y
> CONFIG_INPUT_XEN_KBDDEV_FRONTEND=y
> CONFIG_HVC_XEN=y
> # CONFIG_XEN_WDT is not set
> CONFIG_XEN_FBDEV_FRONTEND=y
> # CONFIG_XEN_BALLOON is not set
> # CONFIG_XEN_DEV_EVTCHN is not set
> # CONFIG_XEN_BACKEND is not set
> # CONFIG_XENFS is not set
> # CONFIG_XEN_SYS_HYPERVISOR is not set
> CONFIG_XEN_XENBUS_FRONTEND=y
> # CONFIG_XEN_GNTDEV is not set
> # CONFIG_XEN_GRANT_DEV_ALLOC is not set
> # CONFIG_XEN_PLATFORM_PCI is not set
> CONFIG_SWIOTLB_XEN=y

Actually, I'm surprised you got as close as you did. As I mentioned, 
opensuse's 2.6.37 is based on the old xen architecture, called xenlinux. 3.1 
is using the newer pvops architecture, and uses somewhat different config 
options. I see you've got most of this builtin (=y), and not as modules (=m). 
That's not a bad idea, especially for the 'FRONTEND' config options - it 
avoids missing modules in initrd. You probably want BALLOON set. In a dom0, 
you would have various BACKENDs set (not shown, probably because the names are 
different in 2.6.37), and you would also want EVTCHN & GNTDEV set. You can 
probably get away without these in a domu. Not sure about PLATFORM_PCI - 
definitely required in a pv domu for pci passthrough to work. Not sure what an 
hvm domu needs for passthrough.

Your modprobe errors for xennet and xenblk are probably because opensuse 
expects those names (xenlinux) instead of the newer names (pvops). They can be 
ignored if your FRONTENDS are builtin. Look in /etc/sysconfig/kernel, on the 
line with the variable DOMU_INITRD_MODULES. Another interesting file is 
/etc/sysconfig/bootloader, where you set defaults for menu.lst.

> 5) I compiled using make rpm
> 6) I installed the new kernel and rebooted with the option in menu.lst
> I've written in my previous message.
> 
> After reboot, the only problem (apart the screen) is that xennet (or
> similar) and another module
> were not available. So the network didn't work (but this is another
> issue). Let's concentrate on
> the screen now.
> 
> Now, I am trying to recompile the kernel but setting the
> XEN_FBDEV_FRONTEND as module.
> Meanwhile I am replying you, it is still compiling.
> 
> > 'lspci -vvv' will tell you what driver is loaded for your video
> > controller. Pls post the output of 'lspci -vvv -s video-device-number',
> > and then for the driver mentioned at the end, post 'modinfo
> > driver-name'.
> # lspci -vvv -s 00:02.0
> 00:02.0 VGA compatible controller: Cirrus Logic GD 5446 (prog-if 00
> [VGA controller])
>         Subsystem: XenSource, Inc. Device 0001
>         Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop-
> ParErr- Stepping- SERR- FastB2B- DisINTx-
>         Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort-
> <TAbort- <MAbort- >SERR- <PERR- INTx-
>         Latency: 0
>         Region 0: Memory at f0000000 (32-bit, prefetchable) [size=32M]
>         Region 1: Memory at f3000000 (32-bit, non-prefetchable) [size=4K]
>         Expansion ROM at <unassigned> [disabled]
> 
> And it seems no kernel module is used! O_O
> 
Interesting - otherwise, it's exactly the same as what Fajar posted. Try this 
- edit /etc/init.d/boot.local, and add the line 'modprobe cirrusfb', and 
reboot. That will execute before any of the services start up.

> I am not using lvm and this is my /etc/fstab:
> /dev/disk/by-id/ata-QEMU_HARDDISK_QM00001-part1 swap
> swap       defaults              0 0
> /dev/disk/by-id/ata-QEMU_HARDDISK_QM00001-part2 /
> ext4       acl,user_xattr        1 1
> proc                 /proc                proc       defaults              0
> 0 sysfs                /sys                 sysfs      noauto              
>  0 0 debugfs              /sys/kernel/debug    debugfs    noauto           
>     0 0 usbfs                /proc/bus/usb        usbfs      noauto        
>        0 0 devpts               /dev/pts             devpts    
> mode=0620,gid=5       0 0

Yep - same problem. In a pv domain,there would be no QEMU by-id lines. an be 
ignored for now.

> > Btw, opensuse's kernel-xen-2.6.37 is still using the old xenlinux module
> > names, even tho' it has modern modules like evtchn, gntdev and blktap2.
> > It would appear that the framebuffer is built in
> > (CONFIG_XEN_FRAMEBUFFER=y).
> I tried to install kernel-xen-2.6.37.6-0.9.1 but no luck with it.
> Actually, even the info says that: "This kernel can be used both as the
> domain0 ("xen0") and as an unprivileged ("xenU") kernel." I tried to boot
> with it but: 1) it create an entry in menu.lst and it is for a dom0, since
> it create the "kernel /xen.gz"
> line, so it can't boot, since the hypervisor has noot been installed.
> Furthermore, I don't
> want to install the hypervisor, since it is a hvm domU.
> 
> 2) if I delete the kernel line and I leave only the two following
> (i.e. the kernel and the
> initrd lines) the domU doesn't start.

I'm assuming you changed 'module vmlinuz...' to 'kernel vmlinuz...', and 
'module initrd.../initramfs...' to 'initrd initrd.../initramfs...'. (Systems 
that use dracut to run the boot process use initramfs instead of initrd. 
Opensuse 11.4 (where 2.6.37 came from) doesn't use dracut.) In other words, 
with opensuse's habit of providing the symlinks vmlinuz and initrd pointing to 
the actual binaries in /boot, your grub entry would be similar to:

title openSUSE
    root (hd0,1)
    kernel /vmlinuz root=/dev/system/root resume=/dev/system/swap showopts 
vga=0x31a CPUFREQ=no
    initrd /initrd

if you use lvm. Since you don't, replace /dev/system/... with /dev/sda, 
/dev/sdb, etc. as appropriate. And make sure the first 'root' option is right. 
'(hd0,1)' as shown would be /dev/sda2, where /boot lives. If /boot is not on a 
separate partition from /, then '/vmlinuz' becomes '/boot/vmlinuz', etc.

> So I decided to uninstall that kernel-xen package and to compile the
> sources by myself.
> 
> On 9 November 2011 06:55, Fajar A. Nugraha <list@xxxxxxxxx> wrote:
> > I lost track of what Flavio is using.
> 
> I hope that my previous clarifications were useful to get you on the right
> way to understand what I am doing! ;-)
> 
> > Anyway, if it's PV, using something like
> > "xen-fbfront.video=16,1280,1024" on kernel command line should work
> > regardless whether its built-on or module. If it's module, you also
> > have the option of using /etc/modprobe.d
> > 
> > with stdvga=0, you'd get
> > 
> > 00:02.0 VGA compatible controller: Cirrus Logic GD 5446 (prog-if 00
> > [VGA controller])
> > 
> >        Subsystem: XenSource, Inc. Device 0001
> >        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV-
> >        VGASnoop- ParErr-> 
> > Stepping- SERR- FastB2B- DisINTx-
> > 
> >        Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast
> >        >TAbort-
> > 
> > <TAbort- <MAbort- >SERR- <PERR- INTx-
> > 
> >        Latency: 0
> >        Region 0: Memory at f0000000 (32-bit, prefetchable)
> >        [size=32M]
> >        Region 1: Memory at f3000000 (32-bit, non-prefetchable)
> >        [size=4K]
> >        Expansion ROM at <unassigned> [disabled]
> >        Kernel modules: cirrusfb
> > 
> > and starting X directly would get you lots of entries like this on
> > Xorg.0.log
> > 
> > [    89.540] (II) CIRRUS(0): Not using default mode "1280x1024" (bad
> > mode clock/interlace/doublescan)
> > [    89.540] (II) CIRRUS(0): Not using default mode "1600x1200"
> > (insufficient memory for mode)
> > [    89.540] (II) CIRRUS(0): Not using default mode "800x600" (bad
> > mode clock/interlace/doublescan)
> > 
> > ... and
> > 
> > [    89.541] (--) CIRRUS(0): Virtual size is 1024x768 (pitch 1024)
> > [    89.542] (**) CIRRUS(0): *Default mode "1024x768": 65.0 MHz, 48.4
> > kHz, 60.0 Hz
> > [    89.542] (II) CIRRUS(0): Modeline "1024x768"x60.0   65.00  1024
> > 1048 1184 1344  768 771 777 806 -hsync -vsync (48.4 kHz)
> > [    89.542] (**) CIRRUS(0): *Default mode "800x600": 40.0 MHz, 37.9
> > kHz, 60.3 Hz
> > [    89.542] (II) CIRRUS(0): Modeline "800x600"x60.3   40.00  800 840
> > 968 1056  600 601 605 628 +hsync +vsync (37.9 kHz)
> 
> OK, but it's hvm. And I get nothing of that.
> 
> On 9 November 2011 09:27, jim burns <jim_burn@xxxxxxxxxxxxx> wrote:
> > Flavio - besides the lspci and modinfo output I asked for, post your
> > Xorg.0.log as well. Then I can compare it to what Fajar posted.
> 
> Of course, here we go: http://pastebin.com/d49wcUxD

Interesting - you definitely get the cirrus xorg module being selected, along 
with the other candidates fbdev and vesa. After the card is initialized, fbdev 
and vesa are unloaded, in favor of the better candidate cirrus. What surprises 
me if that the 'lspci' output you posted didn't have the *kernel* module 
driver cirrusfb. I didn't think the xorg module cirrus would work without the 
kernel module driver cirrusfb. Also, Xorg.0.log is clearly only supporting 
800x600 and 640x480, as opposed to the extra resolution Fajar posted - 
1024x768. Hopefully, the modprobe I asked you to put in /etc/init.d/boot.local 
will sort this out. Post 'lspci -vvv -s 00:02.0' after you make that change.

> In conclusion, I am aware that what I am doing is not properly
> correct, and I would
> simply be able to install a rpm kernel without compiling a new one
> every time, because
> it is something insane.
> I've found this: http://forum.3tera.com/showthread.php?t=2161

Yeah - that's pretty old.

> Maybe there is some rpm ready to use, and to solve the problem, but I
> would like to
> try with the kernel I am still compiling now.
> 
> Cheers,
> 
> --
> Flavio


_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users

<Prev in Thread] Current Thread [Next in Thread>