Piyush,
> Just to elaborate on "It never went anywhere" part, in case someone is
> interested in picking up the patch that Robert Gordon pointed to
> (http://cr.opensolaris.org/~danhua/webrev/onnv-clone.patch.).
>
> The prototype for the NFS v3 client provider was done by Danhua Shao. It
> was working and also went through a code review process on nfs-discuss
> alias. The provider and the probes were demonstrated to work as
> expected. The key issue in the current provider design is the use of
> tsd_set and tsd_get functions in order to get a handle on RPC xid where
> the probes get fired. The problem is that we need a reasonable way to
> harvest the RPC xid in the higher level nfs functions. As of now, the
> design uses tsd_set and tsd_get routines. I believe that there is high
> overhead associated with the use of these functions. At the time this
> work was done, we did not come out with a more appropriate approach to
> harvest RPC xid values.
at least from inspection of their implementation
(uts/common/disp/thread.c), the overhead doesn't seem so high except for
the case when tsd_set() is used for the first time on a thread. Obviously,
one would have to quantify the overhead and decide if this is deemed
acceptable for the observability gained.
> I am also attaching the written description of NFSv3 client provider
> specification, which was posted earlier on these email aliases when the
> work was being done actively.
Thanks. I'll have a look, but doubt that I'll be able to do anything soon:
too much on my plate right now.
Rainer
--
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University