From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: KVM: register the kvm mmu cache with the shrinker. Date: Thu, 27 Mar 2008 14:45:16 +0200 Message-ID: <47EB96DC.4020200@qumranet.com> References: <47E8ECDB.3050807@qumranet.com> <47E8F1CA.5000408@qumranet.com> <47E8F82E.3000905@qumranet.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Cc: kvm-devel , Marcelo Tosatti To: Izik Eidus Return-path: In-Reply-To: <47E8F82E.3000905@qumranet.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: kvm-devel-bounces@lists.sourceforge.net Errors-To: kvm-devel-bounces@lists.sourceforge.net List-Id: kvm.vger.kernel.org Izik Eidus wrote: > void kvm_mmu_module_exit(void) > { > if (pte_chain_cache) > @@ -1980,6 +2026,7 @@ void kvm_mmu_module_exit(void) > kmem_cache_destroy(rmap_desc_cache); > if (mmu_page_header_cache) > kmem_cache_destroy(mmu_page_header_cache); > + unregister_shrinker(&mmu_shrinker); > } > kvm_mmu_module_exit() can be called from the nomem: label below, so the shrinker will be unregistered despite not being registered. Suggest renaming kvm_mmu_module_exit() to mmu_destroy_caches(), and adding a new kvm_mmu_module_exit() which will call mmu_destroy_caches() and unregister_shrinker(). > > int kvm_mmu_module_init(void) > @@ -2001,6 +2048,8 @@ int kvm_mmu_module_init(void) > if (!mmu_page_header_cache) > goto nomem; > > + register_shrinker(&mmu_shrinker); > + > return 0; > > nomem: > -- error compiling committee.c: too many arguments to function ------------------------------------------------------------------------- Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace