Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4185042
  • 博文数量: 601
  • 博客积分: 15410
  • 博客等级: 上将
  • 技术积分: 6884
  • 用 户 组: 普通用户
  • 注册时间: 2007-05-16 08:11
个人简介

独学而无友,则孤陋而寡闻!

文章分类

全部博文(601)

文章存档

2020年(1)

2018年(4)

2017年(7)

2016年(42)

2015年(25)

2014年(15)

2013年(36)

2012年(46)

2011年(117)

2010年(148)

2009年(82)

2008年(37)

2007年(41)

分类: BSD

2015-02-27 14:39:10

AR9285做的hostap,在繁忙时总是出现错误提示,一旦出现错误,则暂时不能上网,找了很长时间也没找到调整的选项,这个错误在ap频道有重叠的时候会经常出现:

 

ath0: stuck beacon; resetting (bmiss count 4)

ath1: stuck beacon; resetting (bmiss count 4)

ath1: stuck beacon; resetting (bmiss count 4)

ath1: stuck beacon; resetting (bmiss count 4)

ath1: stuck beacon; resetting (bmiss count 4)

ath1: stuck beacon; resetting (bmiss count 0)

ath1: stuck beacon; resetting (bmiss count 4)

 

对于它的解决方法,包括国外的网站上都没有有效的解决方法,只是给出一个大致的原理,出现这个错误的原因是丢失过多的beacons帧,经过艰苦的追踪,发现在if_ath.c里有定义,默认是4

/usr/src/sys/dev/ath/if_ath.c

int ath_bstuck_threshold = 4;           /* max missed beacons */

SYSCTL_INT(_hw_ath, OID_AUTO, bstuck, CTLFLAG_RW, &ath_bstuck_threshold,

            0, "max missed beacon xmits before chip reset");

第二句也给了另外一个提示:这是一个内核变量,变量名是bstuck,知道变量名就好办了,sysctl -a | grep bstuck就会发现:

hw.ath.bstuck: 4

 

把它改为50,基本上不再提示了。




阅读(2825) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~