diff options
author | Hauke Mehrtens <hauke@hauke-m.de> | 2018-12-01 13:40:50 +0100 |
---|---|---|
committer | Hauke Mehrtens <hauke@hauke-m.de> | 2018-12-06 22:54:26 +0100 |
commit | 121b7cbd22a8a01e572892da93d8d26bfc7d9e2c (patch) | |
tree | ffeba0c139bf9d1b17c1289b0bc7c9a4b38f32c5 /backport/backport-include/linux/gfp.h | |
parent | dd498a8f8616c7d458a0cbb81e845d393754e7f6 (diff) |
backports: Add page_frag_alloc() and __page_frag_cache_drain()
This was introduced in kernel commit 8c2dd3e4a4b ("mm: rename
__alloc_page_frag to page_frag_alloc and __free_page_frag to
page_frag_free") and commit 44fdffd7050 ("mm: add support for releasing
multiple instances of a page") and is used by the mt76 driver.
Backporting it to kernel older than 4.2 is harder so just do it till
that version.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Diffstat (limited to 'backport/backport-include/linux/gfp.h')
-rw-r--r-- | backport/backport-include/linux/gfp.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/backport/backport-include/linux/gfp.h b/backport/backport-include/linux/gfp.h index 42f818f1..d41d4277 100644 --- a/backport/backport-include/linux/gfp.h +++ b/backport/backport-include/linux/gfp.h @@ -10,4 +10,16 @@ #define __GFP_KSWAPD_RECLAIM ((__force gfp_t)___GFP_KSWAPD_RECLAIM) /* kswapd can wake */ #endif +#if LINUX_VERSION_IS_LESS(4,10,0) && LINUX_VERSION_IS_GEQ(4,2,0) +#define page_frag_alloc LINUX_BACKPORT(page_frag_alloc) +static inline void *page_frag_alloc(struct page_frag_cache *nc, + unsigned int fragsz, gfp_t gfp_mask) +{ + return __alloc_page_frag(nc, fragsz, gfp_mask); +} + +#define __page_frag_cache_drain LINUX_BACKPORT(__page_frag_cache_drain) +void __page_frag_cache_drain(struct page *page, unsigned int count); +#endif /* < 4.10 && >= 4.2 */ + #endif /* __BACKPORT_LINUX_GFP_H */ |