Re: Can't hook into the Double Buffer extension.

2014-10-02 Thread Stirling Westrup
On Tue, Sep 16, 2014 at 10:41 AM, Adam Jackson a...@nwnk.net wrote:

 On Fri, 2014-09-12 at 14:59 -0400, Stirling Westrup wrote:
  I am writing a video driver for which I'd like to support the Double
  Buffer Extension. However I need to hook some of the calling functions
  described xorg/dbestruct.h, especially 'AllocateBackBuffer' and
  'SwapBuffers'.

 You found an app that uses it?  Impressive.


Not so surprising. I wrote the app. Basically we're trying to get
frame-perfect synchronization across 16 instantiations of Xorg, all running
on one server and talking via USB to 16 zero clients. Its a software-based
video wall, and it works decently well.

Alas the zero clients don't have either GL or DRI support, so I'm having to
go old school with what extensions I use.

The plan was to use the X Synchronization library and the DBE to time the
frame changes in the video wall, but both of these have API issues and
would need patches. (You can't currently create a new class of clock for X
Sync).


At the moment, yeah.  Not so much out of malice as neglect, the
 extension is not widely used and none of the open (or closed!) drivers
 attempts to support it specially.  I wouldn't object to a patch,
 although I'd at least like to see it done with accessor functions that
 return the window/screen private pointer rather than by exporting the
 private keys.


That would be my approach as well, were I to write a patch. Currently the
'improved frame sync' feature for our wall is on hold due to more critical
issues in our product which have recently turned up.  When we get back to
it, I'll submit some patches for X Sync and DBE.


 Ideally we'd do what the GLX spec says and unify the view of the back
 buffer across extensions, which I guess could include DRI3 at this
 point.


I'm not very much up on either the GLX or DRI specs, so I'm not sure how
that would affect the design of the interfaces.



-- 
Stirling Westrup
Programmer, Entrepreneur.
https://www.linkedin.com/e/fpf/77228
http://www.linkedin.com/in/swestrup
http://technaut.livejournal.com
http://sourceforge.net/users/stirlingwestrup
___
xorg@lists.x.org: X.Org support
Archives: http://lists.freedesktop.org/archives/xorg
Info: http://lists.x.org/mailman/listinfo/xorg
Your subscription address: %(user_address)s

Re: Can't hook into the Double Buffer extension.

2014-10-02 Thread Stirling Westrup
On Tue, Sep 16, 2014 at 10:41 AM, Adam Jackson a...@nwnk.net wrote:

 On Fri, 2014-09-12 at 14:59 -0400, Stirling Westrup wrote:
  I am writing a video driver for which I'd like to support the Double
  Buffer Extension. However I need to hook some of the calling functions
  described xorg/dbestruct.h, especially 'AllocateBackBuffer' and
  'SwapBuffers'.

 You found an app that uses it?  Impressive.


Not so surprising. I wrote the app. Basically we're trying to get
frame-perfect synchronization across 16 instantiations of Xorg, all running
on one server and talking via USB to 16 zero clients. Its a software-based
video wall, and it works decently well.

Alas the zero clients don't have either GL or DRI support, so I'm having to
go old school with what extensions I use.

The plan was to use the X Synchronization library and the DBE to time the
frame changes in the video wall, but both of these have API issues and
would need patches. (You can't currently create a new class of clock for X
Sync).


At the moment, yeah.  Not so much out of malice as neglect, the
 extension is not widely used and none of the open (or closed!) drivers
 attempts to support it specially.  I wouldn't object to a patch,
 although I'd at least like to see it done with accessor functions that
 return the window/screen private pointer rather than by exporting the
 private keys.


That would be my approach as well, were I to write a patch. Currently the
'improved frame sync' feature for our wall is on hold due to more critical
issues in our product which have recently turned up.  When we get back to
it, I'll submit some patches for X Sync and DBE.


 Ideally we'd do what the GLX spec says and unify the view of the back
 buffer across extensions, which I guess could include DRI3 at this
 point.


I'm not very much up on either the GLX or DRI specs, so I'm not sure how
that would affect the design of the interfaces.



