Fglrx + Xen = No X

Questions about virtualization software
Forum rules
Before you post read how to get help. Topics in this forum are automatically closed 6 months after creation.
powerhouse
Level 6
Level 6
Posts: 1144
Joined: Thu May 03, 2012 3:54 am
Location: Israel
Contact:

Re: Fglrx + Xen = No X

Post by powerhouse »

Forgive my persistence, but have you tried this advice?: http://forums.linuxmint.com/viewtopic.php?f=46&t=122257.

The fglrx driver problem may also get more attention under the graphics card section of the forum.

Damn, there must be a way to make this work.
Subjects of interest: Linux, vfio passthrough virtualization, photography
See my blog on virtualization, including tutorials: https://www.heiko-sieger.info/category/ ... alization/
Locuust

Re: Fglrx + Xen = No X

Post by Locuust »

OMG... LOL I can't stop laughing. Mint 13 + Xen on this machine. It's funny but it's not.

First of all I had general weirdness. My nic card kept dying about 30 minutes in and no amount of fiddling would get it to stay connected after that. *Lots* of errors in the boot log. CPU halt errors shutting down once. Despite that I managed to get the machine patched somehow and loaded Xen and Fglrx (man I miss the little proprietary driver util that went away with Mint 14). I loaded Fglrx because I was curious if I could get similar behavior to gordon.cooke. Bingo.
1) Loaded into Mint 13 fine (albeit the proprietary driver was older and displayed the "unsupported hardware" overlay on the screen). Checked the Xorg.0.log and found no errors to speak of... well other than a less than confidence building declaration that my hardware was "generally" supported by Fglrx.
2) Booted into Mint + Xen. Success! Xorg.0.log was the same!
3) Booted into Mint + Xen. Fail! Xen page faulted all over my screen and I had to reset. Checking the Xorg.0.log.old revealed nothing. Fglrx had loaded fine. Xen just had a fit over something.

Now I could spend a bunch of time going over these logs and trying to make heads or tails of them, but considering how bad the stability is for me on Mint 13 + Xen I'll take a raincheck for now.

Especially since I think I discovered why my audio passthrough was working on this adventure with Mint 13. :oops: Time to verify if I'm right.

It does make me wonder if I could find a proprietary driver that's newer than the one in 13 and older than the one in 14. Maybe my video card would be supported and work in Xen then :P

Oh, and to be sure this is not Mint 13's fault. It's just a bad combination of hardware/kernel/drivers/Xen.

Update
Hmmm.. Guess I was wrong. I started second guessing myself thinking I screwed up entering the PCI ID for my sound card (I've been using nano to edit and I thought I mistook a commented line for the real one). Still no sound and back to square one. Mint 13 seems pretty risky for my setup. Might as well give KVM a try. Otherwise I'll have to try upgrading kernels on Mint 13.
Locuust

Re: Fglrx + Xen = No X

Post by Locuust »

powerhouse wrote:Forgive my persistence, but have you tried this advice?: http://forums.linuxmint.com/viewtopic.php?f=46&t=122257.
I did look at that sticky post, but it doesn't apply to me. It's meant to get you into X so you can install the proprietary drivers in the event you're unable to boot after install. I have no issues booting into Mint without Xen and making the driver changes I need.
The fglrx driver problem may also get more attention under the graphics card section of the forum.
I hesitate to do so since the response will probably be that Xen is the problem. But then I did start this thread so perhaps it wouldn't hurt. Still I have a Xen specific problem I'm trying to solve first (my sound). Fglrx is on the back burner for me atm.
gordon.cooke

Re: Fglrx + Xen = No X

Post by gordon.cooke »

@ Locust - interesting that you had similar behavior

Here is where it get really weird. I made my last post inthis thread at the end of a night of tinkering- shut down the computer and went to bed. (Thanks to all for the comments and suggestions.) Came back the next night and started the computer up. Let it boot into Xen (default) and was able to log right into Cinamon. Even restarted it a few times to check if I was just that point in the cycle. And got Cinamon. No idea what changed.

But new issue I discovered was that I could not get my Win7 domU to load up. (Error about invalid argument) Wont go through every step I took, but I tried radeon.blacklist=1 in different parts of the line, xen-pciback.hide the video card, and some other ideas. Finally figured out that if I commented out the pci=[...] line of the /etc/xen/win7.cfg it would load up and worked under vnc, but obviously no pci passthrough. I was able to passthrough the USB but not the graphics card.

I then started messing with drivers. Changing the xorg.conf for fglrx-updates to readeon (removing the radeon blacklist of course). That ut me back to a gnome desktop. Tried removing worg.conf, that failed to load X at all. Uninstalled fglrx and fglrx-updates (still gnome), reinstalled fglrx-updates, blacklisted radeon and got a Cinamon desktop.

So at this point I have good perfromance inside Mint 13 with radeon driver, but I can no longer passthrough the 2nd video card.

For reference (sorry if it makes the thread long)
/etc/X11/xorg.conf is removed (renamed xorg.conf.bk) so I assume it is just using the xorg.conf.failsafe
/etc/default/grub

Code: Select all

# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
#   info -f grub -n 'Simple configuration'

GRUB_DEFAULT="Xen 4.1-amd64"
#GRUB_DEFAULT=0
#GRUB_HIDDEN_TIMEOUT=0
#GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=3
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="radeon.blacklist=1 quiet splash nomodeset "
GRUB_CMDLINE_LINUX=""
GRUB_CMDLINE_XEN="iommu=1 dom0_mem=4096M "

# xen-pciback.hide=(02:00.0,02:00.1,05:05.0)
# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"

# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=640x480

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"

# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"
/boot/grub/grub.cfg

Code: Select all

#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
  set have_grubenv=true
  load_env
fi
set default="Xen 4.1-amd64"
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 recordfail {
  set recordfail=1
  if [ -n "${have_grubenv}" ]; then if [ -z "${boot_once}" ]; then save_env recordfail; fi; fi
}

function load_video {
  insmod vbe
  insmod vga
  insmod video_bochs
  insmod video_cirrus
}

insmod part_msdos
insmod ext2
set root='(hd0,msdos2)'
search --no-floppy --fs-uuid --set=root 3fa699ed-5e28-40f7-8082-a575890b8cd4
if loadfont /usr/share/grub/unicode.pf2 ; then
  set gfxmode=auto
  load_video
  insmod gfxterm
  insmod part_msdos
  insmod ext2
  set root='(hd0,msdos1)'
  search --no-floppy --fs-uuid --set=root ca975d11-7bc3-431b-8527-1afd9224639a
  set locale_dir=($root)/grub/locale
  set lang=en_US
  insmod gettext
fi
terminal_output gfxterm
if [ "${recordfail}" = 1 ]; then
  set timeout=-1
else
  set timeout=3
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/06_mint_theme ###
set menu_color_normal=white/black
set menu_color_highlight=white/light-gray
### END /etc/grub.d/06_mint_theme ###

### BEGIN /etc/grub.d/10_linux ###
function gfxmode {
	set gfxpayload="$1"
	if [ "$1" = "keep" ]; then
		set vt_handoff=vt.handoff=7
	else
		set vt_handoff=
	fi
}
if [ ${recordfail} != 1 ]; then
  if [ -e ${prefix}/gfxblacklist.txt ]; then
    if hwmatch ${prefix}/gfxblacklist.txt 3; then
      if [ ${match} = 0 ]; then
        set linux_gfx_mode=keep
      else
        set linux_gfx_mode=text
      fi
    else
      set linux_gfx_mode=text
    fi
  else
    set linux_gfx_mode=keep
  fi
else
  set linux_gfx_mode=text
fi
export linux_gfx_mode
if [ "$linux_gfx_mode" != "text" ]; then load_video; fi
menuentry 'Linux Mint 13 Cinnamon 64-bit, 3.2.0-23-generic (/dev/sda1)' --class linuxmint --class gnu-linux --class gnu --class os {
	recordfail
	gfxmode $linux_gfx_mode
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos1)'
	search --no-floppy --fs-uuid --set=root ca975d11-7bc3-431b-8527-1afd9224639a
	linux	/vmlinuz-3.2.0-23-generic root=UUID=3fa699ed-5e28-40f7-8082-a575890b8cd4 ro   radeon.blacklist=1 quiet splash nomodeset  $vt_handoff
	initrd	/initrd.img-3.2.0-23-generic
}
menuentry 'Linux Mint 13 Cinnamon 64-bit, 3.2.0-23-generic (/dev/sda1) -- recovery mode' --class linuxmint --class gnu-linux --class gnu --class os {
	recordfail
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos1)'
	search --no-floppy --fs-uuid --set=root ca975d11-7bc3-431b-8527-1afd9224639a
	echo	'Loading Linux 3.2.0-23-generic ...'
	linux	/vmlinuz-3.2.0-23-generic root=UUID=3fa699ed-5e28-40f7-8082-a575890b8cd4 ro recovery nomodeset 
	echo	'Loading initial ramdisk ...'
	initrd	/initrd.img-3.2.0-23-generic
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/10_lupin ###
### END /etc/grub.d/10_lupin ###

