[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070213155446.2f423782@freekitty>
Date: Tue, 13 Feb 2007 15:54:46 -0800
From: Stephen Hemminger <shemminger@...ux-foundation.org>
To: Jay Vosburgh <fubar@...ibm.com>
Cc: Andy Gospodarek <andy@...yhouse.net>,
David Miller <davem@...emloft.net>, akpm@...ux-foundation.org,
netdev@...r.kernel.org, lpiccilli@...re.com.br,
bugme-daemon@...zilla.kernel.org
Subject: Re: [Bugme-new] [Bug 7974] New: BUG: scheduling while atomic:
swapper/0x10000100/0
> >/**
> > * bond_rtnl_wrapper - take the rtnl_lock if needed
> > * @x: function with args
> > *
> > */
> >#define RTNL_WRAPPER(x) \
> >({ \
> > int __rc__; \
> > if (rtnl_trylock()) { \
> > __rc__ = x; \
> > rtnl_unlock(); \
> > } else { \
> > __rc__ = x; \
> > } \
> > __rc__; \
> >})
> >
> >
> >and wrapped it around the calls to dev_set_mac_address. I wasn't
> >pleased with it, but it seemed like it worked pretty well based on the
> >testing I did.
>
> The problem with this is that it'll cause failures in the case
> that some other unrelated entity holds rtnl ("x" will be performed
> concurrently with whomever actually holds rtnl).
>
> -J
It is also a crap macro.
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists