From owner-freebsd-current@freebsd.org Sun Mar 25 20:15:21 2018 Return-Path: Delivered-To: freebsd-current@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7743AF69BA9 for ; Sun, 25 Mar 2018 20:15:21 +0000 (UTC) (envelope-from marklmi26-fbsd@yahoo.com) Received: from sonic302-22.consmr.mail.ne1.yahoo.com (sonic302-22.consmr.mail.ne1.yahoo.com [66.163.186.148]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0F52176B1C for ; Sun, 25 Mar 2018 20:15:20 +0000 (UTC) (envelope-from marklmi26-fbsd@yahoo.com) X-YMail-OSG: TdXEHmUVM1mcKjGg7cNUl6EpCmTbCWwfTi8e2qImOUDamJV14j0FiMsFSaGc9w2 Oo2g7o7.0CYsswrGXebKJMxmowg1JM1G82nrZyLy_.08b2iPcnq4ngiNVa5xROOq.P1h3Ee8hxLc KikPPgOpZAUQXoXfi3NeVpGe6Co2S6s0fE03fahHSXagFQahRtaKs70Ofl81TpBZYbCUqHFyP1ub sJy09WKVKJGxsmPWi9xcv3Cr3RVK_SeWX7k.SJzkV1EhL22qAuQQ5uL1Fkb_iTbkx3iMRM6yFzCn kW2Gij13DY3sKFLRkECwp3NwJOVtpPeTANpvxk2dfOdNbsxgDmNNFPUkl_ryZ3RaiZ5qURtmRo6L n7Q9axRm_wWvrmFzPt2bMQthx8M3d8hjD0KbhkeZfRmsK1kt.qM2.5XAyR8q.1KE6wgTrCiaKmZ7 L1IMlojjziBZJOm9q95whirUgsQKzs7Seae9XrlyGTtn8okuLaNw7Nksl_jfm5TTDQUu9jmry9B3 0Uz_R2rfLywQkjqvTxOGnnMB2PSyvv8pyeA-- Received: from sonic.gate.mail.ne1.yahoo.com by sonic302.consmr.mail.ne1.yahoo.com with HTTP; Sun, 25 Mar 2018 20:15:14 +0000 Received: from c-76-115-7-162.hsd1.or.comcast.net (EHLO [192.168.1.25]) ([76.115.7.162]) by smtp431.mail.ne1.yahoo.com (Oath Hermes SMTP Server) with ESMTPA ID 1b9ad79fa0ebea0c84e2a9c2e4626a66; Sun, 25 Mar 2018 20:15:10 +0000 (UTC) From: Mark Millard Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (Mac OS X Mail 11.2 \(3445.5.20\)) Subject: Re: head -r331499 amd64/threadripper panic in vm_page_free_prep during "poudriere bulk -a", after 14h 22m or so. Date: Sun, 25 Mar 2018 13:15:08 -0700 References: <8D9C49CB-957E-40A5-8EB0-D90D8AC02060@yahoo.com> <20180325183421.GA74365@raichu> <44821CA4-19C2-4265-8E83-568452DF6471@yahoo.com> To: Mark Johnston , FreeBSD Current In-Reply-To: <44821CA4-19C2-4265-8E83-568452DF6471@yahoo.com> Message-Id: <0612D846-F99F-4C55-AAD2-C2BCE098F069@yahoo.com> X-Mailer: Apple Mail (2.3445.5.20) X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 25 Mar 2018 20:15:21 -0000 [Just an added note about where in the sequence panic messages are sent to the console vs. could potentially be sent to the console.] > On 2018-Mar-25, at 12:32 PM, Mark Millard wrote: >=20 > On 2018-Mar-25, at 11:34 AM, Mark Johnston = wrote: >=20 >> On Sun, Mar 25, 2018 at 10:41:38AM -0700, Mark Millard wrote: >>> FreeBSD panic'd while attempting to see if a "poudriere bulk -w -a" >>> would get the "unnecessary swapping" problem in my UFS-only context, >>> -r331499 (non-debug but with symbols), under Hyper-V. This is a >>> Ryzen Threadripper context, but I've no clue if that is important >>> to the problem. This was after 14 hours or so of building: >>>=20 >>> . . . >>> [14:22:05] [18] [00:01:16] Finished devel/p5-Test-HTML-Tidy | = p5-Test-HTML-Tidy-1.00_1: Success >>> [14:22:08] [18] [00:00:00] Building devel/ocaml-camlp5 | = ocaml-camlp5-6.16 >>>=20 >>> So I've no clue if or how to repeat this. >>>=20 >>> Unfortunately dump was unsuccessful.=20 >>=20 >> What happened? >=20 > It reported: >=20 > (da1:strovsc1:0:0:0) WRITE(10). CDB 2a 00 35 24 37 c7 00 00 0 00 > (da1:storvsc1:0:0:0) CAM status Command timeout > (da1:storvsc1:0:0:0) Error 5, Retries exhausted > Aborting dump to to I/O error. >=20 > ** DUMP FAILED (ERROR 5) ** > =3D 0x5 >=20 >>> So all I have is the >>> backtrace. Hand typed from a screen shot of the console >>> window: >>=20 >> Do you know what the panic message was? There are multiple calls to >> panic() in vm_page_free_prep(). >=20 > No. I listed what I could see. The console screen does not have many > lines or rows and I was sleeping when the panic happened. I sometimes wonder if panic should repeat the panic message at the end of the backtrace in order to deal with keeping it visible in row-restricted console contexts. > I redid a buildworld buildkernel installkernel installworld sequence > since then and it looks like the detailed addresses changed (as seen > in objdump now vs. what was on the console). But the relative offset > in vm_page_free_prep seem to be a match, at least for the instruction > after the "callq panic". >=20 > Looking at the kernel code I see: >=20 > . . . > mov 0xffffffff81843690,%rax > mov $0xffffffff81d6d880,%rcx > sub %rcx,%rax > addq $0x1,%gs:(%rax) > mov 0x54(%rbx),%eax > and $0x1,%eax > jne > . . . > (several paths reach +0x106) > movw $0x0,0x64(%rbx) > cmpl $0x0,0x50(%rbx) > jne > . . . > mov $0xffffffff8116628b,%rdi > jmp > mov $0xffffffff8120ca97,%rdi > xor %eax,%eax > mov %rbx,%rsi > callq > nopw %cs:0x0(%rax,%rax,1) >=20 > No KASSERTS present (a non-debug build). That leaves: >=20 > if (vm_page_sbusied(m)) > panic("vm_page_free: freeing busy page %p", m); > and: >=20 > if (m->wire_count !=3D 0) > panic("vm_page_free: freeing wired page %p", m); >=20 > I do not have anything that lets me differentiate which > occurred based on the above detail. Sorry. =3D=3D=3D Mark Millard marklmi at yahoo.com ( dsl-only.net went away in early 2018-Mar)