### BEGIN /etc/grub.d/20_linux_xen ###
submenu "Xen 4.1-amd64" {
menuentry 'LinuxMint GNU/Linux, with Xen 4.1-amd64 and Linux 3.2.0-23-generic' --class linuxmint --class gnu-linux --class gnu --class os --class xen {
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos1)'
	search --no-floppy --fs-uuid --set=root ca975d11-7bc3-431b-8527-1afd9224639a
	echo	'Loading Xen 4.1-amd64 ...'
	multiboot	/xen-4.1-amd64.gz placeholder iommu=1 dom0_mem=4096M  
	echo	'Loading Linux 3.2.0-23-generic ...'
	module	/vmlinuz-3.2.0-23-generic placeholder root=UUID=3fa699ed-5e28-40f7-8082-a575890b8cd4 ro  radeon.blacklist=1 quiet splash nomodeset 
	echo	'Loading initial ramdisk ...'
	module	/initrd.img-3.2.0-23-generic
}
menuentry 'LinuxMint GNU/Linux, with Xen 4.1-amd64 and Linux 3.2.0-23-generic (recovery mode)' --class linuxmint --class gnu-linux --class gnu --class os --class xen {
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos1)'
	search --no-floppy --fs-uuid --set=root ca975d11-7bc3-431b-8527-1afd9224639a
	echo	'Loading Xen 4.1-amd64 ...'
	multiboot	/xen-4.1-amd64.gz placeholder iommu=1 dom0_mem=4096M 
	echo	'Loading Linux 3.2.0-23-generic ...'
	module	/vmlinuz-3.2.0-23-generic placeholder root=UUID=3fa699ed-5e28-40f7-8082-a575890b8cd4 ro single 
	echo	'Loading initial ramdisk ...'
	module	/initrd.img-3.2.0-23-generic
}
}
### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos1)'
	search --no-floppy --fs-uuid --set=root ca975d11-7bc3-431b-8527-1afd9224639a
	linux16	/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos1)'
	search --no-floppy --fs-uuid --set=root ca975d11-7bc3-431b-8527-1afd9224639a
	linux16	/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/30_uefi-firmware ###
### END /etc/grub.d/30_uefi-firmware ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###
system settings

Code: Select all

gordon@vmhost ~ $ inxi -Fxz
System:    Host: buddy-vmhost Kernel: 3.2.0-23-generic x86_64 (64 bit, gcc: 4.6.3) Desktop: Gnome Distro: Linux Mint 13 Maya
Machine:   Mobo: MSI model: 970A-G43 (MS-7693) version: 3.0 Bios: American Megatrends version: V10.0 date: 12/26/2012
CPU:       Single core AMD FX-8320 Eight-Core (-UP-) cache: 2048 KB flags: (lm nx sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3) bmips: 7000.34 
           Clock Speeds: 1: 3500.170 MHz 2: 3500.170 MHz 3: 3500.170 MHz 4: 3500.170 MHz 5: 3500.170 MHz 6: 3500.170 MHz 7: 3500.170 MHz 8: 3500.170 MHz
