Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 17 Dec 2009 09:37:39 -0500
From:      "Greg Rowe" <greg@rowes.org>
To:        "'Robert Noland'" <rnoland@FreeBSD.org>
Cc:        freebsd-x11@FreeBSD.org
Subject:   RE: Radeon HD4850 DRI Issues
Message-ID:  <6D9629ACBA89464799BD1DD1C50CBA10@GregPC>
In-Reply-To: <1261004962.26065.29.camel@balrog.2hip.net>
References:  <200912071550.56061.greg@rowes.org> <1261004962.26065.29.camel@balrog.2hip.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Thanks Robert, 
 My system is available for any testing you may need as you work on a fix. I
can wipe it and get to any software level you need.

Greg
> Ok, I've found the issue now... It is a somewhat invasive solution
> though, so it will take me a little time.
> 
> Basically, the issue is this.  We create a list of maps either in the
> kernel or via userland requesting them to be added.  Each map has an
> offset associated with it for mmap.  Mostly the offsets are all kernel
> virtual addresses, but a few (register and framebuffer maps) are
> physical addresses.  On i386, when we allocate scatter gather memory for
> the GART aperture (32Mb on radeon) it is being allocated at the end of
> the kva space.  I have gone back and looked at all of the reports of
> this that I have and the framebuffer is always at 0xe0000000.  When the
> kva returned by bus_dma overlaps with the physical address of the
> framebuffer, we match the incorrect map when mmap is called and
> therefore we are actually mapping the ring buffer inside of the
> framebuffer, rather that out of the scatter gather memory where it
> belongs.
> 
> I have never seen this issue on amd64.  On i386 when the framebuffer is
> located lower than 0xe0000000 things mostly work as well.  I have to
> overhaul the way that we handle mmap offsets to get this sorted out and
> possibly make a couple of changes to libdrm, which is shared code.
> 
> robert.
> 
> > Thanks,
> > Greg
> >
> > _______________________________________________
> > freebsd-x11@freebsd.org mailing list
> > http://lists.freebsd.org/mailman/listinfo/freebsd-x11
> > To unsubscribe, send any mail to "freebsd-x11-unsubscribe@freebsd.org"
> --
> Robert Noland <rnoland@FreeBSD.org>
> FreeBSD
> 





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6D9629ACBA89464799BD1DD1C50CBA10>