[Top][All Lists]

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

Re: How to clone a port right

From: Sergiu Ivanov
Subject: Re: How to clone a port right
Date: Wed, 8 Jul 2009 17:34:57 +0300
User-agent: Mutt/1.5.18 (2008-05-17)


On Tue, Jul 07, 2009 at 09:24:27PM +0300, Sergiu Ivanov wrote:
> I tried to set *underlying to MACH_PORT_NULL, but it (in a quite
> expected way) refused to work.  I then tried to do
>  *underlying = underlying_node;
> where underlying_node is a port right describing a port to the
> underlying node of the unionfs translator.  This led to the following
> error:
> unionfs: /var/tmp/hurd-20090404/./libports/complete-deallocate.c:29:
> _ports_complete_deallocate: Assertion `(pi->flags & 0x0001) == 0'
> failed.
> /hurd/filterfs: Translator startup failure: fsys_startup: (ipc/mig)
> server died

The problem was that in the code I was testing this idea I
accidentally included in the #if 0 ... #endif block the whole port
creation port.  The error, therefore, appeared not due to reusing a
port right (this would have been strange, anyways), but due to the
fact that I tried to dereference a port that did not exist :-(

I removed the bogus line and it works now.

Thanks for your help!


reply via email to

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