Graphics:  Card-1: Advanced Micro Devices [AMD] nee ATI Cedar PRO [Radeon HD 5450] bus-ID: 01:00.0 
           Card-2: Advanced Micro Devices [AMD] nee ATI Cedar PRO [Radeon HD 5450] bus-ID: 02:00.0 
           Card-3: S3 86c764/765 [Trio32/64/64V+] bus-ID: 05:05.0 
           X.Org: 1.11.3 drivers: ati,fglrx (unloaded: vesa,fbdev,radeon) Resolution: 1280x1024@60.0hz 
           GLX Renderer: ATI Radeon HD 5450 GLX Version: 4.2.11903 - CPC Direct Rendering: Yes
Audio:     Card-1: Advanced Micro Devices [AMD] nee ATI SBx00 Azalia (Intel HDA) driver: snd_hda_intel bus-ID: 00:14.2
           Card-2: 2x Advanced Micro Devices [AMD] nee ATI Cedar HDMI Audio [Radeon HD 5400/6300 Series] driver: snd_hda_intelpciback bus-ID: 02:00.1
           Sound: Advanced Linux Sound Architecture ver: 1.0.24
Network:   Card: Realtek RTL8111/8168B PCI Express Gigabit Ethernet controller 
           driver: r8169 ver: 2.3LK-NAPI port: c000 bus-ID: 06:00.0
           IF: eth0 state: up speed: 100 Mbps duplex: full mac: <filter>
Drives:    HDD Total Size: 3160.6GB (28.1% used) 1: /dev/sda ST3160815AS 160.0GB 34C 
           2: /dev/sdb WDC_WD30EZRX 3000.6GB 28C 
Partition: ID: / size: 15G used: 12G (84%) fs: ext4 ID: /boot size: 2.0G used: 453M (25%) fs: ext3 
           ID: swap-1 size: 16.78GB used: 0.00GB (0%) fs: swap 
Sensors:   System Temperatures: cpu: 29.2C mobo: N/A 
           Fan Speeds (in rpm): cpu: N/A 
Info:      Processes: 184 Uptime: 23 min Memory: 832.6/2806.5MB Runlevel: 2 Gcc sys: 4.6.3 Client: Shell inxi: 1.7.33 
And the vga and usb are still assignable

Code: Select all

gordon@vmhost ~ $ sudo xm pci-list-assignable-devices
0000:02:00.0
0000:02:00.1
0000:00:16.0
0000:00:16.2
And the below /etc/xen/win7.cfg fails unless I comment out the "pci=" line

Code: Select all

kernel = "/usr/lib/xen-default/boot/hvmloader"
builder='hvm'
# Memory reserved for Windows domU, in my case 24GB (adjust to your
# needs:
memory = 2048
# Name of the domU that will be created/used:
name="win7"
vcpus=2 # I gave my Win 7 10 virtual CPUs, out of 12 ( using a 6-core CPU)
#pae=1 may not be needed, but just in case
acpi=1
apic=1
# Here my virtual network interfaces - see /etc/network/interfaces below:
vif = [ 'mac=00:16:3e:68:58:01,bridge=xenbr0' ]
# vif = [ 'vifname=win7,type=ioemu,mac=00:16:3e:68:e1:01,bridge=xenbr0' ]
# I assigned a static MAC address, else it will be changed each time Windows
# boots. The address should start with 00:16:3e., the rest is up to you.
#
# Specifying the disks and Windows ISO for installation, adjust to your
# needs:
disk = [ 'phy:/dev/mapper/guest-win7,hda,w', 'phy:/dev/sr0,hdc:cdrom,r' ]
# , 'phy:/dev/sr0,hdc:cdrom,r'
# More disks can be added later using this same method The path to the
# device or a file can be added. After the first comma is how the device will
# appear. "hda" is the first, "hdb" the second etc. "hda" will appear as IDE,
# sda will appear as SCSI or SATA. After the second comma "r" means read
# only and "w" is for write.
device_model = '/usr/lib/xen-default/bin/qemu-dm'
boot="cd"
# The above should be changed once Windows is installed: boot="c" to only
# show the Windows file system, else it may try to boot from the ISO image.
sdl=0
vnc=1
vncpasswd=''
stdvga=0
# nographic=1 #!!! only uncomment this if you are using win8 or are trying
# to get a Nvidia card to work. In my case - Nvidia Quadro 2000 - this was not
# needed.
serial='pty'
tsc_mode=0
viridian=1
#soundhw='all' # I commented it out since it's not relevant to me now.
usb=1 # This allows sharing the USB mouse/keyboard.
usbdevice='tablet' # is recommended in conjunction with USB=1
gfx_passthru=0
# Leaving this as 0 is how it works for me with my Quadro 2000 card.
# You can change this later for iGPUs or nVdia if needed.
# Try it with 0 first.
pci=[ '02:00.0', '02:00.1', '00:16.0', '00:16.2' ]
#   
# These values are the ones you found out using the lspci command earlier.
# I also passed through an entire USB controller for native support.
# You can use usb-devices to find out to which hub/host the keyboard/mouse
# is connected. I use a USB KVM switch to connect my keyboard/mouse to two
# USB ports residing on different hubs! One - 00:1a.0 - is then passed through
# to the domU.
# The following lets Windows take the local time from the dom0:
localtime=1
#To turn on pci power management globally, use (see remarks under pci=... below):
#pci_power_mgmt=1

Code: Select all

gordon@vmhost ~ $ sudo xm create /etc/xen/win7.cfg
[sudo] password for gordon: 
Using config file "/etc/xen/win7.cfg".
Error: (22, 'Invalid argument')
Locuust

Re: Fglrx + Xen = No X

Post by Locuust »

