1. 13 11月, 2014 26 次提交
  2. 12 11月, 2014 14 次提交
    • D
      Merge branch 'skb_alloc_pages' · ee47ad42
      David S. Miller 提交于
      Alexander Duyck says:
      
      ====================
      Replace __skb_alloc_pages with simpler function
      
      This patch series replaces __skb_alloc_pages with a much simpler function,
      __dev_alloc_pages.  The main difference between the two is that
      __skb_alloc_pages had an sk_buff pointer that was being passed as NULL in
      call places where it was called.  In a couple of cases the NULL was passed
      by variable and this led to unnecessary code being run.
      
      As such in order to simplify things the __dev_alloc_pages call only takes a
      mask and the page order being requested.  In addition it takes advantage of
      several behaviors already built into the page allocator so that it can just
      set GFP flags unconditionally.
      
      v2: Renamed functions to dev_alloc_page(s) instead of netdev_alloc_page(s)
          Removed __GFP_COLD flag from usb code as it was redundant
      v3: Update patch descriptions and subjects to match changes in v2
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ee47ad42
    • A
      net: Remove __skb_alloc_page and __skb_alloc_pages · 160d2aba
      Alexander Duyck 提交于
      Remove the two functions which are now dead code.
      Signed-off-by: NAlexander Duyck <alexander.h.duyck@redhat.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      160d2aba
    • A
      fm10k/igb/ixgbe: Replace __skb_alloc_page with dev_alloc_page · 42b17f09
      Alexander Duyck 提交于
      The Intel drivers were pretty much just using the plain vanilla GFP flags
      in their calls to __skb_alloc_page so this change makes it so that they use
      dev_alloc_page which just uses GFP_ATOMIC for the gfp_flags value.
      
      Cc: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
      Cc: Matthew Vick <matthew.vick@intel.com>
      Cc: Don Skidmore <donald.c.skidmore@intel.com>
      Signed-off-by: NAlexander Duyck <alexander.h.duyck@redhat.com>
      Acked-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      42b17f09
    • A
      phonet: Replace calls to __skb_alloc_page with __dev_alloc_page · 5693d284
      Alexander Duyck 提交于
      Replace the calls to __skb_alloc_page that are passed NULL with calls to
      __dev_alloc_page.
      
      In addition remove __GFP_COLD flag from allocations as we only want it for
      the Rx buffer which is taken care of by __dev_alloc_skb, not for any
      secondary allocations such as the queue element transmit descriptors.
      
      Cc: Oliver Neukum <oliver@neukum.org>
      Cc: Felipe Balbi <balbi@ti.com>
      Signed-off-by: NAlexander Duyck <alexander.h.duyck@redhat.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      5693d284
    • A
      cxgb4/cxgb4vf: Replace __skb_alloc_page with __dev_alloc_page · aa9cd31c
      Alexander Duyck 提交于
      Drop the bloated use of __skb_alloc_page and replace it with
      __dev_alloc_page.  In addition update the one other spot that is
      allocating a page so that it allocates with the correct flags.
      
      Cc: Hariprasad S <hariprasad@chelsio.com>
      Cc: Casey Leedom <leedom@chelsio.com>
      Signed-off-by: NAlexander Duyck <alexander.h.duyck@redhat.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      aa9cd31c
    • A
      net: Add device Rx page allocation function · 71dfda58
      Alexander Duyck 提交于
      This patch implements __dev_alloc_pages and __dev_alloc_page.  These are
      meant to replace the __skb_alloc_pages and __skb_alloc_page functions.  The
      reason for doing this is that it occurred to me that __skb_alloc_page is
      supposed to be passed an sk_buff pointer, but it is NULL in all cases where
      it is used.  Worse is that in the case of ixgbe it is passed NULL via the
      sk_buff pointer in the rx_buffer info structure which means the compiler is
      not correctly stripping it out.
      
      The naming for these functions is based on dev_alloc_skb and __dev_alloc_skb.
      There was originally a netdev_alloc_page, however that was passed a
      net_device pointer and this function is not so I thought it best to follow
      that naming scheme since that is the same difference between dev_alloc_skb
      and netdev_alloc_skb.
      
      In the case of anything greater than order 0 it is assumed that we want a
      compound page so __GFP_COMP is set for all allocations as we expect a
      compound page when assigning a page frag.
      
      The other change in this patch is to exploit the behaviors of the page
      allocator in how it handles flags.  So for example we can always set
      __GFP_COMP and __GFP_MEMALLOC since they are ignored if they are not
      applicable or are overridden by another flag.
      Signed-off-by: NAlexander Duyck <alexander.h.duyck@redhat.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      71dfda58
    • J
      irda: Remove IRDA_<TYPE> logging macros · 6c91023d
      Joe Perches 提交于
      And use the more common mechanisms directly.
      
      Other miscellanea:
      
      o Coalesce formats
      o Add missing newlines
      o Realign arguments
      o Remove unnecessary OOM message logging as
        there's a generic stack dump already on OOM.
      Signed-off-by: NJoe Perches <joe@perches.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      6c91023d
    • W
      net: kill netif_copy_real_num_queues() · 09626e9d
      WANG Cong 提交于
      vlan was the only user of netif_copy_real_num_queues(),
      but it no longer calls it after
      commit 4af429d2 ("vlan: lockless transmit path").
      So we can just remove it.
      
      Cc: Eric Dumazet <eric.dumazet@gmail.com>
      Cc: David S. Miller <davem@davemloft.net>
      Signed-off-by: NCong Wang <xiyou.wangcong@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      09626e9d
    • D
      Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next · 2387e3b5
      David S. Miller 提交于
      Jeff Kirsher says:
      
      ====================
      Intel Wired LAN Driver Updates 2014-11-11
      
      This series contains updates to i40e, i40evf and ixgbe.
      
      Kamil updated the i40e and i40evf driver to poll the firmware slower
      since we were polling faster than the firmware could respond.
      
      Shannon updates i40e to add a check to keep the service_task from
      running the periodic tasks more than once per second, while still
      allowing quick action to service the events.
      
      Jesse cleans up the throttle rate code by fixing the minimum interrupt
      throttle rate and removing some unused defines.
      
      Mitch makes the early init admin queue message receive code more robust
      by handling messages in a loop and ignoring those that we are not
      interested in.  This also gets rid of some scary log messages that
      really do not indicate a problem.
      
      Don provides several ixgbe patches, first fixes an issue with x540
      completion timeout where on topologies including few levels of PCIe
      switching for x540 can run into an unexpected completion error.  Cleans
      up the functionality in ixgbe_ndo_set_vf_vlan() in preparation for
      future work.  Adds support for x550 MAC's to the driver.
      
      v2:
       - Remove code comment in patch 01 of the series, based on feedback from
         David Liaght
       - Updated the "goto" to "break" statements in patch 06 of the series,
         based on feedback from Sergei Shtylyov
       - Initialized the variable err due to the possibility of use before
         being assigned a value in patch 07 of the series
       - Added patch "ixgbe: add helper function for setting RSS key in
         preparation of X550" since it is needed for the addition of X550 MAC
         support
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      2387e3b5
    • S
      usbnet: smsc95xx: dereferencing NULL pointer · 8bca81d9
      Sudip Mukherjee 提交于
      we were dereferencing dev to initialize pdata. but just after that we
      have a BUG_ON(!dev). so we were basically dereferencing the pointer
      first and then tesing it for NULL.
      Signed-off-by: NSudip Mukherjee <sudip@vectorindia.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      8bca81d9
    • J
      irda: Simplify IRDA logging macros · d65c4e4e
      Joe Perches 提交于
      These are the same as net_<level>_ratelimited, so
      use the more common style in the macro definition.
      Signed-off-by: NJoe Perches <joe@perches.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d65c4e4e
    • W
      neigh: remove dynamic neigh table registration support · d7480fd3
      WANG Cong 提交于
      Currently there are only three neigh tables in the whole kernel:
      arp table, ndisc table and decnet neigh table. What's more,
      we don't support registering multiple tables per family.
      Therefore we can just make these tables statically built-in.
      
      Cc: David S. Miller <davem@davemloft.net>
      Signed-off-by: NCong Wang <xiyou.wangcong@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d7480fd3
    • A
      stmmac: split to core library and probe drivers · b2e2f0c7
      Andy Shevchenko 提交于
      Instead of registering the platform and PCI drivers in one module let's move
      necessary bits to where it belongs. During this procedure we convert the module
      registration part to use module_*_driver() macros which makes code simplier.
      
      >From now on the driver consists three parts: core library, PCI, and platform
      drivers.
      Signed-off-by: NAndy Shevchenko <andriy.shevchenko@linux.intel.com>
      Acked-by: NGiuseppe Cavallaro <peppe.cavallaro@st.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      b2e2f0c7
    • J
      net: Convert LIMIT_NETDEBUG to net_dbg_ratelimited · ba7a46f1
      Joe Perches 提交于
      Use the more common dynamic_debug capable net_dbg_ratelimited
      and remove the LIMIT_NETDEBUG macro.
      
      All messages are still ratelimited.
      
      Some KERN_<LEVEL> uses are changed to KERN_DEBUG.
      
      This may have some negative impact on messages that were
      emitted at KERN_INFO that are not not enabled at all unless
      DEBUG is defined or dynamic_debug is enabled.  Even so,
      these messages are now _not_ emitted by default.
      
      This also eliminates the use of the net_msg_warn sysctl
      "/proc/sys/net/core/warnings".  For backward compatibility,
      the sysctl is not removed, but it has no function.  The extern
      declaration of net_msg_warn is removed from sock.h and made
      static in net/core/sysctl_net_core.c
      
      Miscellanea:
      
      o Update the sysctl documentation
      o Remove the embedded uses of pr_fmt
      o Coalesce format fragments
      o Realign arguments
      Signed-off-by: NJoe Perches <joe@perches.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ba7a46f1