linux-bluetooth.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Alexander Aring <alex.aring@gmail.com>
To: Jukka Rissanen <jukka.rissanen@linux.intel.com>
Cc: Martin Townsend <martin.townsend@xsilon.com>,
	Martin Townsend <mtownsend1973@gmail.com>,
	linux-bluetooth@vger.kernel.org, linux-wpan@vger.kernel.org,
	marcel@holtmann.org
Subject: Re: [PATCH v6 bluetooth-next] 6lowpan: Use skb_cow in IPHC decompression.
Date: Tue, 14 Oct 2014 10:38:46 +0200	[thread overview]
Message-ID: <20141014083844.GA12674@omega> (raw)
In-Reply-To: <1413275705.2705.114.camel@jrissane-mobl.ger.corp.intel.com>

Hi Jukka,

On Tue, Oct 14, 2014 at 11:35:05AM +0300, Jukka Rissanen wrote:
> Hi Alex,
> 
> On ma, 2014-10-13 at 19:22 +0200, Alexander Aring wrote:
> > Hi Jukka,
> > 
> > sorry.
> > 
> > I was a little too fast here, because I am sure now this should solve your
> > lockdep issue.
> 
> Unfortunately this patch did not help with the issue.
> 

mhh, ok.

> > 
> > On Mon, Oct 13, 2014 at 07:11:11PM +0200, Alexander Aring wrote:
> > > Hi Jukka,
> > > 
> > > On Mon, Oct 13, 2014 at 06:09:14PM +0300, Jukka Rissanen wrote:
> > > > Hi Martin,
> > > > 
> > > > On ma, 2014-10-13 at 15:56 +0100, Martin Townsend wrote:
> > > > > Hi Jukka,
> > > > > 
> > > > > Does this patch help?
> > > > 
> > > > Unfortunately no, I still see inconsistent lock state. It would probably
> > > > have been too easy :)
> > > > 
> > > 
> > > I remeber something, I think 802.15.4 had similar issues long time ago.
> > > 
> > s/remeber/remember/
> > 
> > > The fix was 20e7c4e80dcd01dad5e6c8b32455228b8fe9c619 ("6lowpan: fix
> > > lockdep splats"). Please check that, you need something like that!
> > > 
> > 
> > Something like that:
> > 
> > diff --git a/net/bluetooth/6lowpan.c b/net/bluetooth/6lowpan.c
> > index 4ebc806..02fd21a 100644
> > --- a/net/bluetooth/6lowpan.c
> > +++ b/net/bluetooth/6lowpan.c
> > @@ -642,7 +642,27 @@ static netdev_tx_t bt_xmit(struct sk_buff *skb, struct net_device *netdev)
> >         return err < 0 ? NET_XMIT_DROP : err;
> >  }
> >  
> > +static struct lock_class_key bt_tx_busylock;
> > +static struct lock_class_key bt_netdev_xmit_lock_key;
> > +
> > +static void bt_set_lockdep_class_one(struct net_device *dev,
> > +                                    struct netdev_queue *txq,
> > +                                    void *_unused)
> > +{
> > +       lockdep_set_class(&txq->_xmit_lock,
> > +                         &bt_netdev_xmit_lock_key);
> > +}
> > +
> > +
> > +static int bt_dev_init(struct net_device *dev)
> > +{
> > +       netdev_for_each_tx_queue(dev, bt_set_lockdep_class_one, NULL);
> > +       dev->qdisc_tx_busylock = &bt_tx_busylock;
> > +       return 0;
> > +}
> > +
> >  static const struct net_device_ops netdev_ops = {
> > +       .ndo_init               = bt_dev_init,
> >         .ndo_start_xmit         = bt_xmit,
> >  };
> > 
> > 
> > - Alex
> > 
> > [0] https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=20e7c4e80dcd01dad5e6c8b32455228b8fe9c619
> 
> 
> Martin had an idea about the issue being related to work queues, I will
> investigate that further.
> 

ok. The above one should fix if some dev_queue_xmit call another
dev_queue_xmit. Don't know if you have some architecture like this in
bluetooth.

- Alex

  reply	other threads:[~2014-10-14  8:38 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-13 10:00 [PATCH v6 bluetooth-next] 6lowpan: Use skb_cow in IPHC decompression Martin Townsend
2014-10-13 10:00 ` Martin Townsend
2014-10-13 10:34   ` Alexander Aring
2014-10-13 11:49   ` Jukka Rissanen
2014-10-13 13:10     ` Martin Townsend
2014-10-13 14:44       ` Jukka Rissanen
2014-10-13 14:56         ` Martin Townsend
2014-10-13 15:09           ` Jukka Rissanen
2014-10-13 15:47             ` Martin Townsend
2014-10-13 16:00             ` Martin Townsend
2014-10-13 16:07             ` Johan Hedberg
2014-10-13 17:11             ` Alexander Aring
2014-10-13 17:22               ` Alexander Aring
2014-10-14  8:35                 ` Jukka Rissanen
2014-10-14  8:38                   ` Alexander Aring [this message]
2014-10-17 14:15   ` Marcel Holtmann

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=20141014083844.GA12674@omega \
    --to=alex.aring@gmail.com \
    --cc=jukka.rissanen@linux.intel.com \
    --cc=linux-bluetooth@vger.kernel.org \
    --cc=linux-wpan@vger.kernel.org \
    --cc=marcel@holtmann.org \
    --cc=martin.townsend@xsilon.com \
    --cc=mtownsend1973@gmail.com \
    /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).