1. 22 10月, 2009 1 次提交
  2. 23 9月, 2009 1 次提交
    • J
      BUILD_BUG_ON(): fix it and a couple of bogus uses of it · 8c87df45
      Jan Beulich 提交于
      gcc permitting variable length arrays makes the current construct used for
      BUILD_BUG_ON() useless, as that doesn't produce any diagnostic if the
      controlling expression isn't really constant.  Instead, this patch makes
      it so that a bit field gets used here.  Consequently, those uses where the
      condition isn't really constant now also need fixing.
      
      Note that in the gfp.h, kmemcheck.h, and virtio_config.h cases
      MAYBE_BUILD_BUG_ON() really just serves documentation purposes - even if
      the expression is compile time constant (__builtin_constant_p() yields
      true), the array is still deemed of variable length by gcc, and hence the
      whole expression doesn't have the intended effect.
      
      [akpm@linux-foundation.org: make arch/sparc/include/asm/vio.h compile]
      [akpm@linux-foundation.org: more nonsensical assertions in tpm.c..]
      Signed-off-by: NJan Beulich <jbeulich@novell.com>
      Cc: Andi Kleen <andi@firstfloor.org>
      Cc: Rusty Russell <rusty@rustcorp.com.au>
      Cc: Catalin Marinas <catalin.marinas@arm.com>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Rajiv Andrade <srajiv@linux.vnet.ibm.com>
      Cc: Mimi Zohar <zohar@us.ibm.com>
      Cc: James Morris <jmorris@namei.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      8c87df45
  3. 09 9月, 2009 1 次提交
  4. 01 9月, 2009 1 次提交
  5. 13 8月, 2009 1 次提交
  6. 18 6月, 2009 1 次提交
    • J
      net: group address list and its count · 31278e71
      Jiri Pirko 提交于
      This patch is inspired by patch recently posted by Johannes Berg. Basically what
      my patch does is to group list and a count of addresses into newly introduced
      structure netdev_hw_addr_list. This brings us two benefits:
      1) struct net_device becames a bit nicer.
      2) in the future there will be a possibility to operate with lists independently
         on netdevices (with exporting right functions).
      I wanted to introduce this patch before I'll post a multicast lists conversion.
      Signed-off-by: NJiri Pirko <jpirko@redhat.com>
      
       drivers/net/bnx2.c              |    4 +-
       drivers/net/e1000/e1000_main.c  |    4 +-
       drivers/net/ixgbe/ixgbe_main.c  |    6 +-
       drivers/net/mv643xx_eth.c       |    2 +-
       drivers/net/niu.c               |    4 +-
       drivers/net/virtio_net.c        |   10 ++--
       drivers/s390/net/qeth_l2_main.c |    2 +-
       include/linux/netdevice.h       |   17 +++--
       net/core/dev.c                  |  130 ++++++++++++++++++--------------------
       9 files changed, 89 insertions(+), 90 deletions(-)
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      31278e71
  7. 30 5月, 2009 1 次提交
    • J
      net: convert unicast addr list · ccffad25
      Jiri Pirko 提交于
      This patch converts unicast address list to standard list_head using
      previously introduced struct netdev_hw_addr. It also relaxes the
      locking. Original spinlock (still used for multicast addresses) is not
      needed and is no longer used for a protection of this list. All
      reading and writing takes place under rtnl (with no changes).
      
      I also removed a possibility to specify the length of the address
      while adding or deleting unicast address. It's always dev->addr_len.
      
      The convertion touched especially e1000 and ixgbe codes when the
      change is not so trivial.
      Signed-off-by: NJiri Pirko <jpirko@redhat.com>
      
       drivers/net/bnx2.c               |   13 +--
       drivers/net/e1000/e1000_main.c   |   24 +++--
       drivers/net/ixgbe/ixgbe_common.c |   14 ++--
       drivers/net/ixgbe/ixgbe_common.h |    4 +-
       drivers/net/ixgbe/ixgbe_main.c   |    6 +-
       drivers/net/ixgbe/ixgbe_type.h   |    4 +-
       drivers/net/macvlan.c            |   11 +-
       drivers/net/mv643xx_eth.c        |   11 +-
       drivers/net/niu.c                |    7 +-
       drivers/net/virtio_net.c         |    7 +-
       drivers/s390/net/qeth_l2_main.c  |    6 +-
       drivers/scsi/fcoe/fcoe.c         |   16 ++--
       include/linux/netdevice.h        |   18 ++--
       net/8021q/vlan.c                 |    4 +-
       net/8021q/vlan_dev.c             |   10 +-
       net/core/dev.c                   |  195 +++++++++++++++++++++++++++-----------
       net/dsa/slave.c                  |   10 +-
       net/packet/af_packet.c           |    4 +-
       18 files changed, 227 insertions(+), 137 deletions(-)
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ccffad25
  8. 29 5月, 2009 1 次提交
  9. 27 5月, 2009 1 次提交
  10. 09 4月, 2009 2 次提交
  11. 07 4月, 2009 1 次提交
  12. 29 3月, 2009 1 次提交
  13. 20 2月, 2009 1 次提交
  14. 19 2月, 2009 2 次提交
  15. 18 2月, 2009 1 次提交
  16. 01 2月, 2009 1 次提交
  17. 28 1月, 2009 1 次提交
  18. 22 1月, 2009 1 次提交
  19. 26 12月, 2008 1 次提交
  20. 23 12月, 2008 1 次提交
  21. 19 12月, 2008 3 次提交
  22. 29 11月, 2008 1 次提交
  23. 26 11月, 2008 3 次提交
  24. 21 11月, 2008 1 次提交
  25. 20 11月, 2008 1 次提交
  26. 15 11月, 2008 2 次提交
  27. 13 11月, 2008 1 次提交
    • D
      niu: Fix readq implementation when architecture does not provide one. · e23a59e1
      David S. Miller 提交于
      This fixes a TX hang reported by Jesper Dangaard Brouer.
      
      When an architecutre cannot provide a fully functional
      64-bit atomic readq/writeq, the driver must implement
      it's own.  This is because only the driver can say whether
      doing something like using two 32-bit reads to implement
      the full 64-bit read will actually work properly.
      
      In particular one of the issues is whether the top 32-bits
      or the bottom 32-bits of the 64-bit register should be read
      first.  There could be side effects, and in fact that is
      exactly the problem here.
      
      The TX_CS register has counters in the upper 32-bits and
      state bits in the lower 32-bits.  A read clears the state
      bits.
      
      We would read the counter half before the state bit half.
      That first read would clear the state bits, and then the
      driver thinks that no interrupts are pending because the
      interrupt indication state bits are seen clear every time.
      
      Fix this by reading the bottom half before the upper half.
      Tested-by: NJesper Dangaard Brouer <jdb@comx.dk>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      e23a59e1
  28. 04 11月, 2008 2 次提交
  29. 28 10月, 2008 1 次提交
  30. 13 9月, 2008 1 次提交
  31. 31 8月, 2008 1 次提交
  32. 30 7月, 2008 1 次提交