From owner-freebsd-current@freebsd.org Sat Apr 21 21:49:44 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 5D9C9FA6D74 for ; Sat, 21 Apr 2018 21:49:44 +0000 (UTC) (envelope-from tijl@freebsd.org) Received: from mailrelay104.isp.belgacom.be (mailrelay104.isp.belgacom.be [195.238.20.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "relay.skynet.be", Issuer "GlobalSign Organization Validation CA - SHA256 - G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id CDEC77E6DA for ; Sat, 21 Apr 2018 21:49:43 +0000 (UTC) (envelope-from tijl@freebsd.org) X-Belgacom-Dynamic: yes IronPort-PHdr: =?us-ascii?q?9a23=3ADI3JyBS03S+CazHtZ6f3rmE/t9psv+yvbD5Q0YIu?= =?us-ascii?q?jvd0So/mwa6yZhCN2/xhgRfzUJnB7Loc0qyK6/umATRIyK3CmUhKSIZLWR4BhJ?= =?us-ascii?q?detC0bK+nBN3fGKuX3ZTcxBsVIWQwt1Xi6NU9IBJS2PAWK8TW94jEIBxrwKxd+?= =?us-ascii?q?KPjrFY7OlcS30P2594HObwlSizexfb1/IA+qoQnNq8IbnZZsJqEtxxXTv3BGYf?= =?us-ascii?q?5WxWRmJVKSmxbz+MK994N9/ipTpvws6ddOXb31cKokQ7NYCi8mM30u683wqRbD?= =?us-ascii?q?VwqP6WACXWgQjxFFHhLK7BD+Xpf2ryv6qu9w0zSUMMHqUbw5Xymp4rx1QxH0li?= =?us-ascii?q?gIKz858HnWisNuiqJbvAmhrAF7z4LNfY2ZKOZycqbbcNgHR2ROQ9xRWjRPDI28?= =?us-ascii?q?cYUBEukPMuRWr4byu1QDth6+CRWwCO711jNEmmH60Ksn2OohCwHG2wkgEsoQvn?= =?us-ascii?q?TVrtX1MLoZXP6yzKnP1jXMcfZW1i376IjTbxsspu2MXbNyccrV0kQhFxnFgUuO?= =?us-ascii?q?poH4Ij2b2P4Bs2+B7+pvTO+ijXMspQ92ojiq3Mgsi4/Ji5obylDe6yp23p06Jc?= =?us-ascii?q?alR0JhZt6kCpRQuieHPIV1WsMvW2JltDsgxrEYtpO3YTIGxIo7yxLBcfCLboiF?= =?us-ascii?q?7xzlWe2MOzl3nmhld6i6hxuq9EigzfDzWdes3VZRqypFjsHMtncQ1xzP8sSHSu?= =?us-ascii?q?Vy/kOm2TuX1ADc8OVEIUExlaXFMZ4hxaQ8loYSsUTBGi/6gln5jKiRdkU/5Oeo?= =?us-ascii?q?7v7oYrP9ppOGMI90kA7+Prwvmsy5H+s4LhADUmuG9eimyrHu8lD1TK9UgvEqjK?= =?us-ascii?q?XVqo3WKMQVq6KhBg9ayIcj6xKxDze819QYmGEKLE5EeBKFi4jkIF/OIOrmAvih?= =?us-ascii?q?mFusiypky+rBPr37DZXBNmLDn6v5fbZh905czxI+zd5F551KFL4OO+nzVVLouN?= =?us-ascii?q?PEEx85KRa0zPjhCNVhzY4eV3iPDbGHP6zJql+H+/gjI+6WZI8a637BLK0f5vXt?= =?us-ascii?q?xVowklwZcKzhiYESYXu7GvljC1iebmfhhs8BV2wD6FkQVuvv3WGDUzobTHG1RK?= =?us-ascii?q?857zcgQNa6DIXHbq63jbGr5wv9GYdZMDMVQmuQGGvlIt3XE8wHbzifd4o4ymQJ?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2AZBQBTsdta/5nK8VFVB4N0Uw56KIxKj?= =?us-ascii?q?BcBAYFzMQFdkwAUgWQuhEgCgkQiNBgBAgEBAQEBAQIBaxwMgjUkAYJJAQVWIxA?= =?us-ascii?q?LDgoJJQ8qHgYThRMLqGyIPIIfCgWKH4QagxEEGIEvBIVnApdzCIM8giCIWWiLc?= =?us-ascii?q?Yk2iBwcOIFSTTAIgn6CIBeIWYVAPTABjWEpgh0BAQ?= X-IPAS-Result: =?us-ascii?q?A2AZBQBTsdta/5nK8VFVB4N0Uw56KIxKjBcBAYFzMQFdkwA?= =?us-ascii?q?UgWQuhEgCgkQiNBgBAgEBAQEBAQIBaxwMgjUkAYJJAQVWIxALDgoJJQ8qHgYTh?= =?us-ascii?q?RMLqGyIPIIfCgWKH4QagxEEGIEvBIVnApdzCIM8giCIWWiLcYk2iBwcOIFSTTA?= =?us-ascii?q?Ign6CIBeIWYVAPTABjWEpgh0BAQ?= Received: from 153.202-241-81.adsl-dyn.isp.belgacom.be (HELO kalimero.tijl.coosemans.org) ([81.241.202.153]) by relay.skynet.be with ESMTP; 21 Apr 2018 23:49:36 +0200 Received: from kalimero.tijl.coosemans.org (kalimero.tijl.coosemans.org [127.0.0.1]) by kalimero.tijl.coosemans.org (8.15.2/8.15.2) with ESMTP id w3LLnZxW004782; Sat, 21 Apr 2018 23:49:35 +0200 (CEST) (envelope-from tijl@FreeBSD.org) Date: Sat, 21 Apr 2018 23:49:34 +0200 From: Tijl Coosemans To: Rick Macklem Cc: "freebsd-current@freebsd.org" Subject: Re: i386 hangs during halt "vnodes remaining... 0 time out" Message-ID: <20180421234934.10d7dfab@kalimero.tijl.coosemans.org> In-Reply-To: References: MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="MP_/TDsO+CDIra7UXGs=vVO3NTB" 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: Sat, 21 Apr 2018 21:49:44 -0000 --MP_/TDsO+CDIra7UXGs=vVO3NTB Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Disposition: inline On Sat, 21 Apr 2018 21:09:09 +0000 Rick Macklem wrote: > With a recent head/current kernel (doesn't happen when running a Dec. > 2017 one), when I do a halt, it gets as far as: > > vnodes remaining... 0 time out > > and that's it (the time out appears several seconds after the first "0"). > With a Dec. 2017 kernel there would be several "0"s printed. > It appears that it is stuck in the first iteration of the sched_sync() > loop after it is no longer in SYNCER_RUNNING state. > > Any ideas? rick See https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=227404 I have a patch (attached) but haven't been able to test it yet. --MP_/TDsO+CDIra7UXGs=vVO3NTB Content-Type: text/x-patch Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=bufdaemon.patch Index: sys/kern/vfs_bio.c =================================================================== --- sys/kern/vfs_bio.c (revision 332165) +++ sys/kern/vfs_bio.c (working copy) @@ -791,9 +791,12 @@ bufspace_daemon(void *arg) { struct bufdomain *bd; + EVENTHANDLER_REGISTER(shutdown_pre_sync, kthread_shutdown, curthread, + SHUTDOWN_PRI_LAST); + bd = arg; for (;;) { - kproc_suspend_check(curproc); + kthread_suspend_check(); /* * Free buffers from the clean queue until we meet our @@ -3357,7 +3360,7 @@ buf_daemon() /* * This process needs to be suspended prior to shutdown sync. */ - EVENTHANDLER_REGISTER(shutdown_pre_sync, kproc_shutdown, bufdaemonproc, + EVENTHANDLER_REGISTER(shutdown_pre_sync, kthread_shutdown, curthread, SHUTDOWN_PRI_LAST); /* @@ -3381,7 +3384,7 @@ buf_daemon() bd_request = 0; mtx_unlock(&bdlock); - kproc_suspend_check(bufdaemonproc); + kthread_suspend_check(); /* * Save speedupreq for this pass and reset to capture new --MP_/TDsO+CDIra7UXGs=vVO3NTB--