Re: patches for if_iwi and wlan for WEP mode

From: Bernhard Schmidt <bschmidt_at_freebsd.org>
Date: Mon, 5 Mar 2012 23:14:21 +0100
On Monday 05 March 2012 18:42:12 Mitsuru IWASAKI wrote:
> Hi,
> 
> I've fixed iwi(4) so that Intel(R) PRO/Wireless 2915ABG work
> in WEP mode, which seems to be broken since 8.0-RELEASE.
> 
> The patches against HEAD at:
> http://people.freebsd.org/~iwasaki/iwi/iwi-20120305.diff
> 
> I'm not sure that changes on ieee80211 layer are right fixes,
> but all of mbufs were discarded in ieee80211_start() in WEP mode.
> 
> ----
> void
> ieee80211_start(struct ifnet *ifp)
> {
> [snip]
>                         if (ni->ni_associd == 0 &&
>                             (ni->ni_flags & IEEE80211_NODE_ASSOCID)) {
>                                 IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_OUTPUT,
>                                     eh->ether_dhost, NULL,
>                                     "sta not associated (type 0x%04x)",
>                                     htons(eh->ether_type));
>                                 vap->iv_stats.is_tx_notassoc++;
>                                 ifp->if_oerrors++;
>                                 m_freem(m);
>                                 ieee80211_free_node(ni);
>                                 continue;
>                         }
> ----
> 
> My patches set IEEE80211_NODE_ASSOCID bit only if ni->ni_associd
> is set.  Any suggestions on this part are welcome.

Are you sure the net80211 part is correct? It looks to me as if you
are just masking the real issue. The IEEE80211_NODE_ASSOCID flag is
ment to be used to verify that an associd has actually been set, not
doing so will break other things I guess. iwi(4) is a bit tricky in
that regard, as it sets the associd itself, check iwi_checkforqos().
I'd verify that function is actually called and if so if the parameters
are correct. I fumbled around there once, might have wrong WEP..

> I'm going to commit the changes coming weekend.

What's the reason behing adding if_qflush()/if_transmit()?

-- 
Bernhard
Received on Mon Mar 05 2012 - 21:41:02 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:24 UTC