bug-hurd
[Top][All Lists]
Advanced

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

Re: rpctrace design


From: Brent W. Baccala
Subject: Re: rpctrace design
Date: Tue, 25 Oct 2016 17:56:12 -1000

On Mon, Oct 24, 2016 at 1:12 AM, Justus Winter <justus@gnupg.org> wrote:

"Brent W. Baccala" <cosine@freesoft.org> writes:
> I read on the website's hurd/debugging/rpctrace page that somebody (zhenga)
> had come with a new version of rpctrace.  Do we have a copy of it around
> somewhere?

We merged his rpctrace work.  His contributions made multi-task tracing
possible.

OK, thanks.

I've been thinking more about my problem.  I don't think it's as bad as I was thinking.  The question is what port names do we use when sending a message to a send-once right?

Well, how can a traced task produce a send-once right?  There's only three ways that I can think of.

1. It was created from a receive right held by the task.  In this case, we should use port names corresponding to the task.

2. It was passed in from another task.  In this case, the send-once right was wrapped by rpctrace, and rpctrace itself will get the message sent to the right, so it hardly matters what names we use.

3. It was created from a receive right that was then passed to another task.  When transferring receive rights, rpctrace usually holds the original receive right and relays a different one, so again, rpctrace gets the message, and it doesn't matter which names we use.  It looks like previously unknown receive rights get passed through rpctrace, but it should be possible to modify the code to wrap them.

So (with that change), if when we get a send-once right from a task, we send it port names associated with that task, everything should work right.

I think.

    agape
    brent



 


reply via email to

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