Date: Fri, 27 May 2016 09:50:05 +0200 From: Gary Jennejohn <gljennjohn@gmail.com> To: John Baldwin <jhb@freebsd.org> Cc: current@freebsd.org Subject: Re: EARLY_AP_STARTUP hangs during boot Message-ID: <20160527095005.0e0dc1be@ernst.home> In-Reply-To: <2245981.CzRHAP1AJo@ralph.baldwin.cx> References: <20160516122242.39249a54@ernst.home> <3960771.pvLV2Nd9Tc@ralph.baldwin.cx> <20160517184741.599597b4@ernst.home> <2245981.CzRHAP1AJo@ralph.baldwin.cx>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 26 May 2016 16:54:35 -0700 John Baldwin <jhb@freebsd.org> wrote: > On Tuesday, May 17, 2016 06:47:41 PM Gary Jennejohn wrote: > > On Mon, 16 May 2016 10:54:19 -0700 > > John Baldwin <jhb@freebsd.org> wrote: > > > > > On Monday, May 16, 2016 12:22:42 PM Gary Jennejohn wrote: > > > > I tried out EARLY_AP_STARTUP, but the kernel hangs and I can't > > > > break into DDB. > > > > > > > > I did a verbose boot and the last lines I see are related to routing > > > > MSI-X to various local APIC vectors. I copied the last few lines and > > > > they look like this: > > > > > > > > msi: routing MSI-X IRQ 256 to local APIC 2 vector 48 > > > > msi: routing MSI-X IRQ 257 to local APIC 3 vector 48 > > > > msi: routing MSI-X IRQ 258 to local APIC 4 vector 48 > > > > msi: routing MSI-X IRQ 256 to local APIC 0 vector 49 > > ^^^^^^^ Assigning > > > > > > > > I tried disabling msi and msix in /boot/loader.conf, but the settings > > > > were ignored (probabaly too early). > > > > > > No, those settings are not too early. However, the routing to different > > > CPUs now happens earlier than it used to. What is the line before the > > > MSI lines? You can take a picture with your phone/camera if that's simplest. > > > > > > > Here a few lines before the MSI routing happens: > > > > hpet0: <High Precision Event Timer> iomem 0xfed00000-0xfed003ff irq 0,8 on acpi0 > > hpet0: vendor 0x4353, rev 0x1, 14318180 Hz, 3 timers, legacy route > > hpet0: t0 : irqs 0x00c0ff (0), MSI, periodic > > hpet0: t1 : irqs 0x00c0ff (0), MSI, periodic > > hpet0: t2 : irqs 0x00c0ff (0), MSI, periodic > > Timecounter "HPET" frequency 14318180 Hz quality 950 > > The assigning message means it is in the loop using > bus_bind_intr() to setup per-CPU timers. Can you please try > setting 'hint.hpet.0.per_cpu=0' at the loader prompt to see if > disabling the use of per-CPU timers allows you to boot? > Something has changed since the last time I generated a kernel with this option. Now I get a NULL-pointer dereference in the kernel, doesn't matter whether I set the hint or not. No crash dump is created. Here some trace copied from the console: Fatal trap 12: page fault while in kernel mode cpuid = 0; apic id = 00 fault virtual address = 0x1818 fault code = supervisor write data, page not present instruction pointer = 0x20:0xffffffff805492ef [some stack trace] taskgroup_adjust() at taskgroup_adjust+0x2f; frame 0xffffffff8196c90 mi_startup() at mi_startup+0x118; frame 0xffffffff8196fcb0 -- Gary Jennejohn
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20160527095005.0e0dc1be>