From: Ben Greear <greearb@candelatech.com>
To: Jarek Poplawski <jarkao2@o2.pl>
Cc: Stephen Hemminger <shemminger@linux-foundation.org>,
Francois Romieu <romieu@fr.zoreil.com>,
netdev@vger.kernel.org, Kyle Lucke <klucke@us.ibm.com>,
Raghavendra Koushik <raghavendra.koushik@neterion.com>,
Al Viro <viro@ftp.linux.org.uk>
Subject: Re: [BUG] RTNL and flush_scheduled_work deadlocks
Date: Fri, 16 Feb 2007 00:23:05 -0800 [thread overview]
Message-ID: <45D569E9.7010407@candelatech.com> (raw)
In-Reply-To: <20070216081051.GC1599@ff.dom.local>
Jarek Poplawski wrote:
> On Thu, Feb 15, 2007 at 11:40:32PM -0800, Ben Greear wrote:
> ...
>
>> Maybe there should be something like an ASSERT_NOT_RTNL() in the
>> flush_scheduled_work()
>> method? If it's performance criticial, #ifdef it out if we're not
>> debugging locks?
>>
>
> Yes! I thought about the same (at first). But in my
> opinion it was not enough, so I thought about doing
> this in flush_workqueue. But in my next opinion it
> was not enough too. Now I think something like this
> should be done in rtnl_lock (under some debugging #if
> of course).
>
The reason these bugs have been hidden is that most of the time, there
is nothing
on the pending work queue that will try to grab RTNL. But, the
flush_work_queue
is still called with RTNL held, so an assert would find this much
earlier than
waiting for someone to get lucky and actually catch (and debug and report)
a deadlock...
I don't see how asserting it in the rtnl_lock would help anything,
because at that
point we are about to deadlock anyway... (and this is probably very
rare, as mentioned above.)
Thanks,
Ben
> Cheers,
> Jarek P.
> -
> To unsubscribe from this list: send the line "unsubscribe netdev" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
--
Ben Greear <greearb@candelatech.com>
Candela Technologies Inc http://www.candelatech.com
next prev parent reply other threads:[~2007-02-16 8:23 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-02-14 21:27 [BUG] RTNL and flush_scheduled_work deadlocks Stephen Hemminger
2007-02-14 21:44 ` Ben Greear
2007-02-14 23:54 ` Francois Romieu
2007-02-15 18:58 ` Ben Greear
2007-02-15 22:37 ` [PATCH 1/4] r8169: RTNL and flush_scheduled_work deadlock Francois Romieu
2007-02-20 16:18 ` Jeff Garzik
2007-02-15 22:37 ` [PATCH 2/4] sis190: " Francois Romieu
2007-02-15 22:37 ` [PATCH 3/4] 8139too: " Francois Romieu
2007-02-16 7:59 ` Jarek Poplawski
2007-02-16 20:20 ` Francois Romieu
2007-02-16 20:36 ` Stephen Hemminger
2007-02-17 20:54 ` Francois Romieu
2007-02-19 12:05 ` Jarek Poplawski
2007-02-19 21:08 ` Francois Romieu
2007-04-04 23:38 ` Ben Greear
2007-04-05 11:17 ` Francois Romieu
2007-02-15 22:37 ` [PATCH 4/4] s2io: " Francois Romieu
2007-02-16 7:29 ` [BUG] RTNL and flush_scheduled_work deadlocks Jarek Poplawski
2007-02-16 7:40 ` Ben Greear
2007-02-16 8:10 ` Jarek Poplawski
2007-02-16 8:23 ` Ben Greear [this message]
2007-02-16 9:04 ` Jarek Poplawski
2007-02-16 12:12 ` Jarek Poplawski
2007-02-16 16:06 ` Ben Greear
2007-02-20 8:23 ` Jarek Poplawski
2007-02-16 18:31 ` Stephen Hemminger
2007-02-16 19:04 ` Ben Greear
2007-02-19 6:13 ` [PATCH 1/2] " Jarek Poplawski
2007-02-19 6:27 ` Ben Greear
2007-02-19 7:11 ` Jarek Poplawski
2007-02-19 7:40 ` Jarek Poplawski
2007-03-05 8:36 ` [PATCH v.2] " Jarek Poplawski
2007-02-19 6:55 ` [PATCH 2/2] " Jarek Poplawski
2007-02-19 7:18 ` Jarek Poplawski
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=45D569E9.7010407@candelatech.com \
--to=greearb@candelatech.com \
--cc=jarkao2@o2.pl \
--cc=klucke@us.ibm.com \
--cc=netdev@vger.kernel.org \
--cc=raghavendra.koushik@neterion.com \
--cc=romieu@fr.zoreil.com \
--cc=shemminger@linux-foundation.org \
--cc=viro@ftp.linux.org.uk \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.