buffalo wli-uc-gn wireless card sometimes unusable and emit "run0: wcid=xx out of range"

2012-12-31 Thread Jov
hi  experts:
I think the hardware is ok because I can use it in Win7. And in Freebsd
9.1,it works for sometime,but sometimes after system reboot or I plug out &
plug in the card it my unusable.on the console it emmit:
 "run0: wcid=xx out of range" where xx is 91,87 and etc.

it seams the wifi is connected because ifconfig wlan0 cmd shows the right
ssid and bssid ,but inet addr is always 0.0.0.0

would you please help me?

-- 
jov
blog: http:amutu.com/blog
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"


Re: buffalo wli-uc-gn wireless card sometimes unusable and emit "run0: wcid=xx out of range"

2012-12-31 Thread PseudoCylon
> Message: 13
> Date: Mon, 31 Dec 2012 18:11:04 +0800
> From: Jov 
> To: freebsd-questions@freebsd.org
> Subject: buffalo wli-uc-gn wireless card sometimes unusable and emit
>         "run0: wcid=xx out of range"
> Message-ID:
> 
> Content-Type: text/plain; charset=ISO-8859-1
>
> hi  experts:
> I think the hardware is ok because I can use it in Win7. And in Freebsd
> 9.1,it works for sometime,but sometimes after system reboot or I plug out &
> plug in the card it my unusable.on the console it emmit:
>  "run0: wcid=xx out of range" where xx is 91,87 and etc.

Please try attached patch.

Reboot or re-plug-in shouldn't be a cause of the problem. Receiving an
association ID larger than device's max (64) is the problem. You must
be using a high-end AP. Reboot or re-plug-in initiate re-association
and just happen to receive a large association ID.


AK


--begin patch--

diff --git a/dev/usb/wlan/if_run.c b/dev/usb/wlan/if_run.c
index 3d2577f..ed11d97 100644
--- a/dev/usb/wlan/if_run.c
+++ b/dev/usb/wlan/if_run.c
@@ -2019,7 +2019,8 @@ run_key_set_cb(void *arg)
wcid = 0;   /* NB: update WCID0 for group keys */
base = RT2860_SKEY(RUN_VAP(vap)->rvp_id, k->wk_keyix);
} else {
-   wcid = RUN_AID2WCID(associd);
+   wcid = (vap->iv_opmode == IEEE80211_M_STA) ?
+   1 : RUN_AID2WCID(associd);
base = RT2860_PKEY(wcid);
}

@@ -2374,9 +2375,12 @@ run_newassoc(struct ieee80211_node *ni, int isnew)
struct run_softc *sc = ic->ic_ifp->if_softc;
uint8_t rate;
uint8_t ridx;
-   uint8_t wcid = RUN_AID2WCID(ni->ni_associd);
+   uint8_t wcid;
int i, j;