I'm really tired at the moment so I might be overlooking some things... but where are you actually setting the parameters for pci-back? It appears you've commented it out of /etc/default/grub so you're not loading it with the kernel or initramfs. You got it working with modprobe.d? Well, that's a moot point if Xen is reporting them as assignable. You probably said how you set it up before anyways. :P

As far as the error in the config file goes I'd probably start with a fresh copy from powerhouses example, modify it to match your needs, and then cross your fingers. One day I spent hours to figure out what was wrong in my config before I stopped being stubborn and started over. It turned out to be a typo I kept overlooking (mind was autocorrecting to what I expected it to say).

I'll look at this again once I get some sleep and see if I can say something remotely helpful. :P

I got OpenSuse loaded again and I managed to get the pci-back reservations in place. Unfortunately my config file for my DomU stalled on the windows splash screen when I tried to create it. So I figure there's something that needs changing since this is the XL stack (4.2). So I tried to create a new VM through virt-manager but it's complaining the PCI devices I'm trying to pass are already assigned to another domain. It's probably a simple fix (probably because I forced my old config closed), but I'm too tired to chase this rabbit down this hole anymore tonight. With any luck I'll get everything working in the morning I'll know if Xen 4.2 + Kernel 3.7 = Sound.

I gotta say though. KDE annoys me almost as much as Gnome 3+.... Maybe I'll try Xfce if I get this to work.

Man, I just did a quick diff on your config file vs Power's and I didn't see any typo's fwiw.
Locuust

Re: Fglrx + Xen = No X

Post by Locuust »

