sendfile: Clear page pointers when handling a pager error
When INVARIANTS is configred, the sendfile_iodone() callback verifies that pages attached to the sendfile header are wired, but we unwire all such pages after a synchronous pager error, before calling sendfile_iodone(). Reported by: pho Tested by: pho Sponsored by: The FreeBSD Foundation
This commit is contained in:
parent
2ce5eef6e2
commit
214257da3a
@ -540,6 +540,7 @@ sendfile_swapin(vm_object_t obj, struct sf_io *sfio, int *nios, off_t off,
|
||||
("%s: page %p[%d] I/O recovery failure",
|
||||
__func__, pa, j));
|
||||
vm_page_unwire(pa[j], PQ_INACTIVE);
|
||||
pa[j] = NULL;
|
||||
}
|
||||
return (EIO);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user