On Thu, Jun 19, 2008 at 6:26 PM, Johannes Berg <johannes@xxxxxxxxxxxxxxxx> wrote: > On Thu, 2008-06-19 at 17:45 +0300, Tomas Winkler wrote: >> On Thu, Jun 19, 2008 at 4:24 PM, Johannes Berg >> <johannes@xxxxxxxxxxxxxxxx> wrote: >> > On Thu, 2008-06-19 at 16:08 +0300, Tomas Winkler wrote: >> >> On Thu, Jun 19, 2008 at 3:23 PM, Johannes Berg >> >> <johannes@xxxxxxxxxxxxxxxx> wrote: >> >> > >> >> >> > Now it crashes in the driver...maybe the txinfo to cb changes. Looking into it. >> >> >> > Tomas >> >> >> Looks like this is the second part keyconf is null >> >> > >> >> > Part? You mean fragment? What encryption algorithm? I've quickly looked >> >> > and all of them seem to do the control.hw_key assignment in their >> >> > respective _skb handler so it should be done for all fragments. >> >> >> >> The problem is w/o crypto >> >> I think this is not set on each fragment >> >> info->flags |= IEEE80211_TX_CTL_DO_NOT_ENCRYPT; >> > >> > Ouch, you're right, the whole tx info isn't properly initialised for >> > fragments. >> > >> > Can you try putting >> > >> > memcpy(frag->cb, first->cb, sizeof(first->cb)); >> > >> > at around line 690 of tx.c where this code is? >> > >> > frag->priority = first->priority; >> > skb_reserve(frag, tx->local->tx_headroom + >> > IEEE80211_ENCRYPT_HEADROOM); >> > >> > >> > [now I know what the cause is. I had another patch that used skb_segment >> > to do the fragmentation, but that was dropped and skb_segment does copy >> > skb->cb while our code doesn't] >> >> No crash but still not at home. No fragmented traffic on the air...grrr. > > Hmm, ok. I'll give it a try later. Fragments are in the air but the peer is not able to reassemble them. Something is wrong with the first fragment but I'm not sure yet. Tomas -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html