gordon.cooke wrote:@ Locust - interesting that you had similar behavior
Well it appears we have the same motherboard chipset and the same generation AMD FX CPU's (based on piledriver iirc). We are using AMD video cards for Dom0, but they are different generations. My gut says it's the Chipset and/or CPU. Have you loaded the AMD microcode package? I loaded it. If you did as well then perhaps the microcode in that package from the repos is buggy? Just thinking out loud. Wait.. I know I loaded on Mint 14, but I'm not sure if I got around to it on 13. Maybe it's the absence of the microcode update then?
Here is where it get really weird. I made my last post inthis thread at the end of a night of tinkering- shut down the computer and went to bed. (Thanks to all for the comments and suggestions.) Came back the next night and started the computer up. Let it boot into Xen (default) and was able to log right into Cinamon. Even restarted it a few times to check if I was just that point in the cycle. And got Cinamon. No idea what changed.
Don't you just love when FM happens? It always pisses me off when something starts working and I don't know why.
But new issue I discovered was that I could not get my Win7 domU to load up. (Error about invalid argument) Wont go through every step I took, but I tried radeon.blacklist=1 in different parts of the line, xen-pciback.hide the video card, and some other ideas. Finally figured out that if I commented out the pci=[...] line of the /etc/xen/win7.cfg it would load up and worked under vnc, but obviously no pci passthrough. I was able to passthrough the USB but not the graphics card.
Well, the only kernel option in grub that would effect your DomU is the pciback one. Btw, I had to change xen-pciback.hide to pciback.hide in opensuse. The kernel option has to be the name of the kernel module. In opensuse's case it's just called pciback. It probably varies between distro's? I can't check what it's called in Mint atm, but "modinfo xen-pciback" would confirm if that's the correct name (assuming you haven't compiled it into your kernel).

I'd also confirm that pciback is holding your PCI devices properly with "lspci -v | less".
I then started messing with drivers. Changing the xorg.conf for fglrx-updates to readeon (removing the radeon blacklist of course). That ut me back to a gnome desktop. Tried removing worg.conf, that failed to load X at all. Uninstalled fglrx and fglrx-updates (still gnome), reinstalled fglrx-updates, blacklisted radeon and got a Cinamon desktop.
Your Dom0 drivers shouldn't effect your DomU unless a driver is managing to load on something you're attempting to pass through.
So at this point I have good perfromance inside Mint 13 with radeon driver, but I can no longer passthrough the 2nd video card.
Take a look at your /var/log/xen/qemu-dm-name-of-your-domu.log for any errors after attempting to start your DomU. Might be a clue there or you can at least confirm if your PCI devices were passed.
/etc/default/grub

Code: Select all

GRUB_CMDLINE_LINUX_DEFAULT="radeon.blacklist=1 quiet splash nomodeset "
GRUB_CMDLINE_LINUX=""
GRUB_CMDLINE_XEN="iommu=1 dom0_mem=4096M "
Just to illustrate, these are the only real lines you have in this file. The blacklist should be on the line "GRUB_CMDLINE_LINUX_XEN_REPLACE_DEFAULT" if you want it to take effect while running Xen. i.e. -

Code: Select all

# Xen Hypervisor (Xen.gz)
GRUB_CMDLINE_XEN_DEFAULT="dom0_max_vcpus=2 dom0_vcpus_pin"
# Xen Hypervisor and Recovery
GRUB_CMDLINE_XEN="iommu=1 dom0_mem=min:8192M,max:8192M"
# Kernel w/Xen
GRUB_CMDLINE_LINUX_XEN_REPLACE_DEFAULT="radeon.blacklist=1 quiet splash pciback.hide=(02:00.0)
Be sure to update-grub.
And the below /etc/xen/win7.cfg fails unless I comment out the "pci=" line

Code: Select all

kernel = "/usr/lib/xen-default/boot/hvmloader"
builder='hvm'
memory = 2048
name="win7"
vcpus=2
acpi=1
apic=1
vif = [ 'mac=00:16:3e:68:58:01,bridge=xenbr0' ]
disk = [ 'phy:/dev/mapper/guest-win7,hda,w', 'phy:/dev/sr0,hdc:cdrom,r' ]
device_model = '/usr/lib/xen-default/bin/qemu-dm'
boot="cd"
sdl=0
vnc=1
vncpasswd=''
stdvga=0
serial='pty'
tsc_mode=0
viridian=1
usb=1
usbdevice='tablet'
gfx_passthru=0
pci=[ '02:00.0', '02:00.1', '00:16.0', '00:16.2' ]
localtime=1
Still don't see anything glaringly wrong. What's 00:16.2 btw? Is your bridge really called xenbr0? I made a stupid typo in my interfaces once. Only other suggestion is to try just your video card on the PCI= line and see if it's the other devices causing the problem.

Code: Select all

gordon@vmhost ~ $ sudo xm create /etc/xen/win7.cfg
[sudo] password for gordon: 
Using config file "/etc/xen/win7.cfg".
Error: (22, 'Invalid argument')
Lol. Once, when tired, I edited a xen config file I had backed up to my home directory and couldn't understand why my changes weren't taking when I did "xm create /etc/xen/win7.cfg". Obviously it was because the file I was changing wasn't in "/etc/xen/win7.cfg" but I was tired and depending on my terminal's buffer to repeat commands. Oops.
Locuust

Re: Fglrx + Xen = No X

Post by Locuust »

I want to jump for joy, but I'm crossing my fingers instead. I got my Win7 DomU reinstalled in openSuse 12.3. Sound worked with the default windows drivers as soon as I passed it thru! I'm having some issues with video this time around though, but I'm hoping I'll resolve it with some updates (last time windows auto updated on me during a shutdown and this time I disabled auto updates). I actually got a couple blue screens, but I think it was because the official sound driver and AMD hdmi driver were conflicting with each other.. or rather fighting over hardware (they're both based on Intel audio I believe).

Update
I knew it. Something had to go wrong. At first I had issues getting the video sorted and then the bsod's and lockups of Dom0 started happening more frequently. Managed to get the video sorted finally (I think the driver got corrupted when I copied it off a usb stick). The USB controller I have passed turned out to be the source of the bsod's as I finally got one that mentioned the driver by name. After increasing amounts of weirdness my KVM switch died completely. I'm not sure if it was the switch that was causing problems with my USB 3.0 controller or if it was my USB controller causing problems for the switch. Either way I'm done playing with this for today. I don't even have any spare keyboards or mice to try connecting directly to the USB 3 controller for testing. I can't catch a break with this stuff.

Ultimately I'll either have to live with an extra kb/mouse or try synergy. I'm done with switches. I used to have "fun" with them back in the day in server rooms. Even the 16 port belkin's get flaky after a while.
powerhouse
Level 6
Level 6
Posts: 1144
Joined: Thu May 03, 2012 3:54 am
Location: Israel
Contact:

Re: Fglrx + Xen = No X

Post by powerhouse »

@gordon.cooke:

Comment out "viridian" in the Windows config file. I don't know if that helps, but it may be worth a try.

Check out this site under "PCI" http://wiki.xen.org/wiki/XenConfigurationFileOptions for more options that may affect pci passthrough.

Example: pci (Default=[]; Value=BUS:DEV.FUNC[@VSLOT][,msitranslate=0|1][,power_mgmt=0|1]

Try with msitranslate=0 (or =1) for the graphics card, and/or the power_mgmt=1.

I had a similar error with vifname=... in the vif section, only when I removed the vifname option did the guest boot.

If you use the xen-pciback module, also check that your /etc/modules file contains

Code: Select all

xen-pciback passthrough=1
Try also the following /etc/Xen/win.cfg options:

# nographic=1 # Uncomment if the Nvidia card doesn't work, or perhaps for Windows 8.

gfx_passthru=0 # Set to 1 may help with some Nvidia cards. Search the Internet for AMD cards and recommendations, though IIRC AMD cards should work with 0.

Check also here: http://wiki.xen.org/wiki/Xen_PCI_Passthrough, specifically here http://wiki.xen.org/wiki/Xen_PCI_Passth ... _xm.2Fxend.

If you can't get it to work, try pci-stub instead of pciback. You should find instructions on the net - see http://wiki.xen.org/wiki/Bind_lib.bash_ ... ier_to_use. pci-stub only works with HVM guests.

If nothing works and you have already messed a lot with your installation, try a clean installation with LM 14 Mate. Before installing Xen, update to the latest kernel in the repos (3.5.0-27-generic as of today), and update all the packages. Then install Xen (4.1.3) and the packages needed, etc. You don't need to reinstall Windows, just try to boot it with a win.cfg that worked before. Only as a last resource reinstall Windows.

After you got Windows to boot successfully, if you want to try, install the fglrx driver under Xen, with the second VGA assignable (i.e. attached to pciback or pci-stub).
Subjects of interest: Linux, vfio passthrough virtualization, photography
See my blog on virtualization, including tutorials: https://www.heiko-sieger.info/category/ ... alization/
gordon.cooke

Re: Fglrx + Xen = No X

Post by gordon.cooke »

OK- I have things working now.

Thanks for all the suggestions- I did not actually get to use most, if any, of them.

I had previously made a clonezila backup right around the first time I had pci passthrough working, so I imaged the current dom0 partition (in which passthrough was not working) and the blew it away and restored the older image from Aug 8th. Off of that, I have my pci passthrough working again. So I dont have a complete answer on what the issue was, but backups are a great thing. I love clonezilla.

Actually- I discovered one change that may be related. After booting into the restored image for the first time, at the GDM screen I manualy set the desktop to Cinamon. This threw an "are you sure you want to" message that I was changing the default away from xclient. I cancelled and stayed with that default. Back when I was having issues the past few days I had changed the default to Cinamon after having issues reverting into gnome fallback. I thought cinamon was default, but I guess the xclient option is actualy default (which loads up a cinamon desktop). Not sure if this loading anything else besides cinamon that perhaps I was missing before by going straight to cinamon??
NOTE: I checked and I do not have a ~/.xsession file

Some details below for documentation purposes.

/etc/X11/xorg.conf

Code: Select all

Section "ServerLayout"
	Identifier     "aticonfig Layout"
	Screen      0  "aticonfig-Screen[0]-0" 0 0
EndSection

Section "Module"
EndSection

Section "Monitor"
	Identifier   "aticonfig-Monitor[0]-0"
	Option	    "VendorName" "ATI Proprietary Driver"
	Option	    "ModelName" "Generic Autodetecting Monitor"
	Option	    "DPMS" "true"
EndSection

Section "Device"
	Identifier  "aticonfig-Device[0]-0"
	Driver      "fglrx"
	BusID       "PCI:1:0:0"
EndSection

Section "Screen"
	Identifier "aticonfig-Screen[0]-0"
	Device     "aticonfig-Device[0]-0"
	Monitor    "aticonfig-Monitor[0]-0"
	DefaultDepth     24
	SubSection "Display"
		Viewport   0 0
		Depth     24
	EndSubSection
EndSection
/etc/default/grub is not relevent since I did not restore the /boot partition and I have not used update-grub
/boot/grub/grub.cfg

Code: Select all

#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
  set have_grubenv=true
  load_env
fi
set default="Xen 4.1-amd64"
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 recordfail {
  set recordfail=1
  if [ -n "${have_grubenv}" ]; then if [ -z "${boot_once}" ]; then save_env recordfail; fi; fi
}

function load_video {
  insmod vbe
  insmod vga
  insmod video_bochs
  insmod video_cirrus
}

insmod part_msdos
insmod ext2
set root='(hd0,msdos2)'
search --no-floppy --fs-uuid --set=root 3fa699ed-5e28-40f7-8082-a575890b8cd4
if loadfont /usr/share/grub/unicode.pf2 ; then
  set gfxmode=auto
  load_video
  insmod gfxterm
  insmod part_msdos
  insmod ext2
  set root='(hd0,msdos1)'
  search --no-floppy --fs-uuid --set=root ca975d11-7bc3-431b-8527-1afd9224639a
  set locale_dir=($root)/grub/locale
  set lang=en_US
  insmod gettext
fi
terminal_output gfxterm
if [ "${recordfail}" = 1 ]; then
  set timeout=-1
else
  set timeout=3
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/06_mint_theme ###
set menu_color_normal=white/black
set menu_color_highlight=white/light-gray
### END /etc/grub.d/06_mint_theme ###

### BEGIN /etc/grub.d/10_linux ###
function gfxmode {
	set gfxpayload="$1"
	if [ "$1" = "keep" ]; then
		set vt_handoff=vt.handoff=7
	else
		set vt_handoff=
	fi
}
if [ ${recordfail} != 1 ]; then
  if [ -e ${prefix}/gfxblacklist.txt ]; then
    if hwmatch ${prefix}/gfxblacklist.txt 3; then
      if [ ${match} = 0 ]; then
        set linux_gfx_mode=keep
      else
        set linux_gfx_mode=text
      fi
    else
      set linux_gfx_mode=text
    fi
  else
    set linux_gfx_mode=keep
  fi
else
  set linux_gfx_mode=text
fi
export linux_gfx_mode
if [ "$linux_gfx_mode" != "text" ]; then load_video; fi
menuentry 'Linux Mint 13 Cinnamon 64-bit, 3.2.0-23-generic (/dev/sda1)' --class linuxmint --class gnu-linux --class gnu --class os {
	recordfail
	gfxmode $linux_gfx_mode
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos1)'
	search --no-floppy --fs-uuid --set=root ca975d11-7bc3-431b-8527-1afd9224639a
	linux	/vmlinuz-3.2.0-23-generic root=UUID=3fa699ed-5e28-40f7-8082-a575890b8cd4 ro   radeon.blacklist=1 quiet splash nomodeset  $vt_handoff
	initrd	/initrd.img-3.2.0-23-generic
}
menuentry 'Linux Mint 13 Cinnamon 64-bit, 3.2.0-23-generic (/dev/sda1) -- recovery mode' --class linuxmint --class gnu-linux --class gnu --class os {
	recordfail
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos1)'
	search --no-floppy --fs-uuid --set=root ca975d11-7bc3-431b-8527-1afd9224639a
	echo	'Loading Linux 3.2.0-23-generic ...'
	linux	/vmlinuz-3.2.0-23-generic root=UUID=3fa699ed-5e28-40f7-8082-a575890b8cd4 ro recovery nomodeset 
	echo	'Loading initial ramdisk ...'
	initrd	/initrd.img-3.2.0-23-generic
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/10_lupin ###
### END /etc/grub.d/10_lupin ###

### BEGIN /etc/grub.d/20_linux_xen ###
submenu "Xen 4.1-amd64" {
menuentry 'LinuxMint GNU/Linux, with Xen 4.1-amd64 and Linux 3.2.0-23-generic' --class linuxmint --class gnu-linux --class gnu --class os --class xen {
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos1)'
	search --no-floppy --fs-uuid --set=root ca975d11-7bc3-431b-8527-1afd9224639a
	echo	'Loading Xen 4.1-amd64 ...'
	multiboot	/xen-4.1-amd64.gz placeholder iommu=1 dom0_mem=4096M xen-pciback.hide=(02:00.0)(02:00.1)(05:05.0) 
	echo	'Loading Linux 3.2.0-23-generic ...'
	module	/vmlinuz-3.2.0-23-generic placeholder root=UUID=3fa699ed-5e28-40f7-8082-a575890b8cd4 ro  radeon.blacklist=1 quiet splash nomodeset 
	echo	'Loading initial ramdisk ...'
	module	/initrd.img-3.2.0-23-generic
}
menuentry 'LinuxMint GNU/Linux, with Xen 4.1-amd64 and Linux 3.2.0-23-generic (recovery mode)' --class linuxmint --class gnu-linux --class gnu --class os --class xen {
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos1)'
	search --no-floppy --fs-uuid --set=root ca975d11-7bc3-431b-8527-1afd9224639a
	echo	'Loading Xen 4.1-amd64 ...'
	multiboot	/xen-4.1-amd64.gz placeholder iommu=1 dom0_mem=4096M xen-pciback.hide=(02:00.0)(02:00.1)(05:05.0)
	echo	'Loading Linux 3.2.0-23-generic ...'
	module	/vmlinuz-3.2.0-23-generic placeholder root=UUID=3fa699ed-5e28-40f7-8082-a575890b8cd4 ro single 
	echo	'Loading initial ramdisk ...'
	module	/initrd.img-3.2.0-23-generic
}
}
### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos1)'
	search --no-floppy --fs-uuid --set=root ca975d11-7bc3-431b-8527-1afd9224639a
	linux16	/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos1)'
	search --no-floppy --fs-uuid --set=root ca975d11-7bc3-431b-8527-1afd9224639a
	linux16	/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/30_uefi-firmware ###
