1. 26 2月, 2018 1 次提交
    • S
      batman-adv: Fix netlink dumping of BLA claims · b0264ecd
      Sven Eckelmann 提交于
      The function batadv_bla_claim_dump_bucket must be able to handle
      non-complete dumps of a single bucket. It tries to do that by saving the
      latest dumped index in *idx_skip to inform the caller about the current
      state.
      
      But the caller only assumes that buckets were not completely dumped when
      the return code is non-zero. This function must therefore also return a
      non-zero index when the dumping of an entry failed. Otherwise the caller
      will just skip all remaining buckets.
      
      And the function must also reset *idx_skip back to zero when it finished a
      bucket. Otherwise it will skip the same number of entries in the next
      bucket as the previous one had.
      
      Fixes: 04f3f5bf ("batman-adv: add B.A.T.M.A.N. Dump BLA claims via netlink")
      Reported-by: NLinus Lüssing <linus.luessing@c0d3.blue>
      Signed-off-by: NSven Eckelmann <sven@narfation.org>
      Signed-off-by: NSimon Wunderlich <sw@simonwunderlich.de>
      b0264ecd
  2. 22 12月, 2017 1 次提交
  3. 16 12月, 2017 3 次提交
  4. 23 5月, 2017 1 次提交
  5. 22 3月, 2017 3 次提交
  6. 17 3月, 2017 1 次提交
  7. 26 1月, 2017 1 次提交
  8. 19 1月, 2017 1 次提交
    • T
      net: Remove usage of net_device last_rx member · 4a7c9726
      Tobias Klauser 提交于
      The network stack no longer uses the last_rx member of struct net_device
      since the bonding driver switched to use its own private last_rx in
      commit 9f242738 ("bonding: use last_arp_rx in slave_last_rx()").
      
      However, some drivers still (ab)use the field for their own purposes and
      some driver just update it without actually using it.
      
      Previously, there was an accompanying comment for the last_rx member
      added in commit 4dc89133 ("net: add a comment on netdev->last_rx")
      which asked drivers not to update is, unless really needed. However,
      this commend was removed in commit f8ff080d ("bonding: remove
      useless updating of slave->dev->last_rx"), so some drivers added later
      on still did update last_rx.
      
      Remove all usage of last_rx and switch three drivers (sky2, atp and
      smc91c92_cs) which actually read and write it to use their own private
      copy in netdev_priv.
      
      Compile-tested with allyesconfig and allmodconfig on x86 and arm.
      
      Cc: Eric Dumazet <eric.dumazet@gmail.com>
      Cc: Jay Vosburgh <j.vosburgh@gmail.com>
      Cc: Veaceslav Falico <vfalico@gmail.com>
      Cc: Andy Gospodarek <andy@greyhouse.net>
      Cc: Mirko Lindner <mlindner@marvell.com>
      Cc: Stephen Hemminger <stephen@networkplumber.org>
      Signed-off-by: NTobias Klauser <tklauser@distanz.ch>
      Acked-by: NEric Dumazet <edumazet@google.com>
      Reviewed-by: NJay Vosburgh <jay.vosburgh@canonical.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      4a7c9726
  9. 09 8月, 2016 6 次提交
  10. 05 7月, 2016 2 次提交
  11. 30 6月, 2016 1 次提交
  12. 10 5月, 2016 2 次提交
  13. 04 5月, 2016 5 次提交
  14. 23 2月, 2016 4 次提交
  15. 10 2月, 2016 2 次提交
  16. 02 2月, 2016 4 次提交
  17. 16 1月, 2016 1 次提交
    • S
      batman-adv: Avoid recursive call_rcu for batadv_bla_claim · 63b39927
      Sven Eckelmann 提交于
      The batadv_claim_free_ref function uses call_rcu to delay the free of the
      batadv_bla_claim object until no (already started) rcu_read_lock is enabled
      anymore. This makes sure that no context is still trying to access the
      object which should be removed. But batadv_bla_claim also contains a
      reference to backbone_gw which must be removed.
      
      The reference drop of backbone_gw was done in the call_rcu function
      batadv_claim_free_rcu but should actually be done in the
      batadv_claim_release function to avoid nested call_rcus. This is important
      because rcu_barrier (e.g. batadv_softif_free or batadv_exit) will not
      detect the inner call_rcu as relevant for its execution. Otherwise this
      barrier will most likely be inserted in the queue before the callback of
      the first call_rcu was executed. The caller of rcu_barrier will therefore
      continue to run before the inner call_rcu callback finished.
      
      Fixes: 23721387 ("batman-adv: add basic bridge loop avoidance code")
      Signed-off-by: NSven Eckelmann <sven@narfation.org>
      Acked-by: NSimon Wunderlich <sw@simonwunderlich.de>
      Signed-off-by: NMarek Lindner <mareklindner@neomailbox.ch>
      Signed-off-by: NAntonio Quartulli <a@unstable.cc>
      63b39927
  18. 09 1月, 2016 1 次提交