Linux wireless drivers development
 help / color / mirror / Atom feed
From: Phil Sutter <phil@nwl.cc>
To: Johannes Berg <johannes@sipsolutions.net>
Cc: sedat.dilek@gmail.com, David Miller <davem@davemloft.net>,
	Stephen Rothwell <sfr@canb.auug.org.au>,
	wireless <linux-wireless@vger.kernel.org>,
	netdev@vger.kernel.org
Subject: Re: linux-next: Tree for Aug 6 [ wireless | iwlwifi | mac80211 ? ]
Date: Thu, 8 Aug 2013 23:13:58 +0200	[thread overview]
Message-ID: <20130808211404.467E620819@mail.nwl.cc> (raw)
In-Reply-To: <1375826322.10459.6.camel@jlt4.sipsolutions.net>

On Tue, Aug 06, 2013 at 11:58:42PM +0200, Johannes Berg wrote:
> On Tue, 2013-08-06 at 23:45 +0200, Johannes Berg wrote:
> 
> > I think skb->protocol is probably getting set up wrong, and just putting
> > back the last two lines
> > 
> >         skb->protocol = proto;
> >         skb->dev = dev;
> > 
> > is probably sufficient to fix wifi. If skb->protocol isn't set to
> > ETH_P_PAE, then we'd drop the packet in the wifi stack - might be worth
> > printing out what it's set to at the point where the skb->protocol
> > assignment above was removed.
> > 
> > I'm trying to wrap my head around all this right now but I don't yet see
> > how the code after the patch would not get skb->protocol correct.
> 
> Actually, I think that's not it, but the code now behaves totally
> differently?
> 
> Say this is the frame data with two points marked:
> 
> (1)                   (2)
>  | dst | src | ethtype | ... |
> 
> As I understand it (in my admittedly rather tired state), previously we
> had
> 
> skb_network_header() == (1)
> skb_mac_header()     == (1)
> skb->data            == (1)
> 
> After calling eth_type_trans(), we get
> 
> skb_network_header() == (1)
> skb_mac_header()     == (1)
> skb->data            == (2)
> 
> I think? Maybe I'm totally confused though.

Yes, indeed. And it's the explanation for at least some of the problems
that arose with my doubtful change:

Leaving my patch in place and reverting the above pointer by calling
skb_push() after eth_type_trans(), the busybox DHCP client on my testing
machine is functional again.

But as Dave has gone this path already (although in a different way) and
it aparently didn't fix the wifi problem, there may be something else as
well. Interestingly, my skb_push() hack from above fixes wpa_supplicant
for me as well. So I will test Dave's patch myself tomorrow and search
for the difference if I get the same result as Sedat.

Best wishes, Phil

      reply	other threads:[~2013-08-08 21:14 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-08-06 13:51 linux-next: Tree for Aug 6 [ wireless | iwlwifi | mac80211 ? ] Sedat Dilek
2013-08-06 13:54 ` Johannes Berg
2013-08-06 14:02   ` Sedat Dilek
2013-08-06 14:46   ` Sedat Dilek
2013-08-06 14:50     ` Johannes Berg
2013-08-06 14:56       ` Sedat Dilek
2013-08-06 14:57         ` Johannes Berg
2013-08-06 14:59           ` Sedat Dilek
2013-08-06 15:09             ` Sedat Dilek
2013-08-06 15:18               ` Johannes Berg
2013-08-06 15:20                 ` Sedat Dilek
2013-08-06 15:27                   ` Sedat Dilek
2013-08-06 15:29                     ` Johannes Berg
2013-08-06 15:43                       ` Sedat Dilek
2013-08-06 15:58                         ` Sedat Dilek
2013-08-06 16:03                           ` Johannes Berg
2013-08-06 16:07                             ` Sedat Dilek
2013-08-06 16:51                               ` Sedat Dilek
2013-08-06 18:26                                 ` Sedat Dilek
2013-08-06 18:35                                   ` Sedat Dilek
2013-08-06 19:08                                     ` Johannes Berg
2013-08-06 19:14                                       ` Sedat Dilek
2013-08-06 19:18                                         ` Johannes Berg
2013-08-06 19:32                                           ` Sedat Dilek
2013-08-06 19:47                                             ` Sedat Dilek
2013-08-06 21:29                                               ` Phil Sutter
2013-08-06 21:40                                                 ` Sedat Dilek
2013-08-06 21:45                                                   ` Johannes Berg
2013-08-06 21:56                                                     ` Hannes Frederic Sowa
2013-08-06 22:55                                                       ` Sedat Dilek
2013-08-06 23:07                                                         ` Hannes Frederic Sowa
2013-08-06 23:14                                                           ` Sedat Dilek
2013-08-06 21:58                                                     ` Johannes Berg
2013-08-08 21:13                                                       ` Phil Sutter [this message]

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=20130808211404.467E620819@mail.nwl.cc \
    --to=phil@nwl.cc \
    --cc=davem@davemloft.net \
    --cc=johannes@sipsolutions.net \
    --cc=linux-wireless@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=sedat.dilek@gmail.com \
    --cc=sfr@canb.auug.org.au \
    /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