Re: unp gc vs socket close/shutdown race

2015-08-04 Thread John Baldwin
On Sunday, July 12, 2015 10:51:57 AM Conrad Meyer wrote: > Hi all, > > (Sorry In-Reply-To is wrong; gmail isn't the most flexible MUA and I > was not subscribed to FreeBSD-Current until today.) > > I have a slightly cleaned up version of this patch in phabricator at > https://reviews.freebsd.org/

Re: unp gc vs socket close/shutdown race

2015-07-12 Thread Conrad Meyer
Hi all, (Sorry In-Reply-To is wrong; gmail isn't the most flexible MUA and I was not subscribed to FreeBSD-Current until today.) I have a slightly cleaned up version of this patch in phabricator at https://reviews.freebsd.org/D3044 . My mentor thinks it looks ok, but we would appreciate any feedb

Re: unp gc vs socket close/shutdown race

2015-07-09 Thread Mateusz Guzik
On Wed, Jul 08, 2015 at 02:15:38AM +0200, Mateusz Guzik wrote: > First off note the patch below is a total hack with the easiest solution > possible so that it can be MFCed for 10.2. > > The issue: > > Closing the socket involves: > > if (pr->pr_flags & PR_RIGHTS && pr->pr_domain->dom_dispose !=

Re: unp gc vs socket close/shutdown race

2015-07-08 Thread Mateusz Guzik
On Wed, Jul 08, 2015 at 10:14:53AM +0300, Andriy Gapon wrote: > Mateusz, > > this seems to be the same problem as reported here > https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=194264 so you might want to > use that PR for bookkeeping. Taken. Note that the code in question is overall super fi

Re: unp gc vs socket close/shutdown race

2015-07-08 Thread Andriy Gapon
Mateusz, this seems to be the same problem as reported here https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=194264 so you might want to use that PR for bookkeeping. Thank you for the patch! -- Andriy Gapon ___ freebsd-current@freebsd.org mailing lis

unp gc vs socket close/shutdown race

2015-07-07 Thread Mateusz Guzik
First off note the patch below is a total hack with the easiest solution possible so that it can be MFCed for 10.2. The issue: Closing the socket involves: if (pr->pr_flags & PR_RIGHTS && pr->pr_domain->dom_dispose != NULL) (*pr->pr_domain->dom_dispose)(so->so_rcv.sb_mb); if (pr->pr_usrr