Dispatching and scheduling--basic questions

Peter Harris peter.harris at hummingbird.com
Wed Sep 17 10:30:38 PDT 2008

Daniel Stone wrote:
> What happens when an XGetImage
> requires a complete GPU sync (forget software rendering for a moment),
> which takes a while, then a copy? Bonus points if you have to stall to
> clean its MMU, too.  Then you memcpy it into SHM and get that out to
> the client, but in the meantime, all your other clients waiting for
> trivial requests are doing just that: waiting.

In a hypothetical future scheduler, all that time should be charged
against the client requesting the GetImage. Plus some extra, for abusing

"This request is not general-purpose in the same sense as other
graphics-related requests. It is intended specifically for rudimentary
hardcopy support."

I suspect that we could keep up with most commodity printers even if we
put the client to sleep for a full second each time it calls GetImage.

I'd cheer if ProcGetImage was replaced with "return BadAccess;", so take
anything I say on this subject with a grain of salt.

Peter Harris
     Hummingbird Connectivity - A Division of Open Text
Peter Harris                    http://connectivity.hummingbird.com
Research and Development        Phone: +1 905 762 6001
peter.harris at hummingbird.com    Toll Free: 1 877 359 4866

More information about the xorg mailing list