Re: [PULL] XResource extension v1.2

2011-02-18 Thread Keith Packard
On Thu, 03 Feb 2011 14:07:16 +0200, Erkki Seppala  
wrote:
> Hello,
> 
> Here is the pull request for introducing and implementing XResource 
> extension v1.2. We decided against sending the patches to avoid spamming 
> the list, but we can send them on request. We have taken into account 
> all the review comments from the list so far. (Thanks for reviewing!)

Just so you know I'm not ignoring you, this extension looks like it's in
good shape, but I'm not planning on merging it for 1.10 as we're well
past the feature merge window.

-- 
keith.pack...@intel.com


pgphqZzua4sjO.pgp
Description: PGP signature
___
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: [PULL] XResource extension v1.2

2011-02-03 Thread Daniel Poelzleithner
On 02/03/2011 01:07 PM, Erkki Seppala wrote:

> Version 1.2 provides the ability to determine the real PID of all
> the clients and the capability to accurately account for the
> resources used by them.

I'm maintainer of ulatencyd, a daemon that optimizes the linux scheduler
and other subsystems depending on scriptable rules.
Currently mainly focused on desktop usage and there I struggle with
exactly this problem.

Whats easy for other operation systems is extremely difficult with X.
What the user expects from a desktop system is, that the current program
he uses as well as the the desktop ui should always run smooth. If the
system is overloaded with some background tasks, the program in front
should always get enough cpu shares for running smooth.

Currently I'm observing X, looking for the _NET_ACTIVE_WINDOW property
in the root window and then their _NET_WM_PID property. Then looking if
WM_CLIENT_MACHINE fits, too.
This works for gtk/qt apps quite good, other GUI frameworks don't set
_NET_WM_PID at all.
OpenOffice, xine and none of the games I tested so far set _NET_WM_PID
and can't therefor be detected.

I have a game configuration pending that just doesn't work because I
can't detect what process the actual game is... Got some ideas for
workarounds, but they are ugly as hell and very unsure.

This extension will help solving this problem on the right place, so I'm
1000% for merging it :-)



[1] https://github.com/poelzi/ulatencyd/

kind regards
 Daniel



signature.asc
Description: OpenPGP digital signature
___
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

[PULL] XResource extension v1.2

2011-02-03 Thread Erkki Seppala

Hello,

Here is the pull request for introducing and implementing XResource 
extension v1.2. We decided against sending the patches to avoid spamming 
the list, but we can send them on request. We have taken into account 
all the review comments from the list so far. (Thanks for reviewing!)


Version 1.2 provides the ability to determine the real PID of all the 
clients and the capability to accurately account for the resources used 
by them. Not all resources yet support calculating their sizes, but 
support for particular resource types can be added later as required by 
adding small local changes to register their resource calculation 
functions with this code.


There never was a real v1.1 of the resource extension due to an 
accidental release of version 1.1 in the repositories. This is mentioned 
in the protocol description.


These patches include a generic implementation of hash tables as well, 
instead of implementing one intertwined with the rest of the code. The 
implementation isn't particularly optimized, but is suitable for this 
use and can be further optimized in the future, should the data 
structure find other, more performance-critical, uses.


Current version of this extension also includes XCB XML description, 
supported by a variant of the test program. So it turns out it was 
flexible enough after all :).


The extension has been tested. A tool to help testing can be found from:

  git://gitorious.org:erkkise/xres-test.git

Cc'd to interested parties.

===
The following changes since commit 386946098f97b9137af3265b5608fdcf22c7d49a:
  Alan Coopersmith (1):
Add missing XFree86 copyright notice to COPYING

are available in the git repository at:

  g...@gitorious.org:erkkise/fdo-resourceproto.git client-tracking

Erkki Seppälä (1):
  Protocol records for XRes v1.2

Rami Ylimäki (1):
  Added protocol description for XRes v1.2

===
The following changes since commit 
ecb0cb424a93e7de7671353d9514a8bf193ad678:

  Gaetan Nadon (1):
config: replace deprecated AM_CONFIG_HEADER with AC_CONFIG_HEADERS

are available in the git repository at:

  g...@gitorious.org:erkkise/fdo-libXRes.git client-tracking

Erkki Seppälä (2):
  Implemented first part of XResource extension v1.2: 
XResQueryClientIds
  Implemented second part of XResource extension v1.2: 
XResQueryResourceBytes

===
The following changes since commit c4497cdbf0640c376cdebb0a9e5ea62458e6ba51:
  Peter Harris (1):
Merge branch 'master' of 
git://anongit.freedesktop.org/~peterh/xcbproto


are available in the git repository at:

  g...@gitorious.org:erkkise/fdo-xcb-proto.git client-tracking

Erkki Seppälä (1):
  Prototype for XRes v1.2

===
The following changes since commit ea1ffd3e60bdcedbec5a6f28929f8677bf45d450:
  Keith Packard (1):
Merge remote branch 'whot/for-keith'

are available in the git repository at:

  g...@gitorious.org:erkkise/fdo-xserver.git client-tracking

Erkki Seppälä (6):
  Implemented first part of XResource extension v1.2: 
X_XResQueryClientIds

  dix: add a mechanism for iterating through all subresources
  dix: add hashing functions to resource.h for others to use.
  dix: add a generic hashtable implementation
  dix: add reference count of the resource to ResourceSizeRec
  Xext: add support for X_XResQueryResourceBytes

Rami Ylimäki (5):
  render: Report pixmap usage of pictures to resource extension.
  composite: Report pixmap usage of client windows to resource 
extension.

  dix: Add reverse resource name lookup function to registry.
  dix: Add facilities for client ID tracking.
  Xext: Use general OS functions to determine client command string 
in SELinux.

___
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