### END /etc/grub.d/30_uefi-firmware ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###
/etc/xen/win7.cfg

Code: Select all

kernel = "/usr/lib/xen-default/boot/hvmloader"
builder='hvm'
# Memory reserved for Windows domU, in my case 24GB (adjust to your
# needs:
memory = 2048
# Name of the domU that will be created/used:
name="win7"
vcpus=2 # I gave my Win 7 10 virtual CPUs, out of 12 ( using a 6-core CPU)
pae=1 #may not be needed, but just in case
acpi=1
apic=1
# Here my virtual network interfaces - see /etc/network/interfaces below:
vif = [ 'mac=00:16:3e:68:58:01,bridge=xenbr0' ]
# vif = [ 'vifname=win7,type=ioemu,mac=00:16:3e:68:e1:01,bridge=xenbr0' ]
# I assigned a static MAC address, else it will be changed each time Windows
# boots. The address should start with 00:16:3e., the rest is up to you.
#
# Specifying the disks and Windows ISO for installation, adjust to your
# needs:
disk = [ 'phy:/dev/mapper/guest-win7,hda,w' , 'phy:/dev/sr0,hdc:cdrom,r' ]
# More disks can be added later using this same method. The path to the
# device or a file can be added. After the first comma is how the device will
# appear. "hda" is the first, "hdb" the second etc. "hda" will appear as IDE,
# sda will appear as SCSI or SATA. After the second comma "r" means read
# only and "w" is for write.
device_model = '/usr/lib/xen-default/bin/qemu-dm'
boot="c"
# The above should be changed once Windows is installed: boot="c" to only
# show the Windows file system, else it may try to boot from the ISO image.
sdl=0
vnc=1
vncpasswd=''
stdvga=0
# nographic=1 #!!! only uncomment this if you are using win8 or are trying
# to get a Nvidia card to work. In my case - Nvidia Quadro 2000 - this was not
# needed.
serial='pty'
tsc_mode=0
viridian=1
#soundhw='all' # I commented it out since it's not relevant to me now.
usb=1 # This allows sharing the USB mouse/keyboard.
usbdevice='tablet' # is recommended; in conjunction with USB=1
gfx_passthru=0
# Leaving this as 0 is how it works for me with my Quadro 2000 card.
# You can change this later for iGPUs or nVdia if needed.
# Try it with 0 first.
pci=[ '02:00.0', '02:00.1' , '00:16.0','00:16.2' ]
# These values are the ones you found out using the lspci command earlier.
# I also passed through an entire USB controller for native support.
# You can use usb-devices to find out to which hub/host the keyboard/mouse
# is connected. I use a USB KVM switch to connect my keyboard/mouse to two
# USB ports residing on different hubs! One - 00:1a.0 - is then passed through
# to the domU.
# The following lets Windows take the local time from the dom0:
localtime=1
System settings

