version 1.67, 1999/08/03 00:38:33 |
version 1.68, 1999/08/21 02:19:05 |
Line 2533 uvm_map_clean(map, start, end, flags) |
|
Line 2533 uvm_map_clean(map, start, end, flags) |
|
case PGO_CLEANIT|PGO_FREE: |
case PGO_CLEANIT|PGO_FREE: |
case PGO_CLEANIT|PGO_DEACTIVATE: |
case PGO_CLEANIT|PGO_DEACTIVATE: |
case PGO_DEACTIVATE: |
case PGO_DEACTIVATE: |
|
deactivate_it: |
/* skip the page if it's loaned or wired */ |
/* skip the page if it's loaned or wired */ |
if (pg->loan_count != 0 || |
if (pg->loan_count != 0 || |
pg->wire_count != 0) { |
pg->wire_count != 0) { |
Line 2577 uvm_map_clean(map, start, end, flags) |
|
Line 2578 uvm_map_clean(map, start, end, flags) |
|
continue; |
continue; |
|
|
case PGO_FREE: |
case PGO_FREE: |
|
/* |
|
* If there are multiple references to |
|
* the amap, just deactivate the page. |
|
*/ |
|
if (amap_refs(amap) > 1) |
|
goto deactivate_it; |
|
|
/* XXX skip the page if it's wired */ |
/* XXX skip the page if it's wired */ |
if (pg->wire_count != 0) { |
if (pg->wire_count != 0) { |
simple_unlock(&anon->an_lock); |
simple_unlock(&anon->an_lock); |