Date: Fri, 14 Apr 2017 20:13:52 -0700 From: "Ngie Cooper (yaneurabeya)" <yaneurabeya@gmail.com> To: Peter Wemm <peter@wemm.org> Cc: svn-src-all@freebsd.org, src-committers <src-committers@freebsd.org>, Hiroki Sato <hrs@freebsd.org>, Hiren Panchasara <hiren@freebsd.org>, svn-src-head@freebsd.org, Maxim Sobolev <sobomax@sippysoft.com> Subject: Re: svn commit: r316874 - head/sys/kern Message-ID: <CDFAE7DD-8F3A-43D9-AAD5-DF9FABEC4669@gmail.com> In-Reply-To: <2109294.KVn8xeR1jZ@overcee.wemm.org> References: <201704141723.v3EHNS3B043902@repo.freebsd.org> <C976394B-87C9-40E5-A66D-951B77D7982D@gmail.com> <13691757.t3s7Qik7v1@overcee.wemm.org> <2109294.KVn8xeR1jZ@overcee.wemm.org>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --]
> On Apr 14, 2017, at 20:12, Peter Wemm <peter@wemm.org> wrote:
>
> On Friday, April 14, 2017 07:36:55 PM Peter Wemm wrote:
>> On Friday, April 14, 2017 02:14:16 PM Ngie Cooper wrote:
>>>> On Apr 14, 2017, at 14:10, Maxim Sobolev <sobomax@sippysoft.com> wrote:
>>>>
>>>> Peter, Ngie,
>>>>
>>>> Looks like out of that refactoring came a logical bug that is present in
>>>> the head, which causes syslod to first to shutdown the socket for
>>>> reading
>>>> and then try to select/recv on it (which is somewhat stupid). And that
>>>> issue has been masked by shutdown() on datagram socket becoming
>>>> effectively a NOP in 11 & head 20 months ago. It only affects head
>>>> though, 11-stable still has the old code which does not include that
>>>> half-closed socket into the select list. Attached patch is expected to
>>>> fix head, Peter, it would be nice if you can give it a try (restoring
>>>> latest changes into uipc_sockets.c) and let me know if it helps.
>>>>
>>>> Thanks!
>>>
>>> CCing hrs@ for input as he did the refactoring.
>>> Thanks!
>>> -Ngie
>>>
>>> PS LGTM with the change. Will wait for feedback from wemm@.
>>
>> This is definitely not working. I get ENOSPC and listen queue overflows on
>> /var/run/logpriv now.
>>
>> Grabbing an old 10.3 /usr/sbin/syslogd and placing it on the top of the 12.x
>> one worked fine, aside from the include statements.
>
> This can't be right:
> if (SecureMode || res->ai_family == AF_LOCAL) {
> /* Forbid communication in secure mode. */
> if (shutdown(s, SHUT_RD) < 0 &&
> errno != ENOTCONN) {
> logerror("shutdown");
> if (!Debug)
> die(0);
> }
> dprintf("listening on socket\n");
> sl_recv = NULL;
> }
>
> This appears to disable unix domain sockets like /var/run/log and
> /var/run/logpriv.
ACK. This looks like a fun bug.
-Ngie
[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - https://gpgtools.org
iQIcBAEBCgAGBQJY8Y/wAAoJEPWDqSZpMIYVld4P+wSZvWY/Mi1eEcmz7h3u4B4D
PktRfN2fdnsVnFjKBLWOz5ys3IB5xWWDmopZqelK+a5q7ze+hLevmBWnJE1i6R87
uXS/IRiMfq/0v2o1CeAkFVjNuFgVhyn6w2z+76HFWV4YTOYrOYk9Ol/EnrIUsFUA
WmoH31qx87LMDJW5nsZGsNgW2UjElGPC30I95pf0b0CLTz47uDwIuN+Jb55E4d9Q
pPdFhEz2iVm6l86Cpd0DOX8wyQxoXtHb5LzPfHwZCOOzo3ehwCBM17A/zOMTQ7ZS
TlpbBWHkD9BNq+3U/Eu51Bq+mBf4yTnn5fqFGfhtQvTLiV8gLDiyQ2KucNEMoVDx
VQy0AI1tyZVfnme4o/h77XYbwbDD0cZGdz3xKE+cSqZ9lcNNxRhtZD6/SwGas8cJ
l3CpPT2YC6jmHjAufrtc/MkYEjy7IMs5EQV2pER7xgP2Bq5HBGfgCWJ6VbgNFYIB
21a8JRoyzZLdMC+OsNuuk6LnB6dGV0x8VofefV9yT+2o0ZFGQ9p4WtldfTPiHkTi
kIxA6w/lFyMgyOUOE+iWDdljMNXFG5W1qzxM8CCckVPCMO6jX1+5P53qbCRyMGZ8
DXDRz0JqQvAMWEXPDIiRceB5CMOxk8XK8XppMIuDJdNY+aUNVTWvPd8j2m8Km4/g
CbiNw5iABeF6fmZbWThC
=zLg3
-----END PGP SIGNATURE-----
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CDFAE7DD-8F3A-43D9-AAD5-DF9FABEC4669>
