Messages in this thread |  | | | Date | Thu, 17 May 2012 16:13:04 -0400 (EDT) | | Subject | Re: [PATCH 12/17] netvm: Propagate page->pfmemalloc from skb_alloc_page to skb | | From | David Miller <> |
| |
From: Mel Gorman <mgorman@suse.de> Date: Thu, 17 May 2012 15:50:26 +0100
> 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>
|  |