Date: Sat, 28 Mar 2020 09:17:42 -0700 From: bob prohaska <fbsd@www.zefox.net> To: Mark Millard <marklmi@yahoo.com> Cc: freebsd-arm@freebsd.org, bob prohaska <fbsd@www.zefox.net> Subject: Re: Belated out of swap kill on rpi3 at r359216 Message-ID: <20200328161742.GA7571@www.zefox.net> In-Reply-To: <5549E63B-0784-4B58-AD36-2A2EDC518308@yahoo.com> References: <83E41A13-6C24-4B56-A837-779044038FBC@yahoo.com> <20200324185518.GA92311@www.zefox.net> <75CE3C07-8A0A-4D32-84C6-24BEA967447E@yahoo.com> <20200324224658.GA92726@www.zefox.net> <764D5A86-6A42-44E0-A706-F1C49BB198DA@yahoo.com> <20200325015633.GA93057@www.zefox.net> <0FF6BC4C-296F-49F3-8FB8-AA87A49349E2@yahoo.com> <20200326220649.GA99824@www.zefox.net> <0A8CF8D1-8D0F-40E2-A10D-EB44BEEAB557@yahoo.com> <5549E63B-0784-4B58-AD36-2A2EDC518308@yahoo.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Mar 27, 2020 at 07:25:45PM -0700, Mark Millard wrote: > > > On 2020-Mar-26, at 16:24, Mark Millard <marklmi at yahoo.com> wrote: > > > > > Anyway, I may, for a time, have one context that is > > more like yours than is normal for me. As stands, the > > RPi3 is doing a from-scratch buildworld buildkernel . > > (Reconstructing the head -r358966 that it is already > > running.) It is not splitting the I/O load but is > > using a USB SSD (via a powered hub), not the microsd > > card. No extra logging. vm.pfault_oom_attempts=-1 > > and vm.pageout_oom_seq=120 for this attempt. 3072 > > MiBytes of page/swap space. It is a -j4 build attempt. > > > > ("No extra logging" meant: beyond my normal typescript > recording of the build output. That file ended up at > 7741518 Bytes for size.) Does the process capture all the output from make buildworld? On my machines (pi2 and pi3) that's usually ~30 MB. > > > The build completed without any /var/log/message or > console output during the build. My modified version > of top reported (details copied from a ssh window) . . . > That seems to settle matters. My problems are with the old microSD card. New, it was marginally ok. Old, it's not. That crudely quantifies lifespan at around a year of active use, with trouble appearing roughly when the card was 75% full, at least a hint of required overprovisioning. Out of curiosity, have you tried leaving vm.pfault_oom_attempts at its default value? An OOM kill would be unexpected, but interesting if observed. > For Mem: 738512Ki MaxObsActive, 190608Ki MaxObsWired, 906372Ki MaxObs(Act+Wir) > For Swap: 1927Mi MaxObsUsed > Thanks for posting! bob prohaska > (top was started before the build. "MaxObs" is short > for "Maximum Observed".) > > The build took a few minutes under 31 hrs. > (Ending: 2010-03-27:18:54:03 > Starting: 2020-03-26:12:02:47). > > Because it was rebuilding -r358966 that it was already > running, no bootstrap compiler or linker was built, > despite it being a from-scratch build: The system > compiler and linker were sufficient. > > > > For reference: the details of what was specified for > building (contributes to "how long it took"). . . > > # more ~/src.configs/src.conf.cortexA53-clang-bootstrap.aarch64-host > TO_TYPE=aarch64 > # > KERNCONF=GENERIC-NODBG > TARGET=arm64 > .if ${.MAKE.LEVEL} == 0 > TARGET_ARCH=${TO_TYPE} > .export TARGET_ARCH > .endif > # > WITH_SYSTEM_COMPILER= > WITH_SYSTEM_LINKER= > # > WITH_LIBCPLUSPLUS= > WITHOUT_BINUTILS_BOOTSTRAP= > WITH_ELFTOOLCHAIN_BOOTSTRAP= > #Disables avoiding bootstrap: WITHOUT_LLVM_TARGET_ALL= > WITH_LLVM_TARGET_AARCH64= > WITH_LLVM_TARGET_ARM= > WITHOUT_LLVM_TARGET_MIPS= > WITHOUT_LLVM_TARGET_POWERPC= > WITHOUT_LLVM_TARGET_RISCV= > WITHOUT_LLVM_TARGET_X86= > WITH_CLANG= > WITH_CLANG_IS_CC= > WITH_CLANG_FULL= > WITH_CLANG_EXTRAS= > WITH_LLD= > WITH_LLD_IS_LD= > WITHOUT_BINUTILS= > WITH_LLDB= > # > WITH_BOOT= > WITHOUT_LIB32= > # > # > NO_WERROR= > #WERROR= > MALLOC_PRODUCTION= > # > # Avoid stripping but do not control host -g status as well: > DEBUG_FLAGS+= > # > WITH_DEBUG_FILES= > # > # Use of the .clang 's here avoids > # interfering with other C<?>FLAGS > # usage, such as ?= usage. > CFLAGS.clang+= -mcpu=cortex-a53 > CXXFLAGS.clang+= -mcpu=cortex-a53 > CPPFLAGS.clang+= -mcpu=cortex-a53 > ACFLAGS.arm64cpuid.S+= -mcpu=cortex-a53+crypto > ACFLAGS.aesv8-armx.S+= -mcpu=cortex-a53+crypto > ACFLAGS.ghashv8-armx.S+= -mcpu=cortex-a53+crypto > > # more /usr/src/sys/arm64/conf/GENERIC-NODBG > # > # GENERIC -- Custom configuration for the arm64/aarch64 > # > > 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=0 # Enable verbose sysinit messages > #options BOOTVERBOSE=1 > #options BOOTHOWTO=RB_VERBOSE > #options KTR > #options KTR_MASK=KTR_TRAP > ##options KTR_CPUMASK=0xF > #options KTR_VERBOSE > > # Disable any extra checking for. . . > nooptions DEADLKRES # Enable the deadlock resolver > 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 MALLOC_DEBUG_MAXZONES # Separate malloc(9) zones > nooptions BUF_TRACKING > nooptions FULL_BUF_TRACKING > > > === > Mark Millard > marklmi at yahoo.com > ( dsl-only.net went > away in early 2018-Mar) > >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20200328161742.GA7571>