This patch series fixes the fragmentation implementation according to rfc4944.
So ping (with fragmentation) to contiki(or other rfc4944 compatible 6lowpan
stacks) comes possible.

I wanted to made a fragmentation implementation with the internal fragmentation
api(include/net/inet_frag.h). The current desgin/architecture of the 6lowpan
stack doesn't let me use this api right now. So I fix the current implementation
for fragmentation. I am working to change the desgin/architecture to use the
internal fragmentation api.

It also fixes the udp uncompression/compression implementation and other issues
which I detected while testing.

Changes since v2:
- add race condition patches
  - hold fraglist lock while accessing list in timer expire function.
  - use try_to_del_timer_sync for a special case of race condition.
- split udp fix in several small fixes, so it's easier to review.
- change commit msgs issues which are reported from Werner (thanks).
  Added also a sentence for the other magic number.
- fix use of new skb_mac_header and skb_network_header
- small changes on commit msgs.

Alexander Aring (15):
  6lowpan: set and use mac_len for mac header length
  6lowpan: clean lowpan netdev setup
  6lowpan: remove several copies of sk_buff
  6lowpan: fix fragmentation on sending side
  6lowpan: allow to skip bytes in lowpan_fetch_skb
  6lowpan: fix fragmentation on receiving side
  6lowpan: fix udp nullpointer dereferencing
  6lowpan: fix udp compress ordering
  6lowpan: fix udp byte ordering
  6lowpan: add udp warning for elided checksum
  6lowpan: udp use lowpan_fetch_skb function
  6lowpan: udp use subtraction on both conditions
  6lowpan: udp remove unecessary break
  6lowpan: fix fragmentation race condition
  6lowpan: use try_to_del_timer_sync instead del_timer_sync

 include/net/ieee802154_netdev.h |   2 +
 net/ieee802154/6lowpan.c        | 538 ++++++++++++++++++++--------------------
 net/ieee802154/6lowpan.h        |  33 ++-
 net/mac802154/wpan.c            |   6 +-
 4 files changed, 311 insertions(+), 268 deletions(-)

-- 
1.8.4


------------------------------------------------------------------------------
October Webinars: Code for Performance
Free Intel webinars can help you accelerate application performance.
Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from 
the latest Intel processors and coprocessors. See abstracts and register >
http://pubads.g.doubleclick.net/gampad/clk?id=60134071&iu=/4140/ostg.clktrk
_______________________________________________
Linux-zigbee-devel mailing list
Linux-zigbee-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-zigbee-devel

Reply via email to