loc().
Since page_pool doesn't want to set its magic value on pages which are
pfmemalloc, we can use bit 1 of compound_head to indicate that the page
came from the memory reserves.
Signed-off-by: Matthew Wilcox (Oracle)
---
include/linux/mm.h | 12 +++-
include/linux/mm_type
d a racing get_user_pages_fast()
could dereference a bogus compound_head().
Fixes: c25fff7171be ("mm: add dma_addr_t to struct page")
Signed-off-by: Matthew Wilcox (Oracle)
---
include/linux/mm_types.h | 4 ++--
include/net/page_pool.h | 12 +++-
net/core/page_pool.c | 12 +
s new functionality. It is much less urgent.
I'd really like to see Mel & Michal's thoughts on it.
I have only compile-tested these patches.
Matthew Wilcox (Oracle) (2):
mm: Fix struct page layout on 32-bit systems
mm: Indicate pfmemalloc pages in compound_head
include/li
be cleared on free. To avoid
this, insert three words of padding and use the same bits as ->index
and ->private, neither of which have to be cleared on free.
Fixes: c25fff7171be ("mm: add dma_addr_t to struct page")
Signed-off-by: Matthew Wilco
I'd really appreciate people testing this, particularly on
arm32/mips32/ppc32 systems with a 64-bit dma_addr_t.
Matthew Wilcox (Oracle) (1):
mm: Fix struct page layout on 32-bit systems
include/linux/mm_types.h | 38 ++
1 file changed, 26 insertions(+
The XArray interface is easier for this driver to use. Also fixes a
bug reported by the improper use of GFP_ATOMIC.
Signed-off-by: Matthew Wilcox (Oracle)
---
net/qrtr/qrtr.c | 42 ++
1 file changed, 14 insertions(+), 28 deletions(-)
diff --git a/net
-by: Rao Shoaib
Signed-off-by: Matthew Wilcox (Oracle)
---
net/unix/af_unix.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/net/unix/af_unix.c b/net/unix/af_unix.c
index 41c3303c3357..849dff688c2c 100644
--- a/net/unix/af_unix.c
+++ b/net/unix/af_unix.c
@@ -1837,8
enkatsubra
Cc: Manjunath Patil
Cc: Joe Jin
Cc: SRINIVAS
Cc: sta...@vger.kernel.org
Fixes: 79930f5892e ("net: do not deplete pfmemalloc reserve")
Signed-off-by: Matthew Wilcox (Oracle)
---
mm/page_alloc.c | 4
1 file changed, 4 insertions(+)
diff --git a/mm/page_alloc.c b/m