diff options
author | Konstantin Belousov <kib@FreeBSD.org> | 2015-07-25 15:00:14 +0000 |
---|---|---|
committer | Konstantin Belousov <kib@FreeBSD.org> | 2015-07-25 15:00:14 +0000 |
commit | 6fd04eff667b3bb07bb44143978caafde8df3e82 (patch) | |
tree | 435eb9e38bbd80ce70aa717a131cdaab91c76a80 /share/man/man4/mac_stub.4 | |
parent | e600320b2a315374f0980ddd0a858c03b64b3913 (diff) |
With the removal of b_saveaddr in the r285819, b_data must be reset to
b_kvabase when the buffer is reclaimed. Otherwise, if b_data for the
mapped buffer was adjusted with the page-offset portion of b_offset,
nothing would re-adjust the b_data, which breaks buffer management
code which expects page-aligned b_data (see e.g. bpman_qenter(), which
skips partial pages).
Fix a minor issue with the GB_KVAALLOC requests, which could result in
returning the mapped buffer if the reused buffer is mapped and have
the right amount of KVA reserved.
Improve assertion in the vfs_buf_check_mapped() to catch unmapped
buffers which have their b_data incorrectly adjusted with offset.
Reported and tested by: pho (previous version)
Reviewed by: jeff (previous version)
Sponsored by: The FreeBSD Foundation
Notes
Notes:
svn path=/head/; revision=285872
Diffstat (limited to 'share/man/man4/mac_stub.4')
0 files changed, 0 insertions, 0 deletions