Yes, sure.  Unless someone else objects, I'll make soclose unconditional.  I 
was thinking about nixing it with the previous patch, but decided we should 
deal with it separately.

Matt

----- "Benjamin Kaduk" <[email protected]> wrote:

> On Wed, 25 Aug 2010, Matt W. Benjamin wrote:
> 
> > Hi Ben,
> >
> > I have tested both unmounting /afs, and rebooting with AFS mounted. 
> I 
> > haven't attempted to load and start AFS again after unmounting.  So
> I 
> > don't think this could be a regression.
> 
> Would you mind testing the mount-unmount-unload-reload-mount cycle
> when 
> you get a chance?  My test box is having some issues at the moment
> (it's 
> unclear if this is FreeBSD HEAD making it harder for us to hook the 
> syscall table or an afsd regression or me doing something stupid).
> 
> >
> > More importantly, consider two points.  First, the race between 
> > osi_NetReceive and osi_StopListener with immediate soclose typically
> 
> > results in the osi_NetReceive thread attempting illegal accesses to
> 
> > various objects associated with rx_socket.  Second, we perform we
> can
> 
> I do believe I've seen panics from that race, yes.
> 
> > only perform one legitimate soclose on rx_socket, and we do perform
> it, 
> > conditionally, after the wait.  The conditionally part may point to
> an 
> > issue--I don't actually remember who introduced the notion of making
> 
> > soclose conditional on so_is_disconn--if in fact we do omit to
> soclose, 
> > I'd suggest removing the condition (and supporting macro).
> 
> That is probably reasonable. Though, of course, finding out if we do
> omit 
> the call to soclose depends on testing it, which we apparently haven't
> 
> done recently.
> Given that """
>   * soclose() destroys a socket after possibly waiting for it to
> disconnect.
>   * This is a public interface that socket consumers should use to
> close and
>   * release a socket when done with it.
> """
> it would seem that the so_is_disconn check is probably bogus.
> 
> -Ben

-- 

Matt Benjamin

The Linux Box
206 South Fifth Ave. Suite 150
Ann Arbor, MI  48104

http://linuxbox.com

tel. 734-761-4689
fax. 734-769-8938
cel. 734-216-5309
_______________________________________________
OpenAFS-devel mailing list
[email protected]
https://lists.openafs.org/mailman/listinfo/openafs-devel

Reply via email to