Code: Select all

vmhost ~ # inxi -Fxz
System:    Host: buddy-vmhost Kernel: 3.2.0-23-generic x86_64 (64 bit, gcc: 4.6.3) Desktop: N/A Distro: Linux Mint 13 Maya
Machine:   Mobo: MSI model: 970A-G43 (MS-7693) version: 3.0 Bios: American Megatrends version: V10.0 date: 12/26/2012
CPU:       Single core AMD FX-8320 Eight-Core (-UP-) cache: 2048 KB flags: (lm nx sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3) bmips: 7000.4 
           Clock Speeds: 1: 3500.204 MHz 2: 3500.204 MHz 3: 3500.204 MHz 4: 3500.204 MHz 5: 3500.204 MHz 6: 3500.204 MHz 7: 3500.204 MHz 8: 3500.204 MHz
Graphics:  Card-1: Advanced Micro Devices [AMD] nee ATI Cedar PRO [Radeon HD 5450] bus-ID: 01:00.0 
           Card-2: Advanced Micro Devices [AMD] nee ATI Cedar PRO [Radeon HD 5450] bus-ID: 02:00.0 
           Card-3: S3 86c764/765 [Trio32/64/64V+] bus-ID: 05:05.0 
           X.org: 1.11.3 driver: fglrx tty size: 80x24 Advanced Data: N/A for root 
Audio:     Card-1: Advanced Micro Devices [AMD] nee ATI SBx00 Azalia (Intel HDA) driver: snd_hda_intel bus-ID: 00:14.2
           Card-2: 2x Advanced Micro Devices [AMD] nee ATI Cedar HDMI Audio [Radeon HD 5400/6300 Series] driver: snd_hda_intelpciback bus-ID: 02:00.1
           Sound: Advanced Linux Sound Architecture ver: 1.0.24
Network:   Card: Realtek RTL8111/8168B PCI Express Gigabit Ethernet controller 
           driver: r8169 ver: 2.3LK-NAPI port: c000 bus-ID: 06:00.0
           IF: eth0 state: up speed: 100 Mbps duplex: full mac: <filter>
Drives:    HDD Total Size: 3160.6GB (58.5% used) 1: /dev/sda ST3160815AS 160.0GB 38C 
           2: /dev/sdb WDC_WD30EZRX 3000.6GB 32C 
Partition: ID: / size: 15G used: 13G (88%) fs: ext4 ID: /boot size: 2.0G used: 453M (25%) fs: ext3 
           ID: swap-1 size: 16.78GB used: 0.00GB (0%) fs: swap 
