o11s / open80211s

open80211s
Other
242 stars 55 forks source link

HWMP path refresh not happening #25

Open twpedersen opened 11 years ago

twpedersen commented 11 years ago
  1. start a mesh
  2. ping
  3. paths are not refreshed

This issue is at least on wireless-testing HEAD, with the last known working kernel 3.1-something..

git shows quite a few changes:

git log HEAD ^v3.1 net/mac80211/mesh_hwmp.c:

bf7cd94 mac80211: clean up mesh code 4a3cb70 mac80211: constify IE parsing 3f52b7e mac80211: mesh power save basics 9ebea38 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless 8680451 mac80211: add encrypt headroom to PERR frames 9cbbffe mac80211: set NEED_TXPROCESSING for PERR frames 75ea719 mac80211: fix mesh_hwmp kerneldoc 4bd4c2d mac80211: clean up mpath_move_to_queue() 2c53040 net: Fix (nearly-)kernel-doc comments for various functions bdcbd8e mac80211: clean up debugging 7ebfa46 mac80211: fix and improve mesh RANN processing 728b19e {nl,cfg,mac}80211: implement dot11MeshHWMPconfirmationInterval 3fbf4b7 mac80211: implement the proactive PREP generation a69cc44 mac80211: implement the proactive PREQ generation 35b3fe1 mac80211: Rename stainfo variable for the more common sta e3f5d16 mac80211: Remove unused variable f0d2320 net: mac80211: Convert printk(KERN_DEBUG to pr_debug a0d0d16 Merge git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next 7d4e15b mac80211: fix the increment of unicast/multicast counters for forwarded PREQ b203ca3 mac80211: Convert compare_ether_addr to ether_addr_equal 35bcd59 mac80211: fix the assignment of PREQ's MAC address for Proactive RANN d2a079f mac80211: fix the RANN propagation issues 292c41a mac80211: fix the sparse warnings on endian handling in RANN propagation 6b62bf3 mac80211: fix mesh airtime link metric estimating d665508 mac80211: fix the support of setting non-forwarding entity in Mesh 888d04d mac80211: use compare_ether_addr on MAC addresses instead of memcmp 3d045a5 mac80211: Fix the generation of PREQs in proactive RANN mechanism of HWMP d26ad37 mac80211: clean up asm/unaligned.h inclusion 874239f Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless 94f9065 {nl,cfg,mac}80211: Add support of setting non-forwarding entity in Mesh 65e8b0c mac80211: Use the right headroom size for mesh mgmt frames 0cfda85 mac80211: don't initiate path discovery when forwarding frame with unknown DA dca7e94 {nl,cfg,mac}80211: implement dot11MeshHWMPperrMinInterval 3c26f1f mac80211: fix switched HWMP frame addresses 7e3c886 mac80211: failed forwarded mesh frame addressing f2dc798 mac80211: minor cleanup to mesh state locking 88d5346 mac80211: memory leak in mesh_queue_preq() d0ce185 mac80211: simplify mesh frame queue mapping and QoS f3011cf mac80211: Avoid filling up mesh preq queue with redundant requests 3b69a9c mac80211: comment allocation of mesh frames 9709131 mac80211: Fix regression that allowed mpaths between non-peers. 2154c81 mac80211: Mesh data frames must have the QoS header 2cca397 mac80211: Defer tranmission of mesh path errors 16dd726 {nl,cfg,mac}80211: let userspace make meshif mesh gate 0507e15 {nl,cfg,mac}80211: let userspace set RANN interval 5ee68e5 mac80211: mesh gate implementation 7646887 mac80211: improve mpath debugging 25d49e4 mac80211: update mesh path selection frame format 1b1de7a mac80211: fix erroneous clearing of MESH_PATH_SN_VALID flag 987dafa mac80211/mesh: make the preq queue lock consistent

A bisect on that list of commits should narrow down which patch introduced this regression fairly quickly.

jcard0na commented 11 years ago

This might be a good opportunity to put our new jenkins setup to the test. I believe there is an hwim testing path refresh, but if there isn't it should be quite straightforward. Then we would need jenkins to run git disect for us: https://gist.github.com/winks/4705941

Anyone can take ownership of this?

Cheers,

Javier

On Wed, Feb 27, 2013 at 12:35 PM, twpedersen notifications@github.comwrote:

  1. start a mesh
  2. ping
  3. paths are not refreshed

This issue is at least on wireless-testing HEAD, with the last known working kernel 3.1-something..

git shows quite a few changes:

git log HEAD ^v3.1 net/mac80211/mesh_hwmp.c:

bf7cd94 https://github.com/cozybit/open80211s/commit/bf7cd94 mac80211: clean up mesh code 4a3cb70 https://github.com/cozybit/open80211s/commit/4a3cb70 mac80211: constify IE parsing 3f52b7e https://github.com/cozybit/open80211s/commit/3f52b7e mac80211: mesh power save basics 9ebea38 https://github.com/cozybit/open80211s/commit/9ebea38 Merge branch 'master' of git:// git.kernel.org/pub/scm/linux/kernel/git/linville/wireless 8680451 https://github.com/cozybit/open80211s/commit/8680451 mac80211: add encrypt headroom to PERR frames 9cbbffe https://github.com/cozybit/open80211s/commit/9cbbffe mac80211: set NEED_TXPROCESSING for PERR frames 75ea719 https://github.com/cozybit/open80211s/commit/75ea719 mac80211: fix mesh_hwmp kerneldoc 4bd4c2d https://github.com/cozybit/open80211s/commit/4bd4c2d mac80211: clean up mpath_move_to_queue() 2c53040 https://github.com/cozybit/open80211s/commit/2c53040 net: Fix (nearly-)kernel-doc comments for various functions bdcbd8e https://github.com/cozybit/open80211s/commit/bdcbd8e mac80211: clean up debugging 7ebfa46 mac80211: fix and improve mesh RANN processing 728b19e {nl,cfg,mac}80211: implement dot11MeshHWMPconfirmationInterval 3fbf4b7 mac80211: implement the proactive PREP generation a69cc44 mac80211: implement the proactive PREQ generation 35b3fe1 mac80211: Rename stainfo variable for the more common sta e3f5d16 mac80211: Remove unused variable f0d2320 net: mac80211: Convert printk(KERN_DEBUG to pr_debug a0d0d16 Merge git:// git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next 7d4e15b mac80211: fix the increment of unicast/multicast counters for forwarded PREQ b203ca3 mac80211: Convert compare_ether_addr to ether_addr_equal 35bcd59 mac80211: fix the assignment of PREQ's MAC address for Proactive RANN d2a079f mac80211: fix the RANN propagation issues 292c41a mac80211: fix the sparse warnings on endian handling in RANN propagation 6b62bf3 mac80211: fix mesh airtime link metric estimating d665508 mac80211: fix the support of setting non-forwarding entity in Mesh 888d04d mac80211: use compare_ether_addr on MAC addresses instead of memcmp 3d045a5 mac80211: Fix the generation of PREQs in proactive RANN mechanism of HWMP d26ad37 mac80211: clean up asm/unaligned.h inclusion 874239f Merge branch 'master' of git:// git.kernel.org/pub/scm/linux/kernel/git/linville/wireless 94f9065 {nl,cfg,mac}80211: Add support of setting non-forwarding entity in Mesh 65e8b0c mac80211: Use the right headroom size for mesh mgmt frames 0cfda85 mac80211: don't initiate path discovery when forwarding frame with unknown DA dca7e94 {nl,cfg,mac}80211: implement dot11MeshHWMPperrMinInterval 3c26f1f mac80211: fix switched HWMP frame addresses 7e3c886 mac80211: failed forwarded mesh frame addressing f2dc798 mac80211: minor cleanup to mesh state locking 88d5346 mac80211: memory leak in mesh_queue_preq() d0ce185 mac80211: simplify mesh frame queue mapping and QoS f3011cf mac80211: Avoid filling up mesh preq queue with redundant requests 3b69a9c mac80211: comment allocation of mesh frames 9709131 mac80211: Fix regression that allowed mpaths between non-peers. 2154c81 mac80211: Mesh data frames must have the QoS header 2cca397 mac80211: Defer tranmission of mesh path errors 16dd726 {nl,cfg,mac}80211: let userspace make meshif mesh gate 0507e15 {nl,cfg,mac}80211: let userspace set RANN interval 5ee68e5 mac80211: mesh gate implementation 7646887 mac80211: improve mpath debugging 25d49e4 mac80211: update mesh path selection frame format 1b1de7a mac80211: fix erroneous clearing of MESH_PATH_SN_VALID flag 987dafa mac80211/mesh: make the preq queue lock consistent

A bisect on that list of commits should narrow down which patch introduced this regression fairly quickly.

— Reply to this email directly or view it on GitHubhttps://github.com/cozybit/open80211s/issues/25 .

Javier Cardona cozybit Inc. http://www.cozybit.com

ashokrajnagarajan commented 11 years ago

claiming the ownership..

jasonabele commented 11 years ago

Regarding Javier's comment about bisect via Jenkins (https://github.com/cozybit/open80211s/issues/25#issuecomment-14227410), please note that the referenced script (https://gist.github.com/winks/4705941) is merely looking up git hash's of passing and failing Jenkins builds and then running a local git bisect without any further jenkins involvement.

I think there may be scope for getting jenkins involved in a git bisect, we need a little more of a plan of what we are trying to accomplish and how ... I am happy to discuss further with whomever is working on this.