Builworld stalls on rpi2 [various processes stuck in pfault and vmwait with 1996M Free Swap listed by top]
Mark Millard
markmi at dsl-only.net
Sat Jan 13 03:58:48 UTC 2018
On 2018-Jan-12, at 6:43 PM, bob prohaska <fbsd at www.zefox.net> wrote:
> On Fri, Jan 12, 2018 at 05:53:03PM -0800, Mark Millard wrote:
>>
>> On 2018-Jan-12, at 4:54 PM, bob prohaska <fbsd at www.zefox.net> wrote:
>>
>>>
>>> The machine still answers ping. Typing escape control-b does not
>>> bring up a debugger, did the keysequence change? Power cycling seems
>>> to be the only way out.
>>
>> With or without:
>>
>> options ALT_BREAK_TO_DEBUGGER
>>
>> For with: <CR>~^B (with <CR> being <return>
>> and ^ being <control>) is an alternate with
>> this.
>>
>
> The line
> options ALT_BREAK_TO_DEBUGGER
> does not appear in the GENERIC kernel, but
> neither does the ue identifier for ethernet.
> I thought perhaps both were included from
> elsewhere. Maybe not. I'll add it.
>
>
I tend to include GENERIC in another file and
then specify things I want as well or instead:
# more /usr/src/sys/arm/conf/GENERIC-NODBG
include "GENERIC"
ident GENERIC-NODBG
makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols
options ALT_BREAK_TO_DEBUGGER
options KDB # Enable kernel debugger support
# For minimum debugger support (stable branch) use:
options KDB_TRACE # Print a stack trace for a panic
options DDB # Enable the kernel debugger
# Extra stuff:
#options VERBOSE_SYSINIT # Enable verbose sysinit messages
#options BOOTVERBOSE=1
#options BOOTHOWTO=RB_VERBOSE
options KLD_DEBUG
#options KTR
#options KTR_MASK=KTR_TRAP
##options KTR_CPUMASK=0xF
#options KTR_VERBOSE
# Disable any extra checking for. . .
nooptions INVARIANTS # Enable calls of extra sanity checking
nooptions INVARIANT_SUPPORT # Extra sanity checks of internal structures, required by INVARIANTS
nooptions WITNESS # Enable checks to detect deadlocks and cycles
nooptions WITNESS_SKIPSPIN # Don't run witness on spinlocks for speed
nooptions DIAGNOSTIC
nooptions BUF_TRACKING
nooptions FULL_BUF_TRACKING
nooptions DEADLKRES # Enable the deadlock resolver
nooptions USB_DEBUG
nooptions USB_REQ_DEBUG
nooptions USB_VERBOSE
# more /usr/src/sys/arm/conf/GENERIC-DBG
include "GENERIC"
ident GENERIC-DBG
makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols
options ALT_BREAK_TO_DEBUGGER
options KDB # Enable kernel debugger support
# For minimum debugger support (stable branch) use:
options KDB_TRACE # Print a stack trace for a panic
options DDB # Enable the kernel debugger
# Extra stuff:
#options VERBOSE_SYSINIT # Enable verbose sysinit messages
#options BOOTVERBOSE=1
#options BOOTHOWTO=RB_VERBOSE
#options KLD_DEBUG
#options KTR
#options KTR_MASK=KTR_TRAP|KTR_PROC
##options KTR_CPUMASK=0xF
#options KTR_VERBOSE
# Enable any extra checking for. . .
options INVARIANTS # Enable calls of extra sanity checking
options INVARIANT_SUPPORT # Extra sanity checks of internal structures, required by INVARIANTS
options WITNESS # Enable checks to detect deadlocks and cycles
options WITNESS_SKIPSPIN # Don't run witness on spinlocks for speed
nooptions DIAGNOSTIC
options BUF_TRACKING
options FULL_BUF_TRACKING
options DEADLKRES # Enable the deadlock resolver
options USB_DEBUG
#options USB_REQ_DEBUG
#options USB_VERBOSE
This avoids changing the official GENERIC.
Of course I have to specify the non-default
file name for the build.
>> I've see the smsc0 messages before but I'm
>> not up to -r327664+ yet. This has been with
>> a non-debug kernel running.
>>
>> I've had building large ports get into such states,
>> especially while at least one large link operation
>> was active with other fairly large processes,
>> as I remember.
>>
>> Note all the pfault and vmwait lines. It looks like
>> -r327316 and -r327468 did not happen to avoid this.
>> It looks like the paging/swaping has gotten stuck
>> in some way. How tied that might be to smsc0
>> messages, I've no clue.
>>
>> You might get through by using -j3 or -j2 or -j1 which
>> likely would use less process space at once (worst case)
>> than -j4 happened to.
>>
>> Of course there are other time consequences as you
>> approach -j1 (or no explicit -j for the buildworld
>> at all).
>>
>>
>
> I'd rather not slow things down, but slow is better than
> crashed....
===
Mark Millard
markmi at dsl-only.net
More information about the freebsd-arm
mailing list