Subject: Re: [vserver] xorg inside of vguest slower than on host
From: "Roderick A. Anderson" <raanders@acm.org>
Date: Fri, 07 Dec 2007 08:23:51 -0800

Herbert Poetzl wrote:
> On Fri, Dec 07, 2007 at 08:17:06AM +0100, Stephan Mueller wrote:
>> Hi,
>>
>> I managed to setup xorg 7.2 inside of a vguest by adding the device
>> nodes tty7, mem and psaux as well as adding the SYS_RAWIO b-capability
>> (fllowing the howto in the wiki).
>>
>> However, the xorg instance inside of the vguest seems to be much slower
>> (when moving windows etc.) than one that is running on the host (same
>> xorg release, both using debian lenny).
>>
>> I took a look at both resulting Xorg.logs and the only significant
>> difference i can see is that the log from the host conatins lines as
>> shown below whereas the vguests log does not have this kind of entries:
>>
>> (II) PCI: PCI scan (all values are in hex)
>> (II) PCI: 00:00:0: chip 1002,7910 card 1458,5000 rev 00 class 06,00,00 hdr 00
>> (II) PCI: 00:01:0: chip 1002,7912 card 0000,0000 rev 00 class 06,04,00 hdr 01
>> (II) PCI: 00:12:0: chip 1002,4380 card 1458,b002 rev 00 class 01,06,01 hdr 00
>> (II) PCI: 00:13:0: chip 1002,4387 card 1458,5004 rev 00 class 0c,03,10 hdr 80
>> (II) PCI: 00:13:1: chip 1002,4388 card 1458,5004 rev 00 class 0c,03,10 hdr 00
>> [...]
>>
>> This seems to result in the line
>>
>> (II) Setting vga for screen 0.
>>
>> which I can not find in the vguest log.
>>
>> For me this looks like the vguest does not have direct access to the
>> graphics card.
> 
> could easily be ... Xorg does quite a number of low
> level things (messing with the hardware)
> 
>> Any ideas if and how this could be improved? 
> 
> you could, for a start, throw a bunch of capabilities
> at the guest and disable (for testing) the proc hiding
> 
>> I would rather prefer running the xorg stuff inside of a vguest
>> instead of on the host which is hosting several other vguests. 
> 
>> A look at the lsof output for /dev did not reveal any other devices
>> used by xorg on the host that are missing on the vguest.
> 
> it could get various device and control nodes/entries
> from proc and/or sys .. check for those too (maybe
> even strace a simple Xorg startup)
> 
> if you are interested in improving X (hardware access)
> inside a guest, please let me know, if a number of folks
> show interest and volunteer to test stuff, we could work
> on improving X (hardware access) for certain guests

I am interested.  I will have a system _just_ for testing, hopefully, 
next week.


Rod
-- 
> 
> best,
> Herbert
> 
>> Thanks and cheers,
>>
>> Steph.