[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] Nouveau on dom0


  • To: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
  • From: Arvind R <arvino55@xxxxxxxxx>
  • Date: Fri, 26 Feb 2010 21:04:33 +0530
  • Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
  • Delivery-date: Fri, 26 Feb 2010 07:34:59 -0800
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=x6aH22EpvXNPTp1j3dyurcsn+km+aegEzJCih0MEOOm8BFh3zZUp4H5Net0+MVOVqe CzSSE9+XbQKludZR1Kf2ezsBENMs4IcplbCkJvYWA1ejy3crieviodyHSMB03EkaDjNR 22G55cskJsOYRS0+l3K3n1KdC/OzGLGJZTZdM=
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>

On Thu, Feb 25, 2010 at 11:14 PM, Konrad Rzeszutek Wilk
<konrad.wilk@xxxxxxxxxx> wrote:
> On Thu, Feb 25, 2010 at 09:01:48AM -0800, Arvind R wrote:
>> On Thu, Feb 25, 2010 at 6:25 PM, Konrad Rzeszutek Wilk
>> <konrad.wilk@xxxxxxxxxx> wrote:
>> > On Thu, Feb 25, 2010 at 02:16:07PM +0530, Arvind R wrote:
>> >> Hi all,
>> >> I merged the drm-tree from 2.6.33-rc8 into jeremy's 2.6.31.6 master and
>> ======= snip =======
>> > is not. Would it be possible to trace down who allocates that *chan? You
>> > say it is 'PRAMIN' - is that allocated via pci_alloc_* call?
======= snip =======
>> So, there must be a mmap call somewhere to map the area to user-space
>> for that problem write to work on non-Xen boots. Will try track down some 
>> more
>> and post. With mmaps and PCIGARTs - it will be some hunt!
 ======= snip =======
> to the drm_radeon driver which used it as a ring buffer. Took a bit of
> hoping around to find who allocated it in the first place.
>
After a lot of reboots and log viewing:
The pushbuf (FIFO/RING) is the only means of programming the card DMA
activity. It is exposed to user-space by mmap of the drm_device (PCI) handle
with different offsets for each channel. Parameters are associated to the DMA
command using ioctls to bind channels/sub-channels/contexts. This mmap is
in the libdrm2 library. Libdrm channel/accelerator  initialization and
setup chores
 and the DDX driver (xf86-video-nouveau) more-or-less acts thro' libdrm.

My suspicion is that Xen has some problems with mmap of PCI(E) device
memory. How is iomem handled in a mmap?

As of now, accelerator on Xen stops right at the initialisation stage - when
libdrm tries to set up the accelerator-engine in the course of ScreenInit. And
to do that, it cannot write the command to setup the basic 2D engine.

Suggestions?

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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.