[Pkg-xen-devel] Xen + Debian Squeeze + Recent ATI Graphics Card

Stuart Chalmers s_chalmers70 at yahoo.com
Sat Jul 31 23:16:19 UTC 2010


Hi List,

I'm looking for some info regarding the above - I've got a machine with a fairly 
recent ATI Radeon graphics card (RV730XT) installed that ultimately I'd like to 
run Xen with a Debian Squeeze Dom0.

From the reading I've done so far, the situation with graphics cards and PVOPS 
is not entirely clear to me, hence this request.  (N.B. I appreciate that Xen is 
more geared towards servers, but my 'server' is also my workstation as it's the 
most powerful machine that I own!  And apologies in advance for any queries with 
overly obvious answers.)

Here's what I've gathered so far:

- the Xen kernel shipped in Squeeze will be 'PVOPS' rather than 'Xenlinux'
- On these PVOPS kernels there are/were issues with Kernel Mode Setting (KMS), 
Direct Rendering Manager (DRM) etc. (see 
http://wiki.xensource.com/xenwiki/XenPVOPSDRM)
- KMS, DRM, etc. are used to enable acceleration within the (radeon) graphics 
card.  (I believe that the radeon driver currently in Squeeze can also enable 
acceleration without KMS)

What's not so clear to me is how far away DRM (and hence graphics acceleration) 
support is within the PVOPS kernels, specifically the one that will be shipped 
with Squeeze.  The reference above suggests that there are a few issues that 
have been resolved, but I'm not clear if the fixes mentioned are either in the 
current or what will be in the final kernel in Squeeze.  I'm also not clear if 
these patches will allow KMS/DRM to work or whether they are just a step in the 
right direction.  Can anyone provide current information around this, please?

I made a start on attempting to apply the patches, but found that I don't know 
anywhere near enough on the branches and git itself to make any meaningful 
progress.  I'd be more than happy to help test (patched) kernel packages should 
it be worthwhile.

In the meantime, I've made a few 'work arounds' that could prove useful to 
anyone reading:

- I added 'nomodeset' to /boot/grub/grub.cfg for the entries that will boot Xen:

--
  module    /boot/vmlinuz-2.6.32-5-xen-amd64 placeholder 
  module    /boot/vmlinuz-2.6.32-5-xen-amd64 placeholder root=<path to root> ro  
quiet nomodeset
--

- The current Grub in Squeeze (1.98+20100710-1) now adds the 'placeholder' text 
(see above) which was causing me issues previously.  See bug 557645.

- My (Dom0) system boots from an LVM2 volume, so I have raised bug 591093 as I 
had to manually adjust <path to root> in order for Xen to start.  I mentioned 
the 'nomodeset' argument in this report and will update with anything relevant 
here (i.e. if KMS doesn't/won't work at all with Xen it may be worth having 
nomodeset as a default for Xen Grub entries).  [N.B. I was caught out by 
fdisk'ing the LVM partition to start at the (what was the default) 63rd sector - 
not the 2048th - which caused issues with Grub.]

- I had a 'hack' at /etc/init.d/ where I would copy out a specific xorg.conf 
disabling hardware acceleration when booting Xen (rough script below - any 
useful updates welcome).

One final query: are there plans to provide Xen HVM in Squeeze?  I'm sure that I 
saw a package for that somewhere.

Thanks in advance for any information.

--------
Init Script:


#!/bin/sh
# /etc/init.d/conf-xorg-xen: Update xorg.conf according to whether or not Kernel 
Mode Setting set
### BEGIN INIT INFO
# Provides:          conf-xorg-xen
# Required-Start:    mountkernfs $local_fs
# Required-Stop:     
# Default-Start:     S
# Default-Stop:      
# X-Start-Before:    x11-common
### END INIT INFO

XORGSRC=/etc/X11/xorg.conf.xen
XORGFILE=/etc/X11/xorg.conf

case "$1" in
  start)
  if grep "nomodeset" /proc/cmdline > /dev/null 2>&1; then
    echo "Kernel nomodeset option set ... check that $XORGFILE exists"
    if [ -f $XORGFILE ]; then
      echo "$XORGFILE exists ... doing nothing"
    else
      echo "$XORGFILE does not exist ... copying from $XORGSRC"
      cp $XORGSRC $XORGFILE
    fi
  else
    echo "Kernel nomodeset option not set ... check that no $XORGFILE exists"
    if [ -f $XORGFILE ]; then
      echo "$XORGFILE exists ... removing"
      rm $XORGFILE
    else
      echo "$XORGFILE does not exist ... doing nothing"
    fi
  fi
  ;;
  stop)
  ;;
  *)
  echo "Usage: conf-xorg-xen [start|stop]" >&2
  exit 1
  ;;
esac



      



More information about the Pkg-xen-devel mailing list