memcontrol currently ignores device dax and fs dax pages because these
pages are considered special. To maintain existing behaviour once
these pages are treated as normal pages and returned from
vm_normal_page() add a test to explicitly skip charging them.

Signed-off-by: Alistair Popple <apop...@nvidia.com>
---
 mm/memcontrol-v1.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mm/memcontrol-v1.c b/mm/memcontrol-v1.c
index 81d8819..b10a095 100644
--- a/mm/memcontrol-v1.c
+++ b/mm/memcontrol-v1.c
@@ -667,7 +667,7 @@ static struct page *mc_handle_present_pte(struct 
vm_area_struct *vma,
 {
        struct page *page = vm_normal_page(vma, addr, ptent);
 
-       if (!page)
+       if (!page || is_device_dax_page(page) || is_fsdax_page(page))
                return NULL;
        if (PageAnon(page)) {
                if (!(mc.flags & MOVE_ANON))
-- 
git-series 0.9.1

Reply via email to