From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: __purge_vmap_area_lazy crash with CONFIG_PREEMPT_RCU=y Date: Tue, 30 Dec 2008 17:32:50 +0200 Message-ID: <495A3F22.60509@redhat.com> References: <20081210202326.GA7565@dmt.cnet> <20081224152844.GE29319@random.random> <20081229145821.GA3823@amt.cnet> <200812301453.37230.nickpiggin@yahoo.com.au> <20081230151306.GA3536@amt.cnet> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Nick Piggin , Andrea Arcangeli , kvm-devel To: Marcelo Tosatti Return-path: Received: from mx2.redhat.com ([66.187.237.31]:50522 "EHLO mx2.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752069AbYL3Pcx (ORCPT ); Tue, 30 Dec 2008 10:32:53 -0500 In-Reply-To: <20081230151306.GA3536@amt.cnet> Sender: kvm-owner@vger.kernel.org List-ID: Marcelo Tosatti wrote: > On Tue, Dec 30, 2008 at 02:53:36PM +1100, Nick Piggin wrote: > >>> RSP >>> ---[ end trace 31811279a2e983e8 ]--- >>> note: qemu-system-x86[4440] exited with preempt_count 2 >>> >>> >>> (gdb) l *(__purge_vmap_area_lazy + 0x12c) >>> 0xffffffff80289ca2 is in __purge_vmap_area_lazy (mm/vmalloc.c:516). >>> 511 if (nr || force_flush) >>> 512 flush_tlb_kernel_range(*start, *end); >>> 513 >>> 514 if (nr) { >>> 515 spin_lock(&vmap_area_lock); >>> 516 list_for_each_entry(va, &valist, purge_list) >>> 517 __free_vmap_area(va); >>> 518 spin_unlock(&vmap_area_lock); >>> 519 } >>> 520 spin_unlock(&purge_lock); >>> >>> 0xffffffff80289c9a <__purge_vmap_area_lazy+292>: mov 0x40(%rbx),%rax >>> 0xffffffff80289c9e <__purge_vmap_area_lazy+296>: lea -0x40(%rax),%rbx >>> 0xffffffff80289ca2 <__purge_vmap_area_lazy+300>: mov 0x40(%rbx),%rax >>> ^^^^^^^^^^^^^^^^^^^ >>> > > Note: > > RAX: 6b6b6b6b6b6b6b6b RBX: 6b6b6b6b6b6b6b2b > > Good old POISON_FREE. -- error compiling committee.c: too many arguments to function