diff options
author | kib <kib@FreeBSD.org> | 2008-09-26 14:50:49 +0000 |
---|---|---|
committer | kib <kib@FreeBSD.org> | 2008-09-26 14:50:49 +0000 |
commit | 496b70bc6ae4c9f8b2f01168acbb39b39e6f3112 (patch) | |
tree | 83ec201504ae8c58d18c3600f36c7e08a41162df /sys/vm/phys_pager.c | |
parent | d421caabf98d87498154b13c49b8f5d352aea70c (diff) | |
download | FreeBSD-src-496b70bc6ae4c9f8b2f01168acbb39b39e6f3112.zip FreeBSD-src-496b70bc6ae4c9f8b2f01168acbb39b39e6f3112.tar.gz |
Save previous content of the td_fpop before storing the current
filedescriptor into it. Make sure that td_fpop is NULL when calling
d_mmap from dev_pager_getpages().
Change guards against td_fpop field being non-NULL with private state
for another device, and against sudden clearing the td_fpop. This
could occur when either a driver method calls another driver through
the filedescriptor operation, or a page fault happen while driver is
writing to a memory backed by another driver.
Noted by: rwatson
Tested by: rnoland
MFC after: 3 days
Diffstat (limited to 'sys/vm/phys_pager.c')
0 files changed, 0 insertions, 0 deletions