[PATCH] exa: add low VRAM option.
michel at daenzer.net
Mon Oct 5 02:25:52 PDT 2009
On Mon, 2009-10-05 at 14:42 +1000, Dave Airlie wrote:
> On Mon, 2009-09-28 at 10:13 +0200, Michel Dänzer wrote:
> > On Mon, 2009-09-28 at 14:57 +1000, Dave Airlie wrote:
> > > From: Dave Airlie <airlied at linux.ie>
> > >
> > > This basically stops any accel to non screen pixmap and non
> > > window pixmaps when this option is enabled. It makes my
> > > RN50 at least useable again under KMS.
> > >
> > > I'm mainly producing this to open discussions on whether
> > > there is a better way. I'm defining low VRAM as < 32MB.
> > There has to be a better way in the long run, but in the meantime this
> > could be handled in the driver PixmapIsOffscreen hook?
> I tried this, it fails, server crashes doing a composite operation in
> maybe you need to explain a bit better why you think this should work,
> as to me PixmapIsOffscreen seems like something you call possibly
> after migrating the pixmap.
Right, I was thinking of the code in exaFinishAccess_mixed which checks
IsOffscreen first, but of course that doesn't apply here.
Might it be feasible to return NULL from the CreatePixmap(2) hook for
non-screen pixmaps (or whichever ones you don't want in VRAM)? AFAICT
the mixed pixmaps code should basically handle that, though maybe we
should change exaCreateDriverPixmap_mixed to mark the pixmap as pinned
to prevent repeated calls of the CreatePixmap(2) hook.
Earthling Michel Dänzer | http://www.vmware.com
Libre software enthusiast | Debian, X and DRI developer
More information about the xorg-devel