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