Sensors:   System Temperatures: cpu: 29.0C mobo: N/A gpu: 55.50C 
           Fan Speeds (in rpm): cpu: N/A 
Info:      Processes: 194 Uptime: 13:59 Memory: 810.2/2806.5MB Runlevel: 2 Gcc sys: 4.6.3 Client: Shell inxi: 1.7.33 
gordon.cooke

Re: Fglrx + Xen = No X

Post by gordon.cooke »

To answer soem of the questions
Locuust wrote:where are you actually setting the parameters for pci-back? It appears you've commented it out of /etc/default/grub so you're not loading it with the kernel or initramfs. You got it working with modprobe.d?
I have pci-back configured the way powerhouse describes in his instructions. Thats all, havent used modprobe.d or anything. I think what you are seeing in the grub file is related to hiding the pci addresses with pciback.hide. I was trying to use it, and trying without hiding. When I did that I left the code on a seperate line commeneted out so I could copy paste instead of retyping. So yes it is in the wrong place.
Locuust wrote:Btw, I had to change xen-pciback.hide to pciback.hide in opensuse
FWIW- If you look in the Xen documentation wiki I recall seeing this difference as being related to the version of Xen. Believe its the page on VGA passthrough/ If I recall correctly.
Locuust wrote:What's 00:16.2 btw? Is your bridge really called xenbr0?
02:00.0 is the video card, 02:00.1 is the audio on the graphics card. 00:16.x is a usb port I am passing through. As far as I can tell, 00:16.0 is USB 1.1 and 00:16.2 is USB 2. There is no 00:16.1.
As for xenbr0, yes I just used teh same name powerhouse gave in his instructions for /etc/network/interfaces

@ powerhouse
I actually had things up and running off my restored image last night before you posted, but didnt get to post the update here until tonight. (once I got it running it was time for bed).
powerhouse wrote:Before installing Xen, update to the latest kernel in the repos (3.5.0-27-generic as of today), and update all the packages
I didnt reinstall, so wouldnt be able to do that exactly. I currently have kernel 3.2.0-23-generic (x86_64). If I am reading synaptic correctly I have xen 4.1.2-2ubuntu2.6 which seems most current
powerhouse wrote:After you got Windows to boot successfully, if you want to try, install the fglrx driver under Xen
Right now xorg is using fglrx.
powerhouse
Level 6
Level 6
Posts: 1144
Joined: Thu May 03, 2012 3:54 am
Location: Israel
Contact:

Re: Fglrx + Xen = No X

Post by powerhouse »

@gordon.cooke: Thanks for the update! From what I gather everything is working now. That's good.

And thanks for reminding us about the basics: backup !
Subjects of interest: Linux, vfio passthrough virtualization, photography
See my blog on virtualization, including tutorials: https://www.heiko-sieger.info/category/ ... alization/
powerhouse
Level 6
Level 6
Posts: 1144
Joined: Thu May 03, 2012 3:54 am
Location: Israel
Contact:

Re: Fglrx + Xen = No X

Post by powerhouse »

gordon.cooke wrote:...But new issue I discovered was that I could not get my Win7 domU to load up. (Error about invalid argument)
If you mean this error (taken from dmesg log):

Code: Select all

VmError: (22, 'Invalid argument')
I ran into the same problem after a recent update of the Xen hypervisor to 4.1.3-3ubuntu1.5. Downgrading put me back in business. I put up a warning in my how-to, see http://forums.linuxmint.com/viewtopic.p ... 13#p626162.

Others have already reported this bug. It also seems to have entered into 4.2.x (can't remember the which release exactly). Hope they'll fix it soon.

To avoid automatic updates of the Xen packages, I forced the version under Synaptic. You can also use apt-get.
Subjects of interest: Linux, vfio passthrough virtualization, photography
See my blog on virtualization, including tutorials: https://www.heiko-sieger.info/category/ ... alization/
fusionneur

Re: Fglrx + Xen = No X

Post by fusionneur »

I want to confirm the fglrx + xen 4.1.2 bug where there is no X when booting into XEN

here is /var/log/syslog portion of the boot logs in XEN.
http://shrib.com/fusion
Can someone debug this and tell what is going wrong?


I am using AMD HD 7770 on Ubuntu 12.04 LTS
powerhouse
Level 6
Level 6
Posts: 1144
Joined: Thu May 03, 2012 3:54 am
Location: Israel
Contact:

Re: Fglrx + Xen = No X

Post by powerhouse »

fusionneur wrote:I want to confirm the fglrx + xen 4.1.2 bug where there is no X when booting into XEN

here is /var/log/syslog portion of the boot logs in XEN.
http://shrib.com/fusion
Can someone debug this and tell what is going wrong?


I am using AMD HD 7770 on Ubuntu 12.04 LTS
I'm not an expert on that but I can't see any problem with the syslog. It might be better to look into /var/log/dmesg or kern.log (or kern.log.1) for the log on the last boot.
Subjects of interest: Linux, vfio passthrough virtualization, photography
See my blog on virtualization, including tutorials: https://www.heiko-sieger.info/category/ ... alization/
ropana

Re: Fglrx + Xen = No X

Post by ropana »

It might be worth checking out the link below. I have a Radeon HD 6700M in my laptop and I had the same issue.

http://lists.xen.org/archives/html/xen-devel/2012-03/msg00324.html
powerhouse
Level 6
Level 6
Posts: 1144
Joined: Thu May 03, 2012 3:54 am
Location: Israel
Contact:

Re: Fglrx + Xen = No X

Post by powerhouse »

1. Just for the record: fglrx + Xen = no X seems to refer to isolated cases. I ran/run fglrx with Xen 4.1, 4.2, and now 4.3 and never had any issue. Graphics cards used: Sapphire Radeon 6450 and Sapphire Radeon 7770.

2. It might be worth checking LM16 with Xen 4.3.
Subjects of interest: Linux, vfio passthrough virtualization, photography
See my blog on virtualization, including tutorials: https://www.heiko-sieger.info/category/ ... alization/
Locked

Return to “Virtual Machines”