Alan Coopersmith
2006-Oct-30 22:59 UTC
[dtrace-discuss] [Fwd: Xserver provider for DTrace [PSARC/2006/609 Timeout: 11/06/2006]]
Thanks to a couple of gentle prods from the JDS team, I''ve finally
submitted the
ARC fasttrack to add the Xserver dtrace probes to the Xservers shipped in
Solaris. There''s only been one probe added since the original
release, the
send-event probe, though others can always be added in the future should
the need arise. (Should anyone wish to comment to the ARC reviewing this,
I believe you can mail opensolaris-arc at opensolaris.org, though you may have
to send it to psarc-ext at sun.com - I''m not clear on the current state
of the
proposed changes.)
-Alan Coopersmith- alan.coopersmith at sun.com
Sun Microsystems, Inc. - X Window System Engineering
-------- Original Message --------
Subject: Xserver provider for DTrace [PSARC/2006/609 Timeout: 11/06/2006]
Date: Mon, 30 Oct 2006 14:45:51 -0800 (PST)
From: Alan Coopersmith <alanc at sac.sfbay.sun.com>
To: PSARC at sac.sfbay.sun.com
Subject: PSARC FastTrack [11/06/2006]: Xserver provider for DTrace
I am sponsoring this case for myself with a timeout of Monday, Nov. 6.
Template Version: @(#)sac_nextcase %I% %G% SMI
1. Introduction
1.1. Project/Component Working Name:
Xserver provider for DTrace
1.2. Name of Document Author/Supplier:
Author: Alan Coopersmith
1.3 Date of This Document:
30 October, 2006
4. Technical Description
Xserver provider for DTrace
==========================
This case introduces a User-land Statically Defined Tracing (USDT) DTrace
provider for X11 servers. This provider instruments various points in
the X server, to allow tracing what client applications are up to.
These probes will be included in the main X server applications shipped
in the Solaris X Consolidation: Xorg, Xsun, Xprt, Xnest, Xvfb.
Since this case only adds functionality and makes no visible changes to
existing interfaces, it seeks a Patch release binding.
Descriptions of the probes and their arguments are in the Xserver-probes.html
file in the case materials. [For those reading this outside the Sun firewall,
you can reference the copy at http://people.freedesktop.org/~alanc/dtrace/
now, or the case materials should be automatically mirrored to the case
directory in the ARC community on opensolaris.org shortly.]
Where possible, data formats and structures used are taken directly from the
X11 Protocol wire formats, which are well defined and have been a stable
standard interface for over 20 years.
The probe definitions are annotated with these stability levels (the stability
facility in DTrace still uses the previous stability taxonomy names):
#pragma D attributes Unstable/Unstable/Common provider Xserver provider
#pragma D attributes Private/Private/Unknown provider Xserver module
#pragma D attributes Private/Private/Unknown provider Xserver function
#pragma D attributes Unstable/Unstable/Common provider Xserver name
#pragma D attributes Unstable/Unstable/Common provider Xserver args
Imported Interfaces:
--------------------
X11 Protocol, Revision 6.7 Stable X.Org Standard
User-land Statically Defined Tracing (USDT) Evolving PSARC 2004/624
Exported Interfaces:
--------------------
Xserver provider Uncommitted
Xserver probe names & data Uncommitted
Xserver binary file names & function names which
may be exposed via these probes Project Private
6. Resources and Schedule
6.4. Steering Committee requested information
6.4.1. Consolidation C-team Name:
X Consolidation / Desktop C-Team
6.5. ARC review type: FastTrack
Alan Coopersmith
2006-Nov-23 01:44 UTC
[dtrace-discuss] Re: [Fwd: Xserver provider for DTrace [PSARC/2006/609 Timeout: 11/06/2006]]
Forgot to mention here, the PSARC fasttrack I forwarded earlier was
approved, and the probes are putback to Xsun & Xorg in nv_53, and in
the X.Org community codebase in the branch that will become X11R7.3
in about 6 months.
Those inside Sun who''ve already installed the nv_53 ISO''s that
were
released internally earlier today can now see this in the default
install:
# dtrace -l -n ''Xserver*:::''
ID PROVIDER MODULE FUNCTION NAME
10 Xserver591 Xorg ClientAuthorized
client-auth
11 Xserver591 Xorg AuthAudit
client-auth
12 Xserver591 Xorg EstablishNewConnections
client-connect
13 Xserver591 Xorg AllocLbxClientConnection
client-connect
14 Xserver591 Xorg CloseDownRetainedResources
client-disconnect
15 Xserver591 Xorg CloseDownClient
client-disconnect
16 Xserver591 Xorg ProcKillClient
client-disconnect
17 Xserver591 Xorg Dispatch
client-disconnect
18 Xserver591 Xorg Dispatch
request-done
19 Xserver591 Xorg Dispatch
request-start
20 Xserver591 Xorg AddResource
resource-alloc
21 Xserver591 Xorg FreeAllResources
resource-free
22 Xserver591 Xorg FreeClientResources
resource-free
23 Xserver591 Xorg FreeClientNeverRetainResources
resource-free
24 Xserver591 Xorg FreeResourceByType
resource-free
25 Xserver591 Xorg FreeResource
resource-free
26 Xserver591 Xorg WriteEventsToClient send-event
27 Xserver591 Xorg DoFocusEvents send-event
28 Xserver591 Xorg FocusEvent send-event
29 Xserver591 Xorg DeliverEventsToWindow send-event
30 Xserver591 Xorg TryClientEvents send-event
--
-Alan Coopersmith- alan.coopersmith at sun.com
Sun Microsystems, Inc. - X Window System Engineering