1. 20 12月, 2012 3 次提交
    • V
      RDMA/cxgb4: Fix LE hash collision bug for active open connection · 5be78ee9
      Vipul Pandya 提交于
      It enables establishing active open connection using fw_ofld_connection work
      request when cpl_act_open_rpl says TCAM full error which may be because
      of LE hash collision. Current support is only for IPv4 active open connections.
      
      Sets ntuple bits in active open requests. For T4 firmware greater than 1.4.10.0
      ntuple bits are required to be set.
      
      Adds nocong and enable_ecn module parameter options.
      Signed-off-by: NVipul Pandya <vipul@chelsio.com>
      
      [ Move all FW return values to t4fw_api.h.  - Roland ]
      Signed-off-by: NRoland Dreier <roland@purestorage.com>
      5be78ee9
    • V
      cxgb4: Add LE hash collision bug fix path in LLD driver · dca4faeb
      Vipul Pandya 提交于
      It supports establishing passive open connection through firmware filter work
      request. Passive open connection will go through this path as now instead of
      listening server we create a server filter which will redirect the incoming SYN
      packet to the offload queue.
      
      It divides filter region into regular filters and server filter portion. It
      introduces new server filter region which will be exclusively used for creating
      server filters. This region will not overlap with regular filter region.
      
      It provides new API cxgb4_alloc_sftid in LLD for getting stid in case of LE
      hash collision path. This new stid will be used to open server filter in the
      filter region.
      Signed-off-by: NVipul Pandya <vipul@chelsio.com>
      Signed-off-by: NRoland Dreier <roland@purestorage.com>
      dca4faeb
    • V
      cxgb4: Add T4 filter support · f2b7e78d
      Vipul Pandya 提交于
      The T4 architecture is capable of filtering ingress packets at line rate
      using the rule in TCAM. If packet hits a rule in the TCAM then it can be either
      dropped or passed to the receive queues based on a rule settings.
      
      This patch adds framework for managing filters and to use T4's filter
      capabilities. It constructs a Firmware Filter Work Request which writes the
      filter at a specified index to get the work done. It hosts shadow copy of
      ingress filter entry to check field size limitations and save memory in the
      case where the filter table is large.
      Signed-off-by: NVipul Pandya <vipul@chelsio.com>
      Signed-off-by: NRoland Dreier <roland@purestorage.com>
      f2b7e78d
  2. 08 12月, 2012 1 次提交
  3. 04 12月, 2012 1 次提交
  4. 27 11月, 2012 1 次提交
  5. 08 11月, 2012 2 次提交
  6. 03 11月, 2012 1 次提交
  7. 22 10月, 2012 1 次提交
  8. 09 10月, 2012 1 次提交
  9. 08 10月, 2012 1 次提交
  10. 04 10月, 2012 2 次提交
  11. 28 9月, 2012 7 次提交
  12. 08 9月, 2012 1 次提交
  13. 06 9月, 2012 1 次提交
  14. 24 8月, 2012 1 次提交
  15. 01 8月, 2012 1 次提交
    • M
      netvm: propagate page->pfmemalloc from skb_alloc_page to skb · 0614002b
      Mel Gorman 提交于
      The skb->pfmemalloc flag gets set to true iff during the slab allocation
      of data in __alloc_skb that the the PFMEMALLOC reserves were used.  If
      page splitting is used, it is possible that pages will be allocated from
      the PFMEMALLOC reserve without propagating this information to the skb.
      This patch propagates page->pfmemalloc from pages allocated for fragments
      to the skb.
      
      It works by reintroducing and expanding the skb_alloc_page() API to take
      an skb.  If the page was allocated from pfmemalloc reserves, it is
      automatically copied.  If the driver allocates the page before the skb, it
      should call skb_propagate_pfmemalloc() after the skb is allocated to
      ensure the flag is copied properly.
      
      Failure to do so is not critical.  The resulting driver may perform slower
      if it is used for swap-over-NBD or swap-over-NFS but it should not result
      in failure.
      
      [davem@davemloft.net: API rename and consistency]
      Signed-off-by: NMel Gorman <mgorman@suse.de>
      Acked-by: NDavid S. Miller <davem@davemloft.net>
      Cc: Neil Brown <neilb@suse.de>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Mike Christie <michaelc@cs.wisc.edu>
      Cc: Eric B Munson <emunson@mgebm.net>
      Cc: Eric Dumazet <eric.dumazet@gmail.com>
      Cc: Sebastian Andrzej Siewior <sebastian@breakpoint.cc>
      Cc: Mel Gorman <mgorman@suse.de>
      Cc: Christoph Lameter <cl@linux.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      0614002b
  16. 11 7月, 2012 1 次提交
  17. 05 7月, 2012 1 次提交
  18. 07 6月, 2012 1 次提交
    • J
      ethernet: Remove casts to same type · 64699336
      Joe Perches 提交于
      Adding casts of objects to the same type is unnecessary
      and confusing for a human reader.
      
      For example, this cast:
      
              int y;
              int *p = (int *)&y;
      
      I used the coccinelle script below to find and remove these
      unnecessary casts.  I manually removed the conversions this
      script produces of casts with __force, __iomem and __user.
      
      @@
      type T;
      T *p;
      @@
      
      -       (T *)p
      +       p
      
      A function in atl1e_main.c was passed a const pointer
      when it actually modified elements of the structure.
      
      Change the argument to a non-const pointer.
      
      A function in stmmac needed a __force to avoid a sparse
      warning.  Added it.
      Signed-off-by: NJoe Perches <joe@perches.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      64699336
  19. 19 5月, 2012 3 次提交
  20. 06 4月, 2012 1 次提交
    • S
      simple_open: automatically convert to simple_open() · 234e3405
      Stephen Boyd 提交于
      Many users of debugfs copy the implementation of default_open() when
      they want to support a custom read/write function op.  This leads to a
      proliferation of the default_open() implementation across the entire
      tree.
      
      Now that the common implementation has been consolidated into libfs we
      can replace all the users of this function with simple_open().
      
      This replacement was done with the following semantic patch:
      
      <smpl>
      @ open @
      identifier open_f != simple_open;
      identifier i, f;
      @@
      -int open_f(struct inode *i, struct file *f)
      -{
      (
      -if (i->i_private)
      -f->private_data = i->i_private;
      |
      -f->private_data = i->i_private;
      )
      -return 0;
      -}
      
      @ has_open depends on open @
      identifier fops;
      identifier open.open_f;
      @@
      struct file_operations fops = {
      ...
      -.open = open_f,
      +.open = simple_open,
      ...
      };
      </smpl>
      
      [akpm@linux-foundation.org: checkpatch fixes]
      Signed-off-by: NStephen Boyd <sboyd@codeaurora.org>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: Julia Lawall <Julia.Lawall@lip6.fr>
      Acked-by: NIngo Molnar <mingo@elte.hu>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      234e3405
  21. 07 3月, 2012 1 次提交
  22. 24 2月, 2012 1 次提交
  23. 06 1月, 2012 1 次提交
  24. 20 12月, 2011 1 次提交
  25. 17 12月, 2011 2 次提交
  26. 23 11月, 2011 2 次提交