page fault: use cow for private device mappings
Private device mappings still need copy-on-write to work, even if there is no page. Change-Id: I96e3e1eea81104f6b09bb7fda1105d9eeb489155 Refs: #1254
This commit is contained in:
committed by
Masamichi Takagi
parent
312b6c171b
commit
21c9e57646
@@ -1972,8 +1972,8 @@ retry:
|
|||||||
/* Copy on write */
|
/* Copy on write */
|
||||||
if (((range->flag & VR_PRIVATE) ||
|
if (((range->flag & VR_PRIVATE) ||
|
||||||
((reason & PF_PATCH) && !(range->flag & VR_PROT_WRITE)))
|
((reason & PF_PATCH) && !(range->flag & VR_PROT_WRITE)))
|
||||||
&& ((!page && phys == NOPHYS) || (page &&
|
&& ((!page && ((phys == NOPHYS) || range->memobj))
|
||||||
(page_is_in_memobj(page) ||
|
|| (page && (page_is_in_memobj(page) ||
|
||||||
page_is_multi_mapped(page))))) {
|
page_is_multi_mapped(page))))) {
|
||||||
|
|
||||||
if (!(attr & PTATTR_DIRTY)) {
|
if (!(attr & PTATTR_DIRTY)) {
|
||||||
|
|||||||
Reference in New Issue
Block a user