Bug 2192 - RFE: Port the SolarisIA extension to the Xorg Xserver
RFE: Port the SolarisIA extension to the Xorg Xserver
Status: ASSIGNED
Product: xorg
Classification: Unclassified
Component: * Other
unspecified
All Solaris
: high enhancement
Assigned To: Alan Coopersmith
Xorg Project Team
2011BRB_Reviewed
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2005-01-02 10:38 UTC by Roland Mainz
Modified: 2011-09-25 08:41 UTC (History)
3 users (show)

See Also:
i915 platform:
i915 features:


Attachments
Server side of SolarisIA extension (21.59 KB, text/plain)
2005-08-31 09:59 UTC, Alan Coopersmith
no flags Details
xc/include/extensions/interactive.h (shared by client-side and server-side) (3.78 KB, text/plain)
2005-08-31 10:04 UTC, Alan Coopersmith
no flags Details
xc/include/extensions/interactiveCommon.h (1.75 KB, text/plain)
2005-08-31 10:05 UTC, Alan Coopersmith
no flags Details
xc/lib/X11/XInteractive.c (client side of extension protocol) (8.65 KB, text/plain)
2005-08-31 10:09 UTC, Alan Coopersmith
no flags Details
Patch to xc/lib/X11/OpenDis.c (2.59 KB, patch)
2005-08-31 10:15 UTC, Alan Coopersmith
no flags Details | Splinter Review

Note You need to log in before you can comment on or make changes to this bug.
Description Roland Mainz 2005-01-02 10:38:35 UTC
RFE: Port the SolarisIA extension to the Xorg Xserver (=on Solaris as only this
OS has the neccesary kernel infratructure (IA scheduler class etc.)).
Right now this extension currently only exists in the Solaris Xsun server but
not for the stock Xorg server on Solaris, making interactive usage on multiuser
systems slightly more sluggish...
Comment 1 Alan Coopersmith 2005-01-02 10:58:47 UTC
I've already done the port for the Xorg server delivered in Solaris, just need
to work on getting it released back to the open source version.
Comment 2 Alan Coopersmith 2005-08-31 09:59:37 UTC
Created attachment 3135 [details]
Server side of SolarisIA extension
Comment 3 Alan Coopersmith 2005-08-31 10:04:03 UTC
Created attachment 3136 [details]
xc/include/extensions/interactive.h (shared by client-side and server-side)
Comment 4 Alan Coopersmith 2005-08-31 10:05:17 UTC
Created attachment 3137 [details]
xc/include/extensions/interactiveCommon.h
Comment 5 Alan Coopersmith 2005-08-31 10:09:12 UTC
Created attachment 3138 [details]
xc/lib/X11/XInteractive.c (client side of extension protocol)
Comment 6 Alan Coopersmith 2005-08-31 10:15:25 UTC
Created attachment 3139 [details] [review]
Patch to xc/lib/X11/OpenDis.c
Comment 7 Alan Coopersmith 2005-08-31 10:20:58 UTC
Okay - I think that's everything needed to use it in Xorg.   The original Usenix
paper describing the work that led to this is at:
http://www.usenix.org/publications/library/proceedings/cinci93/full_papers/evans.txt

A small bit of documentation on the IA priority control scheduler in Solaris
that this uses can be found at:
http://docs.sun.com/app/docs/doc/817-0689/6mgfkpd12?a=view#Inter-Active%20Class
and of course in the Solaris kernel sources at:
http://cvs.opensolaris.org/source/

Before we actually integrate it into Xorg though, I think we need to consider what
to do about non-Solaris platforms, including:
 - abstracting out the priocntl/etc. calls into a wrapper which can be implemented
   differently for each OS
 - renaming it to something more generic and more descriptive than "SolarisIA"
Comment 8 Jim Gettys 2005-08-31 10:45:41 UTC
(In reply to comment #7)
> Okay - I think that's everything needed to use it in Xorg.   The original Usenix
> paper describing the work that led to this is at:
>
http://www.usenix.org/publications/library/proceedings/cinci93/full_papers/evans.txt
> 
> A small bit of documentation on the IA priority control scheduler in Solaris
> that this uses can be found at:
> http://docs.sun.com/app/docs/doc/817-0689/6mgfkpd12?a=view#Inter-Active%20Class
> and of course in the Solaris kernel sources at:
> http://cvs.opensolaris.org/source/
> 
> Before we actually integrate it into Xorg though, I think we need to consider what
> to do about non-Solaris platforms, including:
>  - abstracting out the priocntl/etc. calls into a wrapper which can be implemented
>    differently for each OS
>  - renaming it to something more generic and more descriptive than "SolarisIA"


There are also some other interesting approaches that need exploration: in
particular, having scheduler credits traded back and forth between the X server
and clients as messages go back and forth, rather than the general schedular
behavior.

And, of course, we have to fix our broken drivers not to gratuitously use CPU
and thereby causing the X server to look like a CPU pig (which it is, at the
moment).
Comment 9 Daniel Stone 2007-02-27 01:24:57 UTC
Sorry about the phenomenal bug spam, guys.  Adding xorg-team@ to the QA contact so bugs don't get lost in future.
Comment 10 Jeremy Huddleston 2011-09-24 17:24:49 UTC
Alan, is this still relevant?
Comment 11 Alan Coopersmith 2011-09-25 08:41:35 UTC
(In reply to comment #10)
> Alan, is this still relevant?

We still ship this extension as a local patch to Xorg and still haven't
gotten around to upstreaming it, so yes, I think it is.