On Mon, 26 Nov 2007, Bankim Bhavsar wrote:

I'm implementing Xv extension of linux X driver.

I need to use offscreen memory to allocate space for incoming video-frames.
Currently, I am using xf86InitFBManager() part of xf86fbman.h to
initialize offscreen memory by specifying a BoxPtr. The offscreen
memory is initialized such that it starts just after the on-screen
memory (using Frame Buffer Size).

When there is a ModeSwitch the Frame Buffer Size changes and the
offscreen memory previously allocated becomes a part of the on-screen
memory and causes X to crash. I was thinking of re-initalizing the
Offscreen memory manager on ModeSwitch and modify the previously
allocated pointers accordingly but I don't see a way to re-initialize
the offscreen memory.

One possible solution would be to leave some space before starting the
offscreen memory. That would work for common case but still doesn't
guarantee the framebuffer extending into the previously initialized
offscreen memory.

I also looked into EXA but doesn't seem to serve the purpose either.

Am I missing out on something? Any other possible solution?
Can someone point me to a driver that uses EXA and handles the offscreen
memory on ModeSwitch?

No, mode switches are irrelevent. xf86InitFBManager() factors out the _virtual_ resolution, not the physical one. If you are seeing crashes, it's because your driver incorrectly uses a virtual resolution that does not include all physical modes the user can switch to.


|  Marc Aurele La France           |  work:   1-780-492-9310          |
|  Academic Information and        |  fax:    1-780-492-1729          |
|    Communications Technologies   |  email:  [EMAIL PROTECTED]         |
|  352 General Services Building   +----------------------------------+
|  University of Alberta           |                                  |
|  Edmonton, Alberta               |    Standard disclaimers apply    |
|  T6G 2H1                         |                                  |
|  CANADA                          |                                  |
Devel mailing list

Reply via email to