-- 
Stirling Westrup
Programmer, Entrepreneur.
https://www.linkedin.com/e/fpf/77228
http://www.linkedin.com/in/swestrup
http://technaut.livejournal.com
http://sourceforge.net/users/stirlingwestrup
___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Re: Can't hook into the Double Buffer extension.

2014-09-16 Thread Adam Jackson
On Fri, 2014-09-12 at 14:59 -0400, Stirling Westrup wrote:
 I am writing a video driver for which I'd like to support the Double
 Buffer Extension. However I need to hook some of the calling functions
 described xorg/dbestruct.h, especially 'AllocateBackBuffer' and
 'SwapBuffers'.

You found an app that uses it?  Impressive.

 However, the only way to access them is via the private key for dbe,
 and its not exported. Am I missing something, or is it really
 impossible to hook those functions?

At the moment, yeah.  Not so much out of malice as neglect, the
extension is not widely used and none of the open (or closed!) drivers
attempts to support it specially.  I wouldn't object to a patch,
although I'd at least like to see it done with accessor functions that
return the window/screen private pointer rather than by exporting the
private keys.

Ideally we'd do what the GLX spec says and unify the view of the back
buffer across extensions, which I guess could include DRI3 at this
point.

- ajax

___
xorg@lists.x.org: X.Org support
Archives: http://lists.freedesktop.org/archives/xorg
Info: http://lists.x.org/mailman/listinfo/xorg
Your subscription address: %(user_address)s


Re: Can't hook into the Double Buffer extension.

2014-09-16 Thread Adam Jackson
On Fri, 2014-09-12 at 14:59 -0400, Stirling Westrup wrote:
 I am writing a video driver for which I'd like to support the Double
 Buffer Extension. However I need to hook some of the calling functions
 described xorg/dbestruct.h, especially 'AllocateBackBuffer' and
 'SwapBuffers'.

You found an app that uses it?  Impressive.

 However, the only way to access them is via the private key for dbe,
 and its not exported. Am I missing something, or is it really
 impossible to hook those functions?

At the moment, yeah.  Not so much out of malice as neglect, the
extension is not widely used and none of the open (or closed!) drivers
attempts to support it specially.  I wouldn't object to a patch,
although I'd at least like to see it done with accessor functions that
return the window/screen private pointer rather than by exporting the
private keys.

Ideally we'd do what the GLX spec says and unify the view of the back
buffer across extensions, which I guess could include DRI3 at this
point.

- ajax

___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel


Can't hook into the Double Buffer extension.

2014-09-12 Thread Stirling Westrup
I am writing a video driver for which I'd like to support the Double Buffer
Extension. However I need to hook some of the calling functions described
xorg/dbestruct.h, especially 'AllocateBackBuffer' and 'SwapBuffers'.

However, the only way to access them is via the private key for dbe, and
its not exported. Am I missing something, or is it really impossible to
hook those functions?


-- 
Stirling Westrup
Programmer, Entrepreneur.
https://www.linkedin.com/e/fpf/77228
http://www.linkedin.com/in/swestrup
http://technaut.livejournal.com
http://sourceforge.net/users/stirlingwestrup
___
xorg@lists.x.org: X.Org support
Archives: http://lists.freedesktop.org/archives/xorg
Info: http://lists.x.org/mailman/listinfo/xorg
Your subscription address: %(user_address)s

Can't hook into the Double Buffer extension.

2014-09-12 Thread Stirling Westrup
I am writing a video driver for which I'd like to support the Double Buffer
Extension. However I need to hook some of the calling functions described
xorg/dbestruct.h, especially 'AllocateBackBuffer' and 'SwapBuffers'.

However, the only way to access them is via the private key for dbe, and
its not exported. Am I missing something, or is it really impossible to
hook those functions?


-- 
Stirling Westrup
Programmer, Entrepreneur.
https://www.linkedin.com/e/fpf/77228
http://www.linkedin.com/in/swestrup
http://technaut.livejournal.com
http://sourceforge.net/users/stirlingwestrup
___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel