diff --git a/mm/memremap.c b/mm/memremap.c
index bc167cde32379b314375684d444826f7c32c4e45..03e38b7a38f1a434d5f63294c6675672d9eed227 100644
--- a/mm/memremap.c
+++ b/mm/memremap.c
@@ -217,7 +217,10 @@ void *memremap_pages(struct dev_pagemap *pgmap, int nid)
 		}
 		break;
 	case MEMORY_DEVICE_DEVDAX:
+		need_devmap_managed = false;
+		break;
 	case MEMORY_DEVICE_PCI_P2PDMA:
+		params.pgprot = pgprot_noncached(params.pgprot);
 		need_devmap_managed = false;
 		break;
 	default: