1. 30 10月, 2013 14 次提交
    • L
      arc_emac: drop redundant mac address check · 99470819
      Luka Perkov 提交于
      Checking if MAC address is valid using is_valid_ether_addr() is already done in
      of_get_mac_address(). While at it, reorganize checking so it matches checks in
      other drivers.
      Signed-off-by: NLuka Perkov <luka@openwrt.org>
      CC: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
      CC: David Miller <davem@davemloft.net>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      99470819
    • L
      mvneta: drop redundant mac address check · 6c7a9a3c
      Luka Perkov 提交于
      Checking if MAC address is valid using is_valid_ether_addr() is already done in
      of_get_mac_address().
      Signed-off-by: NLuka Perkov <luka@openwrt.org>
      Acked-by: NThomas Petazzoni <thomas.petazzoni@free-electrons.com>
      CC: David Miller <davem@davemloft.net>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      6c7a9a3c
    • L
      octeon_mgmt: drop redundant mac address check · 09ec0d05
      Luka Perkov 提交于
      Checking if MAC address is valid using is_valid_ether_addr() is already done in
      of_get_mac_address().
      Signed-off-by: NLuka Perkov <luka@openwrt.org>
      Acked-by: NDavid Daney <david.daney@cavium.com>
      CC: David Miller <davem@davemloft.net>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      09ec0d05
    • Y
      tcp: temporarily disable Fast Open on SYN timeout · c968601d
      Yuchung Cheng 提交于
      Fast Open currently has a fall back feature to address SYN-data being
      dropped but it requires the middle-box to pass on regular SYN retry
      after SYN-data. This is implemented in commit aab48743 ("net-tcp:
      Fast Open client - detecting SYN-data drops")
      
      However some NAT boxes will drop all subsequent packets after first
      SYN-data and blackholes the entire connections.  An example is in
      commit 356d7d88 "netfilter: nf_conntrack: fix tcp_in_window for Fast
      Open".
      
      The sender should note such incidents and fall back to use the regular
      TCP handshake on subsequent attempts temporarily as well: after the
      second SYN timeouts the original Fast Open SYN is most likely lost.
      When such an event recurs Fast Open is disabled based on the number of
      recurrences exponentially.
      Signed-off-by: NYuchung Cheng <ycheng@google.com>
      Signed-off-by: NNeal Cardwell <ncardwell@google.com>
      Signed-off-by: NEric Dumazet <edumazet@google.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c968601d
    • D
      Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next · aa58d981
      David S. Miller 提交于
      Jeff Kirsher says:
      
      ====================
      This series contains updates to vxlan, net, ixgbe, ixgbevf, and i40e.
      
      Joseph provides a single patch against vxlan which removes the burden
      from the NIC drivers to check if the vxlan driver is enabled in the
      kernel and also makes available the vxlan headrooms to the drivers.
      
      Jacob provides majority of the patches, with patches against net, ixgbe
      and ixgbevf.  His net patch adds might_sleep() call to napi_disable so
      that every use of napi_disable during atomic context will be visible.
      Then Jacob provides a patch to fix qv_lock_napi call in
      ixgbe_napi_disable_all.  The other ixgbe patches cleanup
      ixgbe_check_minimum_link function to correctly show that there are some
      minor loss of encoding, even though we don't calculate it and remove
      unnecessary duplication of PCIe bandwidth display.  Lastly, Jacob
      provides 4 patches against ixgbevf to add ixgbevf_rx_skb in line with
      how ixgbe handles the variations on how packets can be received, adds
      support in order to track how many packets were cleaned during busy poll
      as part of the extended statistics.
      
      Wei Yongjun provides a fix for i40e to return -ENOMEN in the memory
      allocation error handling case instead of returning 0, as done
      elsewhere in this function.
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      aa58d981
    • L
      net: mvmdio: doc: mvmdio now used by mv643xx_eth · d4a0acb8
      Leigh Brown 提交于
      Amend the documentation in the mvmdio driver to note the fact
      that it is now used by both the mvneta and mv643xx_eth drivers.
      Signed-off-by: NLeigh Brown <leigh@solinno.co.uk>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d4a0acb8
    • L
      net: mvmdio: slight optimisation of orion_mdio_write · 526edcf5
      Leigh Brown 提交于
      Make only a single call to mutex_unlock in orion_mdio_write.
      Signed-off-by: NLeigh Brown <leigh@solinno.co.uk>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      526edcf5
    • L
      net: mvmdio: orion_mdio_ready: remove manual poll · 839f46bb
      Leigh Brown 提交于
      Replace manual poll of MVMDIO_SMI_READ_VALID with a call to
      orion_mdio_wait_ready.  This ensures a consistent timeout,
      eliminates a busy loop, and allows for use of interrupts on
      systems that support them.
      Signed-off-by: NLeigh Brown <leigh@solinno.co.uk>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      839f46bb
    • L
      net: mvmdio: make orion_mdio_wait_ready consistent · b70cd1c1
      Leigh Brown 提交于
      Amend orion_mdio_wait_ready so that the same timeout is used when
      polling or using wait_event_timeout.  Set the timeout to 1ms.
      
      Replace udelay with usleep_range to avoid a busy loop, and set the
      polling interval range as 45us to 55us, so that the first sleep
      will be enough in almost all cases.
      
      Generate the same log message at timeout when polling or using
      wait_event_timeout.
      Signed-off-by: NLeigh Brown <leigh@solinno.co.uk>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      b70cd1c1
    • G
      net/benet: Make lancer_wait_ready() static · 87f20c26
      Gavin Shan 提交于
      The function needn't to be public, so to make it as static.
      Signed-off-by: NGavin Shan <shangw@linux.vnet.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      87f20c26
    • G
      net/benet: Remove interface type · 547e2dae
      Gavin Shan 提交于
      The interface type, which is being traced by "struct be_adapter::
      if_type", isn't used currently. So we can remove that safely
      according to Sathya's comments.
      Signed-off-by: NGavin Shan <shangw@linux.vnet.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      547e2dae
    • J
      netconsole: Convert to pr_<level> · 22ded577
      Joe Perches 提交于
      Use a more current logging style.
      
      Convert printks to pr_<level>.
      
      Consolidate multiple printks into a single printk to avoid
      any possible dmesg interleaving.  Add a default "event" msg
      in case the listed types are ever expanded.
      Signed-off-by: NJoe Perches <joe@perches.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      22ded577
    • D
      net: sched: cls_bpf: add BPF-based classifier · 7d1d65cb
      Daniel Borkmann 提交于
      This work contains a lightweight BPF-based traffic classifier that can
      serve as a flexible alternative to ematch-based tree classification, i.e.
      now that BPF filter engine can also be JITed in the kernel. Naturally, tc
      actions and policies are supported as well with cls_bpf. Multiple BPF
      programs/filter can be attached for a class, or they can just as well be
      written within a single BPF program, that's really up to the user how he
      wishes to run/optimize the code, e.g. also for inversion of verdicts etc.
      The notion of a BPF program's return/exit codes is being kept as follows:
      
           0: No match
          -1: Select classid given in "tc filter ..." command
        else: flowid, overwrite the default one
      
      As a minimal usage example with iproute2, we use a 3 band prio root qdisc
      on a router with sfq each as leave, and assign ssh and icmp bpf-based
      filters to band 1, http traffic to band 2 and the rest to band 3. For the
      first two bands we load the bytecode from a file, in the 2nd we load it
      inline as an example:
      
      echo 1 > /proc/sys/net/core/bpf_jit_enable
      
      tc qdisc del dev em1 root
      tc qdisc add dev em1 root handle 1: prio bands 3 priomap 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
      
      tc qdisc add dev em1 parent 1:1 sfq perturb 16
      tc qdisc add dev em1 parent 1:2 sfq perturb 16
      tc qdisc add dev em1 parent 1:3 sfq perturb 16
      
      tc filter add dev em1 parent 1: bpf run bytecode-file /etc/tc/ssh.bpf flowid 1:1
      tc filter add dev em1 parent 1: bpf run bytecode-file /etc/tc/icmp.bpf flowid 1:1
      tc filter add dev em1 parent 1: bpf run bytecode-file /etc/tc/http.bpf flowid 1:2
      tc filter add dev em1 parent 1: bpf run bytecode "`bpfc -f tc -i misc.ops`" flowid 1:3
      
      BPF programs can be easily created and passed to tc, either as inline
      'bytecode' or 'bytecode-file'. There are a couple of front-ends that can
      compile opcodes, for example:
      
      1) People familiar with tcpdump-like filters:
      
         tcpdump -iem1 -ddd port 22 | tr '\n' ',' > /etc/tc/ssh.bpf
      
      2) People that want to low-level program their filters or use BPF
         extensions that lack support by libpcap's compiler:
      
         bpfc -f tc -i ssh.ops > /etc/tc/ssh.bpf
      
         ssh.ops example code:
         ldh [12]
         jne #0x800, drop
         ldb [23]
         jneq #6, drop
         ldh [20]
         jset #0x1fff, drop
         ldxb 4 * ([14] & 0xf)
         ldh [%x + 14]
         jeq #0x16, pass
         ldh [%x + 16]
         jne #0x16, drop
         pass: ret #-1
         drop: ret #0
      
      It was chosen to load bytecode into tc, since the reverse operation,
      tc filter list dev em1, is then able to show the exact commands again.
      Possible follow-up work could also include a small expression compiler
      for iproute2. Tested with the help of bmon. This idea came up during
      the Netfilter Workshop 2013 in Copenhagen. Also thanks to feedback from
      Eric Dumazet!
      Signed-off-by: NDaniel Borkmann <dborkman@redhat.com>
      Cc: Thomas Graf <tgraf@suug.ch>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      7d1d65cb
    • R
      bgmac: separate RX descriptor setup code into a new function · d549c76b
      Rafał Miłecki 提交于
      This cleans code a bit and will be useful when allocating buffers in
      other places (like RX path, to avoid skb_copy_from_linear_data_offset).
      Signed-off-by: NRafał Miłecki <zajec5@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d549c76b
  2. 29 10月, 2013 24 次提交
  3. 28 10月, 2013 2 次提交