From a98e9dbfaecb09c4032dc0076786bd835f25eab3 Mon Sep 17 00:00:00 2001 From: aguzovsk Date: Thu, 22 May 2008 22:23:49 -0700 Subject: 6423097 segvn_pagelock() may perform very poorly 6526804 DR delete_memory_thread, AIO, and segvn deadlock 6557794 segspt_dismpagelock() and segspt_shmadvise(MADV_FREE) may deadlock 6557813 seg_ppurge_seg() shouldn't flush all unrelated ISM/DISM segments 6557891 softlocks/pagelocks of anon pages should not decrement availrmem for memory swapped pages 6559612 multiple softlocks on a DISM segment should decrement availrmem just once 6562291 page_mem_avail() is stuck due to availrmem overaccounting and lack of seg_preap() calls 6596555 locked anonymous pages should not have assigned disk swap slots 6639424 hat_sfmmu.c:hat_pagesync() doesn't handle well HAT_SYNC_STOPON_REF and HAT_SYNC_STOPON_MOD flags 6639425 optimize checkpage() optimizations 6662927 page_llock contention during I/O --- usr/src/uts/common/os/schedctl.c | 1 + 1 file changed, 1 insertion(+) (limited to 'usr/src/uts/common/os/schedctl.c') diff --git a/usr/src/uts/common/os/schedctl.c b/usr/src/uts/common/os/schedctl.c index 4a5ccc9944..752c2535c4 100644 --- a/usr/src/uts/common/os/schedctl.c +++ b/usr/src/uts/common/os/schedctl.c @@ -676,6 +676,7 @@ schedctl_freepage(struct anon_map *amp, caddr_t kaddr) * we have to free everything rather than letting as_free * do the work. */ + anonmap_purge(amp); anon_free(amp->ahp, 0, PAGESIZE); ANON_LOCK_EXIT(&->a_rwlock); anonmap_free(amp); -- cgit v1.2.3