Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 30 Aug 2009 01:19:03 +0200
From:      Andreas Tobler <andreast-list@fgznet.ch>
To:        Kostik Belousov <kostikbel@gmail.com>
Cc:        freebsd-current <freebsd-current@freebsd.org>
Subject:   Re: Boot panic -CURRENT #196643
Message-ID:  <4A99B767.6090907@fgznet.ch>
In-Reply-To: <20090829221931.GZ1881@deviant.kiev.zoral.com.ua>
References:  <4A997442.1060200@fgznet.ch>	<20090829183906.GS1881@deviant.kiev.zoral.com.ua>	<4A9988ED.2040403@fgznet.ch>	<20090829201614.GU1881@deviant.kiev.zoral.com.ua>	<4A999344.5000703@fgznet.ch>	<20090829205723.GW1881@deviant.kiev.zoral.com.ua>	<4A99A172.90009@fgznet.ch>	<20090829215549.GY1881@deviant.kiev.zoral.com.ua>	<4A99A863.1070806@fgznet.ch> <20090829221931.GZ1881@deviant.kiev.zoral.com.ua>

next in thread | previous in thread | raw e-mail | index | archive | help
Kostik Belousov wrote:
> On Sun, Aug 30, 2009 at 12:14:59AM +0200, Andreas Tobler wrote:
>> Kostik Belousov wrote:
>>> On Sat, Aug 29, 2009 at 11:45:22PM +0200, Andreas Tobler wrote:
>>>> Kostik Belousov wrote:
>>>>
>>>>> Please, try this.
>>>>>
>>>>> diff --git a/sys/vm/vm_glue.c b/sys/vm/vm_glue.c
>>>>> index 234cde9..b0e8d3c 100644
>>>>> --- a/sys/vm/vm_glue.c
>>>>> +++ b/sys/vm/vm_glue.c
>>>>> @@ -447,6 +447,8 @@ vm_thread_dispose(struct thread *td)
>>>>> 	pages = td->td_kstack_pages;
>>>>> 	ksobj = td->td_kstack_obj;
>>>>> 	ks = td->td_kstack;
>>>>> +	td->td_kstack = 0;
>>>>> +	td->td_kstack_pages = 0;
>>>>> 	if (pages == KSTACK_PAGES && kstacks <= kstack_cache_size) {
>>>>> 		ks_ce = (struct kstack_cache_entry *)ks;
>>>>> 		ks_ce->ksobj = ksobj;
>>>>> @@ -457,8 +459,6 @@ vm_thread_dispose(struct thread *td)
>>>>> 		return;
>>>>> 	}
>>>>> 	vm_thread_stack_dispose(ksobj, ks, pages);
>>>>> -	td->td_kstack = 0;
>>>>> -	td->td_kstack_pages = 0;
>>>>> }
>>>>>
>>>>> static void
>>>> panic: Assertion td->td_lock == TDQ_LOCKPTR(tdq) failed ... 
>>>> sched_ule.c:1878
>>>> cpuid = 1
>>>> KDB: enter: panic
>>>> [thread pid 0 tid 100073 ]
>>>> Stopped at 	kdb_enter+0x3a: movl	$0,kdb_why
>>>>
>>>> As you see I managed to reboot my zfs root ;)
>>> Fair enough.
>>>
>>> I reverted the change for now, HEAD must be kept in the working state,
>>> esp. during the release.
>>>
>>> My apologies for the breakage, r196648 should return the world
>>> to less broken state.
>>
>> Np. Thank you for helping here!
>>
>> FreeBSD 9.0-CURRENT (TC) #3 r196648M: Sun Aug 30 00:02:14 CEST 2009
>>
>> Boots again and the rev in the line above is back.
> 
> The (hopefully) fixed version of the change is at
> http://people.freebsd.org/~kib/misc/altkstacks.3.patch

Thanks!

tc# uname -ra
FreeBSD tc.andreas.nets 9.0-CURRENT FreeBSD 9.0-CURRENT #0 r196648M: Sun 
Aug 30 00:45:26 CEST 2009 
andreast@tc.andreas.nets:/usr/obj/export/devel/fbsd/head/src/sys/TC  i386


With the above patch applied.

Thx,
Andreas



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4A99B767.6090907>