bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Hurd server introspection and tracing


From: Justus Winter
Subject: Hurd server introspection and tracing
Date: Thu, 23 Oct 2014 17:16:38 +0200

Hello :)

this patch series adds introspection and tracing facilities to the
Hurd servers using libports.  This isn't ready yet, but I'd like to
give everyone a chance to complain early on.  Some notes:

* I use Machs `Inherited Ports' mechanism to install a receive right
  at a well-known location to serve introspection requests.  This is
  by choice orthogonal to the usual mechanism used in the Hurd, as I
  want it to be as universal as possible (e.g. I want to be able to
  use it on the proc server).

* Servers can label port buckets and classes, and install a function
  that creates a human-readable description of an object.  This
  information is then presented to the user doing portinfo
  --query-process, a feature that is hinted to by a #if 0ed option in
  portinfo.c.

* rpctrace can now attach to cooperating servers that just relay
  messages to the tracing process.  To that end, a footer is attached
  to the message to preserve original remote and local port, all
  rights are turned into mere names, and the msgt_deallocate flag is
  cleared so that out-of-band data isn't deallocated when we resend
  the message.

* A new library, libintrospection, handles the introspection port
  registration and lookup, and the message wrapping/unwrapping.

Flame on :)
Justus





reply via email to

[Prev in Thread] Current Thread [Next in Thread]