From: Rainer Weikusat <rweikusat@mobileactivedefense•com>
To: Philipp Hahn <pmhahn@pmhahn•de>
Cc: Ben Hutchings <ben@decadent•org.uk>,
Hannes Frederic Sowa <hannes@stressinduktion•org>,
Sasha Levin <sasha.levin@oracle•com>,
"David S. Miller" <davem@davemloft•net>,
linux-kernel@vger•kernel.org, Karolin Seeger <kseeger@samba•org>,
Jason Baron <jbaron@akamai•com>,
Greg Kroah-Hartman <gregkh@linuxfoundation•org>,
Arvid Requate <requate@univention•de>,
Stefan Gohmann <gohmann@univention•de>,
netdev@vger•kernel.org
Subject: Re: [PATCH net] af_unix: Guard against other == sk in unix_dgram_sendmsg
Date: Fri, 12 Feb 2016 13:25:15 +0000 [thread overview]
Message-ID: <8760xuvz5w.fsf@doppelsaurus.mobileactivedefense.com> (raw)
In-Reply-To: <56BDA3A8.6070807@pmhahn.de> (Philipp Hahn's message of "Fri, 12 Feb 2016 10:19:36 +0100")
Philipp Hahn <pmhahn@pmhahn•de> writes:
> Hello Rainer,
>
> Am 11.02.2016 um 20:37 schrieb Rainer Weikusat:
>> The unix_dgram_sendmsg routine use the following test
>>
>> if (unlikely(unix_peer(other) != sk && unix_recvq_full(other))) {
[...]
>> This isn't correct as the> specified address could have been bound to
>> the sending socket itself
[...]
> After applying that patch at least my machine running the samba test no
> longer crashes.
There's a possible gotcha in there: Send-to-self used to be limited by
the queue limit. But the rationale for that (IIRC) was that someone
could keep using newly created sockets to queue ever more data to a
single, unrelated receiver. I don't think this should apply when
receiving and sending sockets are identical. But that's just my
opinion. The other option would be to avoid the unix_state_double_lock
for sk == other. I'd be willing to change this accordingly if someone
thinks the queue limit should apply to send-to-self.
next prev parent reply other threads:[~2016-02-12 13:25 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <56B4BF9D.9070609@pmhahn.de>
[not found] ` <56BC90E7.7040007@pmhahn.de>
[not found] ` <87fuwzkzr5.fsf@doppelsaurus.mobileactivedefense.com>
[not found] ` <1455210224.2801.21.camel@decadent.org.uk>
[not found] ` <87r3gjjgbu.fsf@doppelsaurus.mobileactivedefense.com>
[not found] ` <87egcjcd5j.fsf@doppelsaurus.mobileactivedefense.com>
2016-02-11 19:37 ` [PATCH net] af_unix: Guard against other == sk in unix_dgram_sendmsg Rainer Weikusat
2016-02-12 9:19 ` Philipp Hahn
2016-02-12 13:25 ` Rainer Weikusat [this message]
2016-02-12 19:54 ` Ben Hutchings
2016-02-12 20:17 ` Rainer Weikusat
2016-02-12 20:47 ` Ben Hutchings
2016-02-12 20:59 ` Rainer Weikusat
2016-02-16 17:54 ` David Miller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=8760xuvz5w.fsf@doppelsaurus.mobileactivedefense.com \
--to=rweikusat@mobileactivedefense$(echo .)com \
--cc=ben@decadent$(echo .)org.uk \
--cc=davem@davemloft$(echo .)net \
--cc=gohmann@univention$(echo .)de \
--cc=gregkh@linuxfoundation$(echo .)org \
--cc=hannes@stressinduktion$(echo .)org \
--cc=jbaron@akamai$(echo .)com \
--cc=kseeger@samba$(echo .)org \
--cc=linux-kernel@vger$(echo .)kernel.org \
--cc=netdev@vger$(echo .)kernel.org \
--cc=pmhahn@pmhahn$(echo .)de \
--cc=requate@univention$(echo .)de \
--cc=sasha.levin@oracle$(echo .)com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox