On 27 Apr 2002, Michel Dänzer wrote:

> On Sat, 2002-04-27 at 09:50, José Fonseca wrote:
> > On 2002.04.26 12:42 Michel Dänzer wrote:
> > > On Fri, 2002-04-26 at 00:41, Peter Andersson wrote:
> > > >
> > > > I tried the backtrace option but it only produced a bunch of numbers
> > > and
> > > > letters, and since i am not exactly sure if i am able to read them
> > > right
> > > > i don´t think they are useful for anyone, but if you want me to give it
> > > > a try please let me know.
> > > 
> > > If you provide the System.map corresponding to the kernel to yaboot,
> > > xmon will show symbol names. This is my default yaboot label:
> > > 
> > > image=/vmlinux
> > >   label=Debian
> > >   sysmap=/System.map
> > > 
> > 
> > Peter, could you try this so that we could pin point where the fault 
> > occurred exactly. I don't know if it's needed to recompile the kernel to 
> > have more symbol information. On the x86 there is a specific option for 
> > that in the kernel configuration.
> 
> That's not necessary for xmon.
> 
> > In the mean while I'll try look at the last kmsg debug statements to see 
> > if I found any further clue.
> 
> Isn't it the buglet Leif fixed tonight?

I changed virt_to_phys to virt_to_bus like you suggested, but that's in
the _dispatch_vertex.  In the system log that Peter posted, the last
message before the _vm_dma_nopage was _dispatch_clear, which is currently
a _wait_for_fifo followed by a series of MMIO writes.  Peter, if you set 
MACH64_VERBOSE to 1 in mach64_drv.h and rebuild the DRM, you should see a 
debug statement for each register access.  This could help us find the 
problem.  That being said though, I don't see where the _vm_dma_nopage 
comes in between _dispatch_clear and the missing debug statement from 
_dma_vertex.

BTW, since I checked in my changes, I've been having problems with the PCI
path again.  Jose, I did most of my testing before merging your changes to
the vertex buffer private struct (for aging), but I don't really see why
that would cause a problem.  I thought I had tested this after I updated,
but it's possible that I forgot to remove agpgart or something.  I think
this would be easier to deal with if the PCI path used the new PCI DMA
interface like I'm doing with the descriptor table, so we wouldn't have to
use the deprecated virt_to_bus.  From what I can see, the buf->address
basically comes from __get_free_pages which is called by DRM(alloc_pages).

When we get the MMIO path working for ppc, I think we'll still have to 
make some changes for DMA.  When filling the vertex buffers and setting up 
the descriptor tables, won't we have to convert to little-endian?

-- 
Leif Delgass 
http://www.retinalburn.net




_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to