|
@@ -314,17 +314,7 @@ int pci_mmap_page_range(struct pci_dev *dev, struct vm_area_struct *vma,
|
|
|
return retval;
|
|
|
|
|
|
if (flags != new_flags) {
|
|
|
- /*
|
|
|
- * Do not fallback to certain memory types with certain
|
|
|
- * requested type:
|
|
|
- * - request is uncached, return cannot be write-back
|
|
|
- * - request is uncached, return cannot be write-combine
|
|
|
- * - request is write-combine, return cannot be write-back
|
|
|
- */
|
|
|
- if ((flags == _PAGE_CACHE_UC_MINUS &&
|
|
|
- (new_flags == _PAGE_CACHE_WB)) ||
|
|
|
- (flags == _PAGE_CACHE_WC &&
|
|
|
- new_flags == _PAGE_CACHE_WB)) {
|
|
|
+ if (!is_new_memtype_allowed(flags, new_flags)) {
|
|
|
free_memtype(addr, addr+len);
|
|
|
return -EINVAL;
|
|
|
}
|