1. 30 6月, 2016 3 次提交
  2. 10 5月, 2016 2 次提交
  3. 23 2月, 2016 5 次提交
  4. 16 2月, 2016 1 次提交
    • S
      batman-adv: Only put gw_node list reference when removed · c18bdd01
      Sven Eckelmann 提交于
      The batadv_gw_node reference counter in batadv_gw_node_update can only be
      reduced when the list entry was actually removed. Otherwise the reference
      counter may reach zero when batadv_gw_node_update is called from two
      different contexts for the same gw_node but only one context is actually
      removing the entry from the list.
      
      The release function for this gw_node is not called inside the list_lock
      spinlock protected region because the function batadv_gw_node_update still
      holds a gw_node reference for the object pointer on the stack. Thus the
      actual release function (when required) will be called only at the end of
      the function.
      
      Fixes: bd3524c1 ("batman-adv: remove obsolete deleted attribute for gateway node")
      Signed-off-by: NSven Eckelmann <sven@narfation.org>
      Signed-off-by: NMarek Lindner <mareklindner@neomailbox.ch>
      Signed-off-by: NAntonio Quartulli <a@unstable.cc>
      c18bdd01
  5. 10 2月, 2016 2 次提交
  6. 02 2月, 2016 2 次提交
  7. 28 8月, 2015 2 次提交
  8. 25 8月, 2015 2 次提交
  9. 12 8月, 2015 2 次提交
  10. 05 8月, 2015 1 次提交
    • S
      batman-adv: initialize up/down values when adding a gateway · 27a4d5ef
      Simon Wunderlich 提交于
      Without this initialization, gateways which actually announce up/down
      bandwidth of 0/0 could be added. If these nodes get purged via
      _batadv_purge_orig() later, the gw_node structure does not get removed
      since batadv_gw_node_delete() updates the gw_node with up/down
      bandwidth of 0/0, and the updating function then discards the change
      and does not free gw_node.
      
      This results in leaking the gw_node structures, which references other
      structures: gw_node -> orig_node -> orig_node_ifinfo -> hardif. When
      removing the interface later, the open reference on the hardif may cause
      hangs with the infamous "unregister_netdevice: waiting for mesh1 to
      become free. Usage count = 1" message.
      Signed-off-by: NSimon Wunderlich <simon@open-mesh.com>
      Signed-off-by: NMarek Lindner <mareklindner@neomailbox.ch>
      Signed-off-by: NAntonio Quartulli <antonio@meshcoding.com>
      27a4d5ef
  11. 07 6月, 2015 2 次提交
    • S
    • S
      batman-adv: Add required includes to all files · 1e2c2a4f
      Sven Eckelmann 提交于
      The header files could not be build indepdent from each other. This is
      happened because headers didn't include the files for things they've used.
      This was problematic because the success of a build depended on the
      knowledge about the right order of local includes.
      
      Also source files were not including everything they've used explicitly.
      Instead they required that transitive includes are always stable. This is
      problematic because some transitive includes are not obvious, depend on
      config settings and may not be stable in the future.
      
      The order for include blocks are:
      
       * primary headers (main.h and the *.h file of a *.c file)
       * global linux headers
       * required local headers
       * extra forward declarations for pointers in function/struct declarations
      
      The only exceptions are linux/bitops.h and linux/if_ether.h in packet.h.
      This header file is shared with userspace applications like batctl and must
      therefore build together with userspace applications. The header
      linux/bitops.h is not part of the uapi headers and linux/if_ether.h
      conflicts with the musl implementation of netinet/if_ether.h. The
      maintainers rejected the use of __KERNEL__ preprocessor checks and thus
      these two headers are only in main.h. All files using packet.h first have
      to include main.h to work correctly.
      Reported-by: NMarkus Pargmann <mpa@pengutronix.de>
      Signed-off-by: NSven Eckelmann <sven@narfation.org>
      Signed-off-by: NMarek Lindner <mareklindner@neomailbox.ch>
      1e2c2a4f
  12. 29 5月, 2015 1 次提交
  13. 23 2月, 2015 1 次提交
  14. 21 2月, 2015 1 次提交
  15. 08 1月, 2015 1 次提交
  16. 24 12月, 2014 1 次提交
  17. 16 5月, 2014 1 次提交
  18. 22 3月, 2014 2 次提交
  19. 14 2月, 2014 1 次提交
  20. 12 1月, 2014 3 次提交
  21. 09 1月, 2014 4 次提交