On Wed, Dec 04, 2002 at 04:24:17PM +0100, Ludovic Court�s wrote:
> On Tue, Nov 19, 2002 at 06:16:54PM +0100, Marcus Brinkmann wrote:
> > > The problem is that, as specified by the comments in netfs.h for
> > > netfs_attempt_lookup (), on successful lookups, the node found must
> > > be locked.  Therefore, if the server's syncfs stub tries to acquire a
> > > lock on the node that has just been looked up by syncfs(1), it will
> > > just hang.
> > 
> > Have you actually tried this?  The node is unlocked before returning the
> > port to the user (via nput/nrele).
> 
> The actual problem actually is that netfs_S_file_syncfs () locks the
> node passed by the user before calling netfs_attempt_syncfs () (is it
> really useful?).  Therefore, my program was hanging when trying to acquire
> this node's lock.

Many callbacks in netfs will only be called with the node locked.  So just
don't lock it in netfs_attempt_syncfs.  Is there any problem with that?

Thanks,
Marcus

-- 
`Rhubarb is no Egyptian god.' GNU      http://www.gnu.org    [EMAIL PROTECTED]
Marcus Brinkmann              The Hurd http://www.gnu.org/software/hurd/
[EMAIL PROTECTED]
http://www.marcus-brinkmann.de/


_______________________________________________
Help-hurd mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/help-hurd

Reply via email to