From: Johannes Berg <johannes@sipsolutions.net>
To: Jeff Layton <jeff.layton@primarydata.com>
Cc: netdev@vger.kernel.org
Subject: Re: [ 2375.793397] WARNING: CPU: 0 PID: 1149 at net/netlink/genetlink.c:1037 genl_unbind+0xc0/0xd0()
Date: Thu, 15 Jan 2015 09:37:51 +0100 [thread overview]
Message-ID: <1421311071.1962.2.camel@sipsolutions.net> (raw)
In-Reply-To: <20150114212039.68c9a5a6@synchrony.poochiereds.net> (sfid-20150115_032043_532670_586AA242)
On Wed, 2015-01-14 at 21:20 -0500, Jeff Layton wrote:
> > Ok - after long deliberation I found a way to trigger it. It requires
> > that you leave a multicast group (likely by destroying a socket) at the
> > same time as the kernel unregisters the generic netlink group. I have no
> > idea what generic netlink group you might be using here, but I could
> > reproduce it with a strategically placed delay in the netlink code and
> > the nl80211 genl group by opening a socket, closing the socket, and
> > removing the cfg80211 module (to unregister the nl80211 genl group)
> > while the socket was still being closed.
> >
> > I'll think about a fix tomorrow - it doesn't seem trivial due to
> > possible locking concerns.
> FWIW, it popped around a dozen times or so?
Yeah it would pop up for every multicast group that any socket you owned
while closing the program (which of course closes the sockets) would
have opened on that genl family.
The thing that confuses me is how you managed to unregister a genl
family at literally the same time, but I cannot find - from code review
- a way to trigger it without that. If the family goes away cleanly
before then the groups of all open sockets are cleared so it can't
happen, and if the family is still alive when the socket is closed then
of course it also can't happen.
> Unfortunately, I didn't save the logs from the run. I'll try to
> reproduce it again tomorrow (and save the logs this time), but I don't
> see it every time.
If you do manage to do that it would be great to confirm that it is
indeed the scenario I found (and reproduced).
Thanks,
johannes
next prev parent reply other threads:[~2015-01-15 8:37 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-01-14 21:13 [ 2375.793397] WARNING: CPU: 0 PID: 1149 at net/netlink/genetlink.c:1037 genl_unbind+0xc0/0xd0() Jeff Layton
2015-01-14 22:48 ` Johannes Berg
2015-01-14 23:25 ` Johannes Berg
2015-01-15 2:20 ` Jeff Layton
2015-01-15 8:37 ` Johannes Berg [this message]
[not found] ` <20150115071426.563573e7@tlielax.poochiereds.net>
[not found] ` <1421324985.1962.5.camel@sipsolutions.net>
2015-01-15 12:49 ` Jeff Layton
2015-01-15 13:01 ` Johannes Berg
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=1421311071.1962.2.camel@sipsolutions.net \
--to=johannes@sipsolutions.net \
--cc=jeff.layton@primarydata.com \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
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;
as well as URLs for NNTP newsgroup(s).