Re: Panic on current amd64

From: Hans Petter Selasky <hps_at_selasky.org>
Date: Tue, 31 Mar 2015 09:11:17 +0200
On 03/31/15 02:15, Konstantin Belousov wrote:
> On Tue, Mar 31, 2015 at 02:51:47AM +0300, Konstantin Belousov wrote:
>> On Tue, Mar 31, 2015 at 01:41:04AM +0300, Gleb Smirnoff wrote:
>>> On Tue, Mar 31, 2015 at 12:30:04AM +0200, Hans Petter Selasky wrote:
>>> H> On 03/30/15 23:19, Gleb Smirnoff wrote:
>>> H> > On Sat, Mar 28, 2015 at 03:02:28PM -0700, Manfred Antar wrote:
>>> H> > M> I get the following panic on current svn ver  r280793:
>>> H> > M>
>>> H> > M> Sat Mar 28 14:41:28 PDT 2015
>>> H> > M>
>>> H> > M> FreeBSD/amd64 (pozo.com) (ttyu0)
>>> H> > M>
>>> H> > M> panic: Invalid CPU in callout 16
>>> H> >
>>> H> > The same happened to me in the OFED code. After investigation
>>> H> > it appeared that for some unknown reason, the OFED code used
>>> H> > /usr/include/sys/callout.h instead of SYSDIR/sys/callout.h,
>>> H> > that yield in wrong value passing as parameter.
>>> H> >
>>> H> > I failed to reproduce the problem. :( So, the fix is a rebuild
>>> H> > of kernel. But the right fix is to understand what went wrong
>>> H> > in the previous build.
>>> H>
>>> H> How did you compile the OFED stuff? Did you set the SYSDIR variable when
>>> H> building?
>>>
>>> I just have this in my kernel config:
>>>
>>> options         OFED
>>> device          mlxen
>>
>> Quick grep of the sys/ofed immediately shows the following:
>>
>> sys/ofed/include/linux/wait.h:#include <sys/param.h>
>> sys/ofed/include/linux/wait.h:#include <sys/systm.h>
>> sys/ofed/include/linux/wait.h:#include <sys/sleepqueue.h>
>> sys/ofed/include/linux/wait.h:#include <sys/kernel.h>
>> sys/ofed/include/linux/wait.h:#include <sys/proc.h>
>>
>> ys/ofed/include/linux/timer.h:#include <sys/callout.h>
>> sys/ofed/include/linux/types.h:#include <sys/cdefs.h>
>> sys/ofed/include/linux/types.h:#include <sys/types.h>
>> sys/ofed/include/linux/types.h:#include <sys/param.h>
>> sys/ofed/include/linux/types.h:#include <sys/systm.h>
>>
>> and so on.
>
> Err, I am sorry, scratch this.

Hi,

Could you:

cd sys/amd64/conf
config YOURCONFIG

cd ../compile/YOURCONFIG
less Makefile

and see if it includes something outside /sys ?

OFED uses its own CFLAGS and check if some include directives have space 
after the "-Ixxxspace", because then this simple flag conversion will fail:

OFEDCFLAGS=     ${CFLAGS:N-I*} ${OFEDINCLUDES} ${CFLAGS:M-I*} ${OFEDNOERR}

Thank you!

--HPS
Received on Tue Mar 31 2015 - 05:10:36 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:56 UTC