1. 17 2月, 2012 1 次提交
    • S
      batman-adv: Explicitly mark the common header structure · 76543d14
      Sven Eckelmann 提交于
      All batman-adv packets have a common 3 byte header. It can be used to share
      some code between different code paths, but it was never explicit stated that
      this header has to be always the same for all packets. Therefore, new code
      changes always have the problem that they may accidently introduce regressions
      by moving some elements around.
      
      A new structure is introduced that contains the common header and makes it
      easier visible that these 3 bytes have to be the same for all on-wire packets.
      Signed-off-by: NSven Eckelmann <sven@narfation.org>
      Signed-off-by: NMarek Lindner <lindner_marek@yahoo.de>
      76543d14
  2. 12 12月, 2011 3 次提交
  3. 20 11月, 2011 1 次提交
  4. 30 5月, 2011 1 次提交
  5. 02 5月, 2011 1 次提交
  6. 18 4月, 2011 1 次提交
  7. 05 3月, 2011 5 次提交
  8. 12 2月, 2011 1 次提交
  9. 31 1月, 2011 1 次提交
  10. 17 12月, 2010 1 次提交
  11. 30 11月, 2010 3 次提交
    • S
      Staging: batman-adv: Limit spin_locks to spin_lock_bh · 7a18deb7
      Sven Eckelmann 提交于
      spin_lock_irqsave disables the IRQs and stores them inside the flags
      provided by the caller. This is needed to protect a bottom half handler
      or a user context critical section from being interrupted by an
      interrupt handler which also tries to acquire the spinlock and locks
      forever.
      
      The linux device drivers will receive the packets inside an interrupt
      handler and the network infrastructure will process them inside bottom
      half. Thus batman-adv will only run in user context and bottom half
      handlers. We can conclude that batman-adv doesn't share its own
      spinlocks with real interrupt handlers.
      
      This makes it possible to exchange the quite complex spin_lock_irqsave
      with spin_lock_bh which only stops bottom halves from running on the
      current cpu, but allows interrupt handlers to take over to keep the
      interrupt latency low.
      Signed-off-by: NSven Eckelmann <sven.eckelmann@gmx.de>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      7a18deb7
    • S
      Staging: batman-adv: Remove hashdata_choose_cb from hash · 6d5e6542
      Sven Eckelmann 提交于
      Function pointers cannot be inlined by a compiler and thus always has
      the overhead of an call. hashdata_choose_cb's are one of the most often
      called function pointers and its overhead must kept relative low.
      
      As first step, every function which uses this function pointer takes it
      as parameter instead of storing it inside the hash abstraction
      structure.
      
      This not generate any performance gain right now. The called functions
      must also be able to be inlined by the calling functions to enable
      inlining of the function pointer.
      Reported-by: NDavid S. Miller <davem@davemloft.net>
      Signed-off-by: NSven Eckelmann <sven.eckelmann@gmx.de>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      6d5e6542
    • S
      Staging: batman-adv: Remove hashdata_compare_cb from hash · 51f3d8a2
      Sven Eckelmann 提交于
      Function pointers cannot be inlined by a compiler and thus always has
      the overhead of an call. hashdata_compare_cb's are one of the most often
      called function pointers and its overhead must kept relative low.
      
      As first step, every function which uses this function pointer takes it
      as parameter instead of storing it inside the hash abstraction
      structure.
      
      This not generate any performance gain right now. The called functions
      must also be able to be inlined by the calling functions to enable
      inlining of the function pointer.
      Reported-by: NDavid S. Miller <davem@davemloft.net>
      Signed-off-by: NSven Eckelmann <sven.eckelmann@gmx.de>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      51f3d8a2
  12. 21 9月, 2010 1 次提交
  13. 05 9月, 2010 3 次提交
  14. 24 8月, 2010 1 次提交
  15. 23 7月, 2010 1 次提交
  16. 09 7月, 2010 2 次提交
  17. 23 6月, 2010 2 次提交