#6589 BLOC Update.: xo stops responding to mesh path requests frames

Zarro Boogs per Child bugtracker at laptop.org
Wed Apr 16 21:20:36 EDT 2008


#6589: xo stops responding to mesh path requests frames
-----------------------+----------------------------------------------------
  Reporter:  jcardona  |       Owner:  dwmw2   
      Type:  defect    |      Status:  new     
  Priority:  blocker   |   Milestone:  Update.1
 Component:  wireless  |     Version:          
Resolution:            |    Keywords:          
  Verified:  1         |    Blocking:          
 Blockedby:            |  
-----------------------+----------------------------------------------------

Comment(by carrano):

 Tests with the suggested patch used in conjunction with firmware release
 22p9 (under test at the moment) showed no occurrence of this bug.

 I'll keep this open until we have the fix in the kernel and the firmware
 approved (#6869).

 But we have good reasons to believe it is fixed.

 Root causes were (quoting Ashish):


 '''6589 Issue 1'''

 Driver does not wait long enough after firmware download.

 1.) Firmware ready event (0x30) has been added to detect whether firmware
 is up or not.

 2.) Alternatively driver should wait long enough. In practice it will be
 good to combine these two in the driver to allow compatibility with old
 firmware versions which don't send such event.

 '''6589 issue 2'''

 There was a resource (timer) leak in mesh stop logic.

 Repeated mesh start/stop eventually broken mesh routing as all the timers
 used for mesh were leaked.

 As per driver code, which I am using currently, it seems when we change
 channel, driver issues
 MESH_CONFIG (stops mesh), channel switch and MESH_CONFIG (mesh start) in a
 sequence.

 Therefore, repeated channel change, NM may be one such application,
 exhausted all the timers used for mesh and mesh routing failed.

 A quick way to get 6589 state.
 Repeat the following ~10 times and you should see 6589 with old firmware.
 {{{
 iwconfig eth0 channel 1
 iwconfig eth0 channel 11
 }}}

 Properly releasing timers, which are used for mesh routing during mesh
 stop, fixes above issue.

-- 
Ticket URL: <http://dev.laptop.org/ticket/6589#comment:18>
One Laptop Per Child <http://laptop.org/>
OLPC bug tracking system


More information about the Bugs mailing list