Semantics of the 'dumb' interface

Alan Cox alan at lxorguk.ukuu.org.uk
Thu Jun 2 11:37:01 PDT 2011


I have GEM allocation working on the GMA 500 and I can scribble in a
framebuffer (minus an odd 'last page' bug which is an off by one
somewhere I imagine) and display it with nice modetest stripes.

If I kill the program however it all goes kerblam

drm_release calls into fb_release which duely destroys the user frame
buffer. This drops the gem object reference and we start to release all
the resources but it blows up because the GEM object is still pinned in
the GTT as it's still being used as scanout.

Where I'm a bit lost right now is understanding what is supposed to
happen at this point, and how the scanout is supposed to have ended up
cleaned up and reset to the system frame buffer beforehand thus unpinning
the scanout from the GTT.

Alan


More information about the dri-devel mailing list