1. 06 May, 2013 5 commits
  2. 02 May, 2013 3 commits
  3. 01 May, 2013 8 commits
  4. 27 Apr, 2013 14 commits
  5. 26 Apr, 2013 8 commits
  6. 25 Apr, 2013 2 commits
    • Vlad Yasevich's avatar
      net: fix address check in rtnl_fdb_del · 37fe0660
      Vlad Yasevich authored
      Commit 6681712d
      	vxlan: generalize forwarding tables
      
      relaxed the address checks in rtnl_fdb_del() to use is_zero_ether_addr().
      This allows users to add multicast addresses using the fdb API.  However,
      the check in rtnl_fdb_del() still uses a more strict
      is_valid_ether_addr() which rejects multicast addresses.  Thus it
      is possible to add an fdb that can not be later removed.
      Relax the check in rtnl_fdb_del() as well.
      Signed-off-by: default avatarVlad Yasevich <vyasevic@redhat.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      37fe0660
    • Sebastian Siewior's avatar
      net/cpsw: fix irq_disable() with threaded interrupts · a11fbba9
      Sebastian Siewior authored
      During high throughput it is likely that we receive both: an RX and TX
      interrupt. The normal behaviour is that once we enter the ISR the
      interrupts are disabled in the IRQ chip and so the ISR is invoked only
      once and the interrupt line is disabled once. It will be re-enabled
      after napi completes.
      With threaded interrupts on the other hand the interrupt the interrupt
      is disabled immediately and the ISR is marked for "later". By having TX
      and RX interrupt marked pending we invoke them both and disable the
      interrupt line twice. The napi callback is still executed once and so
      after it completes we remain with interrupts disabled.
      
      The initial patch simply removed the cpsw_{enable|disable}_irq() calls
      and it worked well on my AM335X ES1.0 (beagle bone). On ES2.0 (beagle
      bone black) it caused an never ending interrupt (even after the mask via
      cpsw_intr_disable()) according to Mugunthan V N. Since I don't have the
      ES2.0 and no idea what is going on this patch tracks the state of the
      irq_disable() call and execute it only when not yet done.
      The book keeping is done on the first struct since with dual_emac we can
      have two of those and only one interrupt line.
      Signed-off-by: default avatarSebastian Andrzej Siewior <bigeasy@linutronix.de>
      Acked-by: default avatarMugunthan V N <mugunthanvnm@ti.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      a11fbba9