diff options
author | alc <alc@FreeBSD.org> | 2006-04-02 05:45:05 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2006-04-02 05:45:05 +0000 |
commit | af01e3f8099c15cac3f8392c9e2d7871cfbfd4b8 (patch) | |
tree | a9ad722858c6cea4dd7921d191d779711818ea0d /usr.bin/mesg | |
parent | 08249d49bf1e9291264b2b58268dcc682525df9e (diff) | |
download | FreeBSD-src-af01e3f8099c15cac3f8392c9e2d7871cfbfd4b8.zip FreeBSD-src-af01e3f8099c15cac3f8392c9e2d7871cfbfd4b8.tar.gz |
Introduce pmap_try_insert_pv_entry(), a function that conditionally creates
a pv entry if the number of entries is below the high water mark for pv
entries.
Use pmap_try_insert_pv_entry() in pmap_copy() instead of
pmap_insert_entry(). This avoids possible recursion on a pmap lock in
get_pv_entry().
Eliminate the explicit low-memory checks in pmap_copy(). The check that
the number of pv entries was below the high water mark was largely
ineffective because it was located in the outer loop rather than the
inner loop where pv entries were allocated. Instead of checking, we
attempt the allocation and handle the failure.
Reviewed by: tegge
Reported by: kris
MFC after: 5 days
Diffstat (limited to 'usr.bin/mesg')
0 files changed, 0 insertions, 0 deletions