Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 22 Jun 2010 12:06:44 +1000
From:      Lawrence Stewart <lstewart@freebsd.org>
To:        Fabian Keil <freebsd-listen@fabiankeil.de>
Cc:        freebsd-current@freebsd.org
Subject:   Re: [CFT] SIFTR - Statistical Information For TCP Research: Uncle Lawrence needs YOU!
Message-ID:  <4C201AB4.6090708@freebsd.org>
In-Reply-To: <20100621205228.0e5332cc@r500.local>
References:  <4C1492D0.6020704@freebsd.org>	<4C1C3922.2050102@freebsd.org>	<20100619195823.53a7baaa@r500.local>	<4C1DED16.8020209@freebsd.org>	<20100620131544.495ddecd@r500.local>	<4C1E019F.6060802@freebsd.org>	<20100620142841.4803dac3@r500.local>	<4C1E0E14.3090506@freebsd.org>	<20100620151554.58e486db@r500.local>	<20100620161242.59381341@r500.local>	<20100620213601.050fcf3e@r500.local>	<6CE5B32B-2C82-436D-82E3-489D2D22C7EA@lavabit.com>	<4C1EE644.3070105@freebsd.org> <20100621205228.0e5332cc@r500.local>

next in thread | previous in thread | raw e-mail | index | archive | help
On 06/22/10 04:52, Fabian Keil wrote:
> Lawrence Stewart<lstewart@freebsd.org>  wrote:
>
>> On 06/21/10 05:44, Rui Paulo wrote:
>>>
>>> On 20 Jun 2010, at 20:36, Fabian Keil wrote:
>>>
>>>> Fabian Keil<freebsd-listen@fabiankeil.de>   wrote:
>>>>
>>>>> Fabian Keil<freebsd-listen@fabiankeil.de>   wrote:
>>>>
>>>>>> My custom kernel normally doesn't have INVARIANTS and WITNESS
>>>>>> enabled, so I'll try to enable them next.
>>>>>
>>>>> The culprit seem to be non-default KTR settings in the kernel
>>>>> while loading alq as a module.
>>>>
>>>> Actually whether or not alq is loaded as a module doesn't
>>>> seem to matter, with:
>>>>
>>>> options		KTR
>>>> options		KTR_ENTRIES=262144
>>>> options		KTR_COMPILE=(KTR_SCHED)
>>>> options		KTR_MASK=(KTR_SCHED)
>>>> options		KTR_CPUMASK=0x3
>>>> options		ALQ
>>>> options		KTR_ALQ
>>>>
>>>> enabling siftr panics the system, too.
>>>
>>> That's probably because your module was built with different compile time options than the ones used in the kernel. These options may change structure sizes, function parameters, etc. and that easily causes panics.
>>
>> hmm I wonder if my instructions to build SIFTR manually are causing your
>> problems. Fabian, is the siftr.ko module you're loading built as part of
>> a "make buildkernel", or did you follow my instructions and "cd
>> </path/to/src>/sys/modules/siftr ; make ; kldload ./siftr.ko"?
>
> The latter.
>
>> If the latter is true, perhaps try and explicitly build SIFTR as part of
>> "make buildkernel" and see if loading the module built that way still
>> triggers the panic when enabled (the module will be in
>> /usr/obj/<path/to/src>/sys/<KERNCONF>/modules/<path/to/src>/sys/modules/siftr/siftr.ko
>> or if you "make installkernel" it'll be in /boot/kernel/kernel/siftr.ko).
>
> That seems to work.

Damn, well this is the first time I've encountered a problem like this 
whilst using SIFTR compiled standalone and I've been using it like that 
for almost 3 years. I guess the lack of KTR in the module build subtly 
influences the module in a way that allows it load but in a precarious 
way. How irritating. Rui you were right on the money!

I will revise my testing instructions to build the module as part of a 
buildkernel to avoid potential problems like this.

Thanks for helping get to the bottom of this and for the test feedback.

Cheers,
Lawrence



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