linux_dsm_epyc7002/drivers/net/ethernet/intel/ixgbe
Mel Gorman 0614002bb5 netvm: propagate page->pfmemalloc from skb_alloc_page to skb
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: Mel Gorman <mgorman@suse.de>
Acked-by: David 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: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-07-31 18:42:46 -07:00
..
ixgbe_82598.c ixgbe: Update link flow control to correctly handle multiple packet buffer DCB 2012-05-04 03:25:24 -07:00
ixgbe_82599.c ixgbe: Correctly set SAN MAC RAR pool to default pool of PF 2012-07-19 18:19:37 -07:00
ixgbe_common.c ixgbe: Only enable anti-spoof on VF pools 2012-07-19 18:20:23 -07:00
ixgbe_common.h ixgbe: Correctly set SAN MAC RAR pool to default pool of PF 2012-07-19 18:19:37 -07:00
ixgbe_dcb_82598.c ixgbe: Clean up priority based flow control 2012-05-09 22:15:40 -07:00
ixgbe_dcb_82598.h ixgbe: update copyright to 2012 2012-02-03 03:05:30 -08:00
ixgbe_dcb_82599.c ixgbe: Clean up priority based flow control 2012-05-09 22:15:40 -07:00
ixgbe_dcb_82599.h ixgbe: update copyright to 2012 2012-02-03 03:05:30 -08:00
ixgbe_dcb_nl.c ixgbe: Populate the prio_tc_map in ixgbe_setup_tc 2012-07-14 14:29:19 -07:00
ixgbe_dcb.c ixgbe: Use num_tcs.pg_tcs as upper limit for TC when checking based on UP 2012-07-21 16:05:28 -07:00
ixgbe_dcb.h ixgbe: Populate the prio_tc_map in ixgbe_setup_tc 2012-07-14 14:29:19 -07:00
ixgbe_ethtool.c ixgbe: Retire RSS enabled and capable flags 2012-07-18 13:29:05 -07:00
ixgbe_fcoe.c ixgbe: Enable FCoE FSO and CRC offloads based on CAPABLE instead of ENABLED flag 2012-07-19 18:21:22 -07:00
ixgbe_fcoe.h ixgbe: Make FCoE allocation and configuration closer to how rings work 2012-07-19 18:18:49 -07:00
ixgbe_lib.c ixgbe: Use 1TC DCB instead of disabling DCB for MSI and legacy interrupts 2012-07-21 16:07:13 -07:00
ixgbe_main.c netvm: propagate page->pfmemalloc from skb_alloc_page to skb 2012-07-31 18:42:46 -07:00
ixgbe_mbx.c ixgbe: update copyright to 2012 2012-02-03 03:05:30 -08:00
ixgbe_mbx.h ixgbe: update copyright to 2012 2012-02-03 03:05:30 -08:00
ixgbe_phy.c ixgbe: add support for 1G SX modules 2012-06-20 01:37:04 -07:00
ixgbe_phy.h ixgbe: update copyright to 2012 2012-02-03 03:05:30 -08:00
ixgbe_ptp.c drivers/net/ethernet: Fix (nearly-)kernel-doc comments for various functions 2012-07-10 23:13:46 -07:00
ixgbe_sriov.c ixgbe: Fix build with PCI_IOV enabled. 2012-07-22 12:36:41 -07:00
ixgbe_sriov.h ixgbe: Change how we check for pre-existing and assigned VFs 2012-07-21 16:02:56 -07:00
ixgbe_sysfs.c drivers/net/ethernet: Fix (nearly-)kernel-doc comments for various functions 2012-07-10 23:13:46 -07:00
ixgbe_type.h ixgbe: add support for new 82599 device 2012-07-21 16:06:46 -07:00
ixgbe_x540.c ixgbe: Correctly set SAN MAC RAR pool to default pool of PF 2012-07-19 18:19:37 -07:00
ixgbe.h ixgbe: Reduce Rx header size to what is actually used 2012-07-21 16:04:51 -07:00
Makefile ixgbe: do not compile ixgbe_sysfs.c when CONFIG_IXGBE_HWMON is not set 2012-06-14 03:12:41 -07:00