From owner-freebsd-current@freebsd.org Sun Mar 25 19:42:22 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 9469CF67621 for ; Sun, 25 Mar 2018 19:42:22 +0000 (UTC) (envelope-from marklmi26-fbsd@yahoo.com) Received: from sonic306-20.consmr.mail.gq1.yahoo.com (sonic306-20.consmr.mail.gq1.yahoo.com [98.137.68.83]) (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 1DA4D7591F for ; Sun, 25 Mar 2018 19:42:21 +0000 (UTC) (envelope-from marklmi26-fbsd@yahoo.com) X-YMail-OSG: FknwQ0MVM1n7Egl0SPjWl44c5tJFRTL0oQ8neJb9nCfRyjGfW9UNoXW8xR0zNuV TsMMmPjmC3czFia6m42ksG6kvv.xt0BujuP1cfkxgipg2.olr5ieMwC70q3wvVRDUMHa4AH2_EOr QvBBEtb9nrqmjr91gglKXWREMcO1Df6YLCVb.J0ZxRpU9YSPGLNqWDMtiQsjL8FpRB1XDW6JEyQh ebqRYo9wzfFTvQedp52cp1QK15AW7CZU3LeJfpZZKq_fYqPocB_uSjhY4ywIikOU._iB7IW0HmCC HIwvvHHIg_CGe6XLqOp.ECATy2ufhKTjwC1rPyN2owq.Yjse9iaq2bFDTjWTT9H38CE8BbQL2p3F gXiEfaEymBZbm1_PFzM5V25oFtaWiwJHvkUhU5LpFDEomIqf3tDvQAktIchGvTRXDljAk2Oijt0L NwlZUaxJUagwBtLWQ2FHyspm_jaTdl7BgDpM7PGVTmeT7sMosbvwzRPmdQeRaLfhnpXoJvH_m4K6 zNW2eDCCoYiBmVYc8otUssMWCTYf20hV5Qg-- Received: from sonic.gate.mail.ne1.yahoo.com by sonic306.consmr.mail.gq1.yahoo.com with HTTP; Sun, 25 Mar 2018 19:42:20 +0000 Received: from c-76-115-7-162.hsd1.or.comcast.net (EHLO [192.168.1.25]) ([76.115.7.162]) by smtp423.mail.gq1.yahoo.com (Oath Hermes SMTP Server) with ESMTPA ID 0ef222827c5f8cc48ba70450601ddce5; Sun, 25 Mar 2018 19:32:11 +0000 (UTC) Content-Type: text/plain; charset=us-ascii 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. From: Mark Millard In-Reply-To: <20180325183421.GA74365@raichu> Date: Sun, 25 Mar 2018 12:32:09 -0700 Cc: FreeBSD Current Content-Transfer-Encoding: quoted-printable Message-Id: <44821CA4-19C2-4265-8E83-568452DF6471@yahoo.com> References: <8D9C49CB-957E-40A5-8EB0-D90D8AC02060@yahoo.com> <20180325183421.GA74365@raichu> To: Mark Johnston 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 19:42:22 -0000 On 2018-Mar-25, at 11:34 AM, Mark Johnston wrote: > 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? It reported: (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. ** DUMP FAILED (ERROR 5) ** =3D 0x5 >> 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(). 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 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". Looking at the kernel code I see: . . . 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) No KASSERTS present (a non-debug build). That leaves: if (vm_page_sbusied(m)) panic("vm_page_free: freeing busy page %p", m); and: if (m->wire_count !=3D 0) panic("vm_page_free: freeing wired page %p", m); 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)