Question on obtaining root window drawable info Xserver 1.8.2 in Display driver.

Siva 0xf.xor.0xf at gmail.com
Mon Aug 9 14:14:14 PDT 2010


Hi,
I'm running xorg-server 1.8.2 on my device and I have run into
problems with Damage Extension registration in the new Xorg-server
code.

A little bit of history:
I have a system having Intel Integrated graphics with psb driver
(psb_drv.so) and i had modified the driver code to register with
damage extension with no problems in Xserver 1.6.5.

I used in the psb driver load function:

         DrawablePtr RootWinDraw = &WindowTable[DisplayNum]->drawable;

                                                          // Report
Func ,   Clean Func          RawRectangles,      isInternal=TRUE ,
ScreenPtr, CustomStructure
         DamagePtr dmg= DamageCreate(dmgReportFunc, dmgCleanFunc,
DamageReportLevel,   TRUE,             pScr,           pScrn);

        if (dmg)
                                        //DrawablePtr , DamagePtr
              DamageRegister(RootWinDraw,dmg);

This section of code worked correctly in Xserver 1.6.5 and I was able
to obtain damage reports whenever there was a change in screen.

But in the xorg-server 1.8.2, My XServer crashes and I root caused it
to the RootWinDraw pointer. The problem seems to be that the
WindowTable[0]->drawable is not giving me root window anymore.

Is there any way in which i can get the root window drawable from
within the driver? And also what has changed in the WindowTable
mechanism from 1.6.5 to 1.8.2? I didnt find anything different in
their initialization mechanisms.
Any pointers will be very helpful.

Thanks.


More information about the xorg-devel mailing list