From: Alexander Aring <alex.aring@gmail.com>
To: linux-wpan@vger.kernel.org
Cc: kernel@pengutronix.de
Subject: Re: [RFC 04/16] ieee802154: 6lowpan: remove check on wdev is running
Date: Sat, 15 Aug 2015 13:50:01 +0200 [thread overview]
Message-ID: <20150815114959.GA1659@omega> (raw)
In-Reply-To: <1438583035-6287-5-git-send-email-alex.aring@gmail.com>
On Mon, Aug 03, 2015 at 08:23:43AM +0200, Alexander Aring wrote:
> We don't need to check if the wpan interface is running because the
> lowpan_rcv is the packet layer receive handler for thw wpan interface.
> This means for the check if the wpan interface is running ends always in
> true.
>
> Signed-off-by: Alexander Aring <alex.aring@gmail.com>
> ---
> net/ieee802154/6lowpan/rx.c | 3 ---
> 1 file changed, 3 deletions(-)
>
> diff --git a/net/ieee802154/6lowpan/rx.c b/net/ieee802154/6lowpan/rx.c
> index 6302b94..99aeb56 100644
> --- a/net/ieee802154/6lowpan/rx.c
> +++ b/net/ieee802154/6lowpan/rx.c
> @@ -71,9 +71,6 @@ static int lowpan_rcv(struct sk_buff *skb, struct net_device *wdev,
> if (!skb)
> goto drop;
>
> - if (!netif_running(wdev))
> - goto drop_skb;
> -
>
I think this check should be converted to check if lowpan_dev (which
belongs to the wdev) is running. Then we can drop it earlier. I think it
currently works because netif_rx handles that then when the interface is
down which belongs to the skb->dev.
There is a small window when the lowpan is down and while doing 6lowpan
stuff. It could be that the lowpan is set to up while doing the 6lowpan
stuff.
Vice versa it could be that the lowpan interface is up and then down
while doing 6lowpan stuff, but then again netif_rx will handle that
then right (I hope, since commit
e9e4dd3267d0c5234c5c0f47440456b10875dec9 "net: do not process device
backlog during unregistration" it does that with netif_running, but I
think there must be some machanism for that before otherwise we should
got issues when a lowpan_dev was down and receive skb's).
With changing this to netif_running according the lowpan_dev, we have
the second case only. Both cases are very unlikely.
It's just a likely case to have lowpan interface down and then we always
do 6lowpan adaptation layer and then netif_rx will drop it because
netif_running is false. We should check this earlier.
- Alex
next prev parent reply other threads:[~2015-08-15 11:50 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-03 6:23 [RFC 00/16] ieee802154: 6lowpan: cleanup and rework dispatch evaluation Alexander Aring
2015-08-03 6:23 ` [RFC 01/16] ieee802154: 6lowpan: change dev vars to wdev and ldev Alexander Aring
2015-08-12 8:49 ` Stefan Schmidt
2015-08-03 6:23 ` [RFC 02/16] ieee802154: 6lowpan: remove set to zero Alexander Aring
2015-08-12 8:49 ` Stefan Schmidt
2015-08-03 6:23 ` [RFC 03/16] ieee802154: 6lowpan: remove EXPORT_SYMBOL Alexander Aring
2015-08-12 8:49 ` Stefan Schmidt
2015-08-03 6:23 ` [RFC 04/16] ieee802154: 6lowpan: remove check on wdev is running Alexander Aring
2015-08-12 8:49 ` Stefan Schmidt
2015-08-15 11:50 ` Alexander Aring [this message]
2015-08-03 6:23 ` [RFC 05/16] ieee802154: 6lowpan: cleanup pull of iphc bytes Alexander Aring
2015-08-12 9:03 ` Stefan Schmidt
2015-08-03 6:23 ` [RFC 06/16] ieee802154: 6lowpan: trivial checks at first Alexander Aring
2015-08-12 9:04 ` Stefan Schmidt
2015-08-12 9:21 ` Alexander Aring
2015-08-15 9:15 ` Alexander Aring
2015-08-03 6:23 ` [RFC 07/16] ieee802154: 6lowpan: change skb->dev earlier Alexander Aring
2015-08-12 9:13 ` Stefan Schmidt
2015-08-03 6:23 ` [RFC 08/16] ieee802154: 6lowpan: change frag return value handling Alexander Aring
2015-08-12 9:14 ` Stefan Schmidt
2015-08-12 9:26 ` Alexander Aring
2015-08-03 6:23 ` [RFC 09/16] ieee820154: 6lowpan: dispatch evaluation rework Alexander Aring
2015-08-12 12:51 ` Stefan Schmidt
2015-08-03 6:23 ` [RFC 10/16] ieee802154: 6lowpan: add dispatch evalualtion helpers Alexander Aring
2015-08-12 12:51 ` Stefan Schmidt
2015-08-12 13:20 ` Alexander Aring
2015-08-12 13:48 ` Stefan Schmidt
2015-08-12 13:55 ` Alexander Aring
2015-08-03 6:23 ` [RFC 11/16] ieee802154: 6lowpan: fix fragmentation dispatch mask Alexander Aring
2015-08-12 12:51 ` Stefan Schmidt
2015-08-03 6:23 ` [RFC 12/16] ieee802154: 6lowpan: add generic lowpan header check Alexander Aring
2015-08-12 13:37 ` Stefan Schmidt
2015-08-03 6:23 ` [RFC 13/16] ieee802154: 6lowpan: add handler for all dispatch values Alexander Aring
2015-08-12 13:37 ` Stefan Schmidt
2015-08-03 6:23 ` [RFC 14/16] ieee802154: 6lowpan: add check for reserved dispatch Alexander Aring
2015-08-12 13:37 ` Stefan Schmidt
2015-08-13 20:17 ` Alexander Aring
2015-08-03 6:23 ` [RFC 15/16] ieee802154: 6lowpan: check on valid 802.15.4 frame Alexander Aring
2015-08-12 13:37 ` Stefan Schmidt
2015-08-12 13:54 ` Alexander Aring
2015-08-03 6:23 ` [RFC 16/16] ieee802154: 6lowpan: remove packet type to host Alexander Aring
2015-08-12 13:37 ` Stefan Schmidt
2015-08-12 8:15 ` [RFC 00/16] ieee802154: 6lowpan: cleanup and rework dispatch evaluation Stefan Schmidt
2015-08-13 9:10 ` Stefan Schmidt
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=20150815114959.GA1659@omega \
--to=alex.aring@gmail.com \
--cc=kernel@pengutronix.de \
--cc=linux-wpan@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 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.