Subject: Re: ralink wireless drivers
To: None <tech-net@netbsd.org>
From: FUKAUMI Naoki <fun@naobsd.org>
List: tech-net
Date: 07/04/2005 11:58:13
On Sun, 3 Jul 2005 19:44:04 +0900
FUKAUMI Naoki <fun@naobsd.org> wrote:

> Remove IEEE80211_C_WEP flag from ic_caps, i.e. use software WEP
> encrypting/decryption, then I can use WEP on my ral devices.
> (thanks damien!)
> 
> But it's very UNSTABLE. I always get panic() in wep_encryption()

panic() can be reproduced by

  $ traceroute foobar 4096    /* (or more than 4096) */

on my amd64 machine.

panic() message is:
  uvm_fault(0xffffffff807c23c0, 0xffff80000cab5000, 0, 2) -> e

panic() is in sys/net80211/ieee80211_crypto_wep.c::wep_encrypt(),

	for (k = 0; k < buflen; k++) {
		crc = crc32_table[(crc ^ *pos) & 0xff] ^ (crc >> 8);
		i = (i + 1) & 0xff;
		j = (j + S[i]) & 0xff;
		S_SWAP(i, j);
		*pos++ ^= S[(S[i] + S[j]) & 0xff];
	}

if "pos" points >= 0xffff80000cab5000 (e.g. 0xffff80000cab503c), then
panic().

Any idea?

--
FUKAUMI Naoki