+   wcid = (vap->iv_opmode == IEEE80211_M_STA) ?
+   1 : RUN_AID2WCID(ni->ni_associd);
+
if (wcid > RT2870_WCID_MAX) {
device_printf(sc->sc_dev, "wcid=%d out of range\n", wcid);
return;
@@ -3044,8 +3048,12 @@ run_tx(struct run_softc *sc, struct mbuf *m,
struct ieee80211_node *ni)
txd->flags = qflags;
txwi = (struct rt2860_txwi *)(txd + 1);
txwi->xflags = xflags;
-   txwi->wcid = IEEE80211_IS_MULTICAST(wh->i_addr1) ?
-   0 : RUN_AID2WCID(ni->ni_associd);
+   if (IEEE80211_IS_MULTICAST(wh->i_addr1))
+   txwi->wcid = 0;
+   else {
+   txwi->wcid = (vap->iv_opmode == IEEE80211_M_STA) ?
+   1 : RUN_AID2WCID(ni->ni_associd);
+   }
/* clear leftover garbage bits */
txwi->flags = 0;
txwi->txop = 0;
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"


Re: buffalo wli-uc-gn wireless card sometimes unusable and emit "run0: wcid=xx out of range"

2012-12-31 Thread Jov
thanks very much,i will try the patch.

jov
在 2013-1-1 下午1:19,"PseudoCylon" 写道:

> > Message: 13
> > Date: Mon, 31 Dec 2012 18:11:04 +0800
> > From: Jov 
> > To: freebsd-questions@freebsd.org
> > Subject: buffalo wli-uc-gn wireless card sometimes unusable and emit
> > "run0: wcid=xx out of range"
> > Message-ID:
> > <
> cadyruxprp6os2mpk51yiwog-jkwtq+xpop48uzq+y15_our...@mail.gmail.com>
> > Content-Type: text/plain; charset=ISO-8859-1
> >
> > hi  experts:
> > I think the hardware is ok because I can use it in Win7. And in Freebsd
> > 9.1,it works for sometime,but sometimes after system reboot or I plug
> out &
> > plug in the card it my unusable.on the console it emmit:
> >  "run0: wcid=xx out of range" where xx is 91,87 and etc.
>
> Please try attached patch.
>
> Reboot or re-plug-in shouldn't be a cause of the problem. Receiving an
> association ID larger than device's max (64) is the problem. You must
> be using a high-end AP. Reboot or re-plug-in initiate re-association
> and just happen to receive a large association ID.
>
>
> AK
>
>
> --begin patch--
>
> diff --git a/dev/usb/wlan/if_run.c b/dev/usb/wlan/if_run.c
> index 3d2577f..ed11d97 100644
> --- a/dev/usb/wlan/if_run.c
> +++ b/dev/usb/wlan/if_run.c
> @@ -2019,7 +2019,8 @@ run_key_set_cb(void *arg)
> wcid = 0;   /* NB: update WCID0 for group keys */
> base = RT2860_SKEY(RUN_VAP(vap)->rvp_id, k->wk_keyix);
> } else {
> -   wcid = RUN_AID2WCID(associd);
> +   wcid = (vap->iv_opmode == IEEE80211_M_STA) ?
> +   1 : RUN_AID2WCID(associd);
> base = RT2860_PKEY(wcid);
> }
>
> @@ -2374,9 +2375,12 @@ run_newassoc(struct ieee80211_node *ni, int isnew)
> struct run_softc *sc = ic->ic_ifp->if_softc;
> uint8_t rate;
> uint8_t ridx;
> -   uint8_t wcid = RUN_AID2WCID(ni->ni_associd);
> +   uint8_t wcid;
> int i, j;
>
> +   wcid = (vap->iv_opmode == IEEE80211_M_STA) ?
> +   1 : RUN_AID2WCID(ni->ni_associd);
> +
> if (wcid > RT2870_WCID_MAX) {
> device_printf(sc->sc_dev, "wcid=%d out of range\n", wcid);
> return;
> @@ -3044,8 +3048,12 @@ run_tx(struct run_softc *sc, struct mbuf *m,
> struct ieee80211_node *ni)
> txd->flags = qflags;
> txwi = (struct rt2860_txwi *)(txd + 1);
> txwi->xflags = xflags;
> -   txwi->wcid = IEEE80211_IS_MULTICAST(wh->i_addr1) ?
> -   0 : RUN_AID2WCID(ni->ni_associd);
> +   if (IEEE80211_IS_MULTICAST(wh->i_addr1))
> +   txwi->wcid = 0;
> +   else {
> +   txwi->wcid = (vap->iv_opmode == IEEE80211_M_STA) ?
> +   1 : RUN_AID2WCID(ni->ni_associd);
> +   }
> /* clear leftover garbage bits */
> txwi->flags = 0;
> txwi->txop = 0;
>
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"

Re: buffalo wli-uc-gn wireless card sometimes unusable and emit "run0: wcid=xx out of range"

2013-01-03 Thread Jov
feedback:
the patch is fine for me,it works great! Thank you very much!

do I need send a PR for this problem?

2013/1/1 Jov 

> thanks very much,i will try the patch.
>
> jov
> 在 2013-1-1 下午1:19,"PseudoCylon" 写道:
>
> > Message: 13
>> > Date: Mon, 31 Dec 2012 18:11:04 +0800
>> > From: Jov 
>> > To: freebsd-questions@freebsd.org
>> > Subject: buffalo wli-uc-gn wireless card sometimes unusable and emit
>> > "run0: wcid=xx out of range"
>> > Message-ID:
>> > <
>> cadyruxprp6os2mpk51yiwog-jkwtq+xpop48uzq+y15_our...@mail.gmail.com>
>> > Content-Type: text/plain; charset=ISO-8859-1
>> >
>> > hi  experts:
>> > I think the hardware is ok because I can use it in Win7. And in Freebsd
>> > 9.1,it works for sometime,but sometimes after system reboot or I plug
>> out &
>> > plug in the card it my unusable.on the console it emmit:
>> >  "run0: wcid=xx out of range" where xx is 91,87 and etc.
>>
>> Please try attached patch.
>>
>> Reboot or re-plug-in shouldn't be a cause of the problem. Receiving an
>> association ID larger than device's max (64) is the problem. You must
>> be using a high-end AP. Reboot or re-plug-in initiate re-association
>> and just happen to receive a large association ID.
>>
>>
>> AK
>>
>>
>> --begin patch--
>>
>> diff --git a/dev/usb/wlan/if_run.c b/dev/usb/wlan/if_run.c
>> index 3d2577f..ed11d97 100644
>> --- a/dev/usb/wlan/if_run.c
>> +++ b/dev/usb/wlan/if_run.c
>> @@ -2019,7 +2019,8 @@ run_key_set_cb(void *arg)
>> wcid = 0;   /* NB: update WCID0 for group keys */
>> base = RT2860_SKEY(RUN_VAP(vap)->rvp_id, k->wk_keyix);
>> } else {
>> -   wcid = RUN_AID2WCID(associd);
>> +   wcid = (vap->iv_opmode == IEEE80211_M_STA) ?
>> +   1 : RUN_AID2WCID(associd);
>> base = RT2860_PKEY(wcid);
>> }
>>
>> @@ -2374,9 +2375,12 @@ run_newassoc(struct ieee80211_node *ni, int isnew)
>> struct run_softc *sc = ic->ic_ifp->if_softc;
>> uint8_t rate;
>> uint8_t ridx;
>> -   uint8_t wcid = RUN_AID2WCID(ni->ni_associd);
>> +   uint8_t wcid;
>> int i, j;
>>
>> +   wcid = (vap->iv_opmode == IEEE80211_M_STA) ?
>> +   1 : RUN_AID2WCID(ni->ni_associd);
>> +
>> if (wcid > RT2870_WCID_MAX) {
>> device_printf(sc->sc_dev, "wcid=%d out of range\n", wcid);
>> return;
>> @@ -3044,8 +3048,12 @@ run_tx(struct run_softc *sc, struct mbuf *m,
>> struct ieee80211_node *ni)
>> txd->flags = qflags;
>> txwi = (struct rt2860_txwi *)(txd + 1);
>> txwi->xflags = xflags;
>> -   txwi->wcid = IEEE80211_IS_MULTICAST(wh->i_addr1) ?
>> -   0 : RUN_AID2WCID(ni->ni_associd);
>> +   if (IEEE80211_IS_MULTICAST(wh->i_addr1))
>> +   txwi->wcid = 0;
>> +   else {
>> +   txwi->wcid = (vap->iv_opmode == IEEE80211_M_STA) ?
>> +   1 : RUN_AID2WCID(ni->ni_associd);
>> +   }
>> /* clear leftover garbage bits */
>> txwi->flags = 0;
>> txwi->txop = 0;
>>
>


-- 
jov
blog: http:amutu.com/blog
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"

Re: buffalo wli-uc-gn wireless card sometimes unusable and emit "run0: wcid=xx out of range"

2013-01-03 Thread Jov
PR 
url:http://www.freebsd.org/cgi/<http://www.freebsd.org/cgi/query-pr.cgi?pr=174963>
query-pr.cgi?pr=174963 <http://www.freebsd.org/cgi/query-pr.cgi?pr=174963>

thanks!

2013/1/4 Jov 

> feedback:
> the patch is fine for me,it works great! Thank you very much!
>
> do I need send a PR for this problem?
>
> 2013/1/1 Jov 
>
>> thanks very much,i will try the patch.
>>
>> jov
>> 在 2013-1-1 下午1:19,"PseudoCylon" 写道:
>>
>> > Message: 13
>>> > Date: Mon, 31 Dec 2012 18:11:04 +0800
>>> > From: Jov 
>>> > To: freebsd-questions@freebsd.org
>>> > Subject: buffalo wli-uc-gn wireless card sometimes unusable and emit
>>> > "run0: wcid=xx out of range"
>>> > Message-ID:
>>> > <
>>> cadyruxprp6os2mpk51yiwog-jkwtq+xpop48uzq+y15_our...@mail.gmail.com>
>>> > Content-Type: text/plain; charset=ISO-8859-1
>>> >
>>> > hi  experts:
>>> > I think the hardware is ok because I can use it in Win7. And in Freebsd
>>> > 9.1,it works for sometime,but sometimes after system reboot or I plug
>>> out &
>>> > plug in the card it my unusable.on the console it emmit:
>>> >  "run0: wcid=xx out of range" where xx is 91,87 and etc.
>>>
>>> Please try attached patch.
>>>
>>> Reboot or re-plug-in shouldn't be a cause of the problem. Receiving an
>>> association ID larger than device's max (64) is the problem. You must
>>> be using a high-end AP. Reboot or re-plug-in initiate re-association
>>> and just happen to receive a large association ID.
>>>
>>>
>>> AK
>>>
>>>
>>> --begin patch--
>>>
>>> diff --git a/dev/usb/wlan/if_run.c b/dev/usb/wlan/if_run.c
>>> index 3d2577f..ed11d97 100644
>>> --- a/dev/usb/wlan/if_run.c
>>> +++ b/dev/usb/wlan/if_run.c
>>> @@ -2019,7 +2019,8 @@ run_key_set_cb(void *arg)
>>> wcid = 0;   /* NB: update WCID0 for group keys */
>>> base = RT2860_SKEY(RUN_VAP(vap)->rvp_id, k->wk_keyix);
>>> } else {
>>> -   wcid = RUN_AID2WCID(associd);
>>> +   wcid = (vap->iv_opmode == IEEE80211_M_STA) ?
>>> +   1 : RUN_AID2WCID(associd);
>>> base = RT2860_PKEY(wcid);
>>> }
>>>
>>> @@ -2374,9 +2375,12 @@ run_newassoc(struct ieee80211_node *ni, int isnew)
>>> struct run_softc *sc = ic->ic_ifp->if_softc;
>>> uint8_t rate;
>>> uint8_t ridx;
>>> -   uint8_t wcid = RUN_AID2WCID(ni->ni_associd);
>>> +   uint8_t wcid;
>>> int i, j;
>>>
>>> +   wcid = (vap->iv_opmode == IEEE80211_M_STA) ?
>>> +   1 : RUN_AID2WCID(ni->ni_associd);
>>> +
>>> if (wcid > RT2870_WCID_MAX) {
>>> device_printf(sc->sc_dev, "wcid=%d out of range\n",
>>> wcid);
>>> return;
>>> @@ -3044,8 +3048,12 @@ run_tx(struct run_softc *sc, struct mbuf *m,
>>> struct ieee80211_node *ni)
>>> txd->flags = qflags;
>>> txwi = (struct rt2860_txwi *)(txd + 1);
>>> txwi->xflags = xflags;
>>> -   txwi->wcid = IEEE80211_IS_MULTICAST(wh->i_addr1) ?
>>> -   0 : RUN_AID2WCID(ni->ni_associd);
>>> +   if (IEEE80211_IS_MULTICAST(wh->i_addr1))
>>> +   txwi->wcid = 0;
>>> +   else {
>>> +   txwi->wcid = (vap->iv_opmode == IEEE80211_M_STA) ?
>>> +   1 : RUN_AID2WCID(ni->ni_associd);
>>> +   }
>>> /* clear leftover garbage bits */
>>> txwi->flags = 0;
>>> txwi->txop = 0;
>>>
>>
>
>
> --
> jov
> blog: http:amutu.com/blog
>



-- 
jov
blog: http:amutu.com/blog
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"