From owner-freebsd-arm@freebsd.org Sat Jan 28 22:18:09 2017 Return-Path: Delivered-To: freebsd-arm@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 89819CC6B8C for ; Sat, 28 Jan 2017 22:18:09 +0000 (UTC) (envelope-from tvijlbrief@gmail.com) Received: from mail-yw0-x241.google.com (mail-yw0-x241.google.com [IPv6:2607:f8b0:4002:c05::241]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 464361EC0 for ; Sat, 28 Jan 2017 22:18:09 +0000 (UTC) (envelope-from tvijlbrief@gmail.com) Received: by mail-yw0-x241.google.com with SMTP id q71so22117530ywg.3 for ; Sat, 28 Jan 2017 14:18:09 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=ktvGOdSKKEhakOeeaAaRR1GwOtu31SSIxpYgay4AkAQ=; b=YIuTIZ6L2Fgxo8LUQA2QinnpaWoGty4OQk3ROO11TnR0xfDVKGrZISFilRQwa5nwM8 EtSOYGCiAc+uIXY6U59QEruG0qnJMuy73JqtwR9AvqWVocNJoDvIIcuxRp6DXIiCUJtm hhD9OTyzBnnKkkBcmSjACUuBm5IUU9RqYbz+WfRV9NPPsfZyWmLLTqDwLSiIXz78qJ2k ybVNi5/9NZ7Jk8kY9QGPEzrzIOedGW5VA/9Odkvw5BoO8SMgEHibO9LgVIHoBNwv7qDC Tz8gk+umb51OlcnEHQNZJ8AH1S22VyCGJ3DHAivgYMO0Z0piaZqVKeYDTBu4eUyR165s ChUA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=ktvGOdSKKEhakOeeaAaRR1GwOtu31SSIxpYgay4AkAQ=; b=Z+O6rQEkPxMg+Z+fB/1quDE6yZwlH0wSwF8RZ1z07Ch9k4m/L2WJQ3C1xywp6xxlk6 YdfFH58OqaMRElogAVzTj7NdtHma4yyTPKTp5a0jfI18X+gTSCxABy6id3mxO4LX87Jk vQJ+VCodgh4RnyKV2JETOgzSd6YLXEIw9gRQGzhZWsN/zxIfmTgRh5Mzd+HZeh3c4xB5 oT07hkvcITtV6Fp3lmX2NsblNz0wXX6go0mu91kg/tUXDD3H8/E2ATb6YqZzPMAcHOrj +YELn9KCExdwH2eslyJ7DNSf4TMBUQt8U0BECmeuyWUGmkWxURRsJY63dcNa94hYqVp8 J8WA== X-Gm-Message-State: AIkVDXL+dQ4MgcC9WYeUmdGEPQBE2XE/L1V+eANfqlb7vsFtj/RfHXibYQ/zdQJttzMtaBTi8IYcCB2VZauSng== X-Received: by 10.13.222.68 with SMTP id h65mr9741192ywe.197.1485641888429; Sat, 28 Jan 2017 14:18:08 -0800 (PST) MIME-Version: 1.0 References: <20170124191357.0ec0abfd@zapp> <20170128010138.iublazyrhhqycn37@mutt-hardenedbsd> <20170128010223.tjivldnh7pyenbg6@mutt-hardenedbsd> <009857E3-35BB-4DE4-B3BB-5EC5DDBB5B06@dsl-only.net> In-Reply-To: <009857E3-35BB-4DE4-B3BB-5EC5DDBB5B06@dsl-only.net> From: Tom Vijlbrief Date: Sat, 28 Jan 2017 22:17:58 +0000 Message-ID: Subject: Re: Arm64 stack issues (was Re: FreeBSD status for/on ODroid-C2?) To: Mark Millard Cc: Shawn Webb , Andrew Turner , freebsd-arm Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.23 X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Porting FreeBSD to ARM processors." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Jan 2017 22:18:09 -0000 Note that on the pine64 the network interface hangs from time to time and I get a core dump with very low frequency from long running processes, eg the shell that invokes "make world". Note that I had similar issues on the ODroid-C2. Currently rebuilding world without MALLOC_PRODUCTION. The arm64 port is getting close to working 100%, just a last few glitches. Op 22:03 ZA 28 Jan 2017 schreef Mark Millard : > [About: "gic0: Spurious interrupt detected" on armv6 as well.] > > On 2017-Jan-28, at 6:43 AM, Tom Vijlbrief wrote: > > > Did a build/install world/kernel with r312916 and MALLOC_PRODUCTION=YES > on > > a pine64, removed /etc/malloc.conf, rebooted > > > > and I am now rebuilding the python2 port without problems so far (except > > the "gic0: Spurious interrupt detected" messages which reappeared shortly > > after my previous post) > > While very rare, I have seen the gic0 notices on armv6 (e.g., a bpim3) > during large builds (with -j 4). Recently I got a: > > gic0: Spurious interrupt detected: last irq: 29 on CPU1 > > on: > > # uname -apKU > FreeBSD bpim3 12.0-CURRENT FreeBSD 12.0-CURRENT #0 r312726M: Tue Jan 24 > 20:57:48 PST 2017 markmi@FreeBSDx64:/usr/obj/bpim3_clang/arm.armv6/usr/src/sys/BPIM3-NODBG > arm armv6 1200020 1200020 > > while building devel/gcc6 (via a full bootstrap) via -j 4 . > > This is from a non-debug buildworld buildkernel context and has > MALLOC_PRODUCTION= > in /etc/make.conf . No /etc/malloc.conf present. I do use -mcpu=cortex-a7 . > > > > Details if you care: > > # more /usr/src/sys/arm/conf/BPIM3-NODBG > # > # BPIM3 -- Custom configuration for the Banana Pi M3 > # > > include "GENERIC" > > ident BPIM3-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 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 > > > It was a from cross build for buildworld buildkernel : > (I've not checked on lldb builds linking recently.) > > # more ~/src.configs/src.conf.bpim3-clang-bootstrap.amd64-host > TO_TYPE=armv6 > # > KERNCONF=BPIM3-NODBG > TARGET=arm > .if ${.MAKE.LEVEL} == 0 > TARGET_ARCH=${TO_TYPE} > .export TARGET_ARCH > .endif > # > WITH_CROSS_COMPILER= > WITHOUT_SYSTEM_COMPILER= > # > #CPUTYPE=soft > WITH_LIBCPLUSPLUS= > WITH_BINUTILS_BOOTSTRAP= > WITH_CLANG_BOOTSTRAP= > WITH_CLANG= > WITH_CLANG_IS_CC= > WITH_CLANG_FULL= > WITH_CLANG_EXTRAS= > WITH_LLD= > # > # Linking lldb fails for armv6(/v7) > WITHOUT_LLDB= > # > WITH_BOOT= > WITHOUT_LIB32= > WITHOUT_LIBSOFT= > # > WITHOUT_ELFTOOLCHAIN_BOOTSTRAP= > WITHOUT_GCC_BOOTSTRAP= > WITHOUT_GCC= > WITHOUT_GCC_IS_CC= > WITHOUT_GNUCXX= > # > NO_WERROR= > #WERROR= > MALLOC_PRODUCTION= > # > WITH_REPRODUCIBLE_BUILD= > WITH_DEBUG_FILES= > # > XCFLAGS+= -mcpu=cortex-a7 > XCXXFLAGS+= -mcpu=cortex-a7 > # There is no XCPPFLAGS but XCPP gets XCFLAGS content. > > > Used for buildworld buildkernel : > > # more ~/src.configs/make.conf > #MALLOC_PRODUCTION= > #NO_WERROR= > #WERROR= > CFLAGS.gcc+= -v > > > Used for port builds: > > # more /etc/make.conf > WANT_QT_VERBOSE_CONFIGURE=1 > # > DEFAULT_VERSIONS+=perl5=5.24 > WRKDIRPREFIX=/usr/obj/portswork > WITH_DEBUG= > WITH_DEBUG_FILES= > MALLOC_PRODUCTION= > > > # svnlite status /usr/src/ | sort > ? /usr/src/sys/amd64/conf/GENERIC-DBG > ? /usr/src/sys/amd64/conf/GENERIC-NODBG > ? /usr/src/sys/arm/conf/BPIM3-DBG > ? /usr/src/sys/arm/conf/BPIM3-NODBG > ? /usr/src/sys/arm/conf/RPI2-DBG > ? /usr/src/sys/arm/conf/RPI2-NODBG > ? /usr/src/sys/arm64/conf/GENERIC-DBG > ? /usr/src/sys/arm64/conf/GENERIC-NODBG > ? /usr/src/sys/powerpc/conf/GENERIC64vtsc-DBG > ? /usr/src/sys/powerpc/conf/GENERIC64vtsc-NODBG > ? /usr/src/sys/powerpc/conf/GENERICvtsc-DBG > ? /usr/src/sys/powerpc/conf/GENERICvtsc-NODBG > M /usr/src/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.td > M /usr/src/contrib/llvm/tools/lld/ELF/Target.cpp > M /usr/src/lib/csu/powerpc64/Makefile > M /usr/src/libexec/rtld-elf/Makefile > M /usr/src/sys/boot/ofw/Makefile.inc > M /usr/src/sys/boot/powerpc/Makefile.inc > M /usr/src/sys/boot/powerpc/kboot/Makefile > M /usr/src/sys/boot/uboot/Makefile.inc > M /usr/src/sys/conf/kern.mk > M /usr/src/sys/conf/kmod.mk > M /usr/src/sys/ddb/db_main.c > M /usr/src/sys/ddb/db_script.c > M /usr/src/sys/modules/zfs/Makefile > M /usr/src/sys/powerpc/ofw/ofw_machdep.c > > The M's are generally tied to powerpc64 and powerpc > explorations. I tend to use the same source for all > the TARGET_ARCH's that I build. > > > === > Mark Millard > markmi at dsl-only.net > > >