|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] Nouveau on dom0
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
|
|
|
|
|