On Sun, May 09, 2010 at 09:30:31AM +0300, Benny Halevy wrote: > Correct. The intentions are: > 1. Make the laundromat process ignore clients that are in > use by a 4.1 session. > 2. Renew the client when the compound ends, rather than when it begins. > 3. Unhash the client when it's expired explicitly but don't destroy it > until there's no reference to it. OK. My one slight worry there is to make sure that code getting a pointer to a client through a sessionid won't inadvertently assume it's still hashed. By the way, the current stateid may present a similar problem to the session, since it also lasts across compound ops and references a client (and other state). Looking through the code.... We don't implement the current stateid at all yet. Ouch. I'll add that to the wiki. > >> [PATCH 8/8] nfsd41: cstate->session can NULL in nfsd4_destroy_session > >> I think this was introduced in: 26c0c75 nfsd4: fix unlikely race in session replay case > >> though I'm not sure how it ever worked correctly... > > > > Me neither. I've got a similar patch in my tree. > > Heh, I see. > 5d4cec2 nfsd4: fix bare destroy_session null dereference Apologies, I'd applied it privately but not pushed it out yet.... I should have gotten that out faster. --b. -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html