From owner-freebsd-current@freebsd.org Sun Apr 22 13:10:29 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 1C6A0F8BD8E for ; Sun, 22 Apr 2018 13:10:29 +0000 (UTC) (envelope-from rmacklem@uoguelph.ca) Received: from CAN01-QB1-obe.outbound.protection.outlook.com (mail-eopbgr660079.outbound.protection.outlook.com [40.107.66.79]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (Client CN "mail.protection.outlook.com", Issuer "Microsoft IT TLS CA 4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 9EFB36CD9D; Sun, 22 Apr 2018 13:10:28 +0000 (UTC) (envelope-from rmacklem@uoguelph.ca) Received: from YQBPR0101MB1042.CANPRD01.PROD.OUTLOOK.COM (52.132.66.153) by YQBPR0101MB1249.CANPRD01.PROD.OUTLOOK.COM (52.132.68.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.696.12; Sun, 22 Apr 2018 13:10:27 +0000 Received: from YQBPR0101MB1042.CANPRD01.PROD.OUTLOOK.COM ([fe80::893c:efc2:d71f:945a]) by YQBPR0101MB1042.CANPRD01.PROD.OUTLOOK.COM ([fe80::893c:efc2:d71f:945a%13]) with mapi id 15.20.0696.017; Sun, 22 Apr 2018 13:10:27 +0000 From: Rick Macklem To: Konstantin Belousov , Tijl Coosemans CC: "freebsd-current@freebsd.org" Subject: Re: i386 hangs during halt "vnodes remaining... 0 time out" Thread-Topic: i386 hangs during halt "vnodes remaining... 0 time out" Thread-Index: AQHT2bR4fPVXlRRgnkynIGzjEjWSm6QLwdwAgADvGoCAABBIvg== Date: Sun, 22 Apr 2018 13:10:27 +0000 Message-ID: References: <20180421234934.10d7dfab@kalimero.tijl.coosemans.org>, <20180422120521.GS6887@kib.kiev.ua> In-Reply-To: <20180422120521.GS6887@kib.kiev.ua> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=rmacklem@uoguelph.ca; x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; YQBPR0101MB1249; 7:Yn/SdKEVl4kiDRDT4UjniuOj2sPltNZ9YTvLzeuVeusnxzmrxHLt/oz0HMWuoaoddGfpow7f39HLKhNmP7ZUpe8RfDId6ku2+4vd4GXO3YE20SbJRfOupMCiIoMOGYe4CWM8vw+zKrxLm6QqV4z7vESrHGVtZ6xi8urwnSO3jkvnXTqFvWNjAsc+YIYBEzrHrZQ8mNlefiDQFufx+Sr+nQDLnWL1JhA13TbhlCXRGmqvJaJhWEJQMzlxn1xwZm40 x-ms-exchange-antispam-srfa-diagnostics: SOS; x-microsoft-antispam: UriScan:(80341031608730); BCL:0; PCL:0; RULEID:(7020095)(4652020)(8989080)(5600026)(4534165)(4627221)(201703031133081)(201702281549075)(8990040)(2017052603328)(7153060)(7193020); SRVR:YQBPR0101MB1249; x-ms-traffictypediagnostic: YQBPR0101MB1249: x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(80341031608730); x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(6040522)(2401047)(8121501046)(5005006)(93006095)(93001095)(3231232)(944501410)(52105095)(3002001)(10201501046)(6041310)(201703131423095)(201702281529075)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(20161123558120)(20161123562045)(6072148)(201708071742011); SRVR:YQBPR0101MB1249; BCL:0; PCL:0; RULEID:; SRVR:YQBPR0101MB1249; x-forefront-prvs: 0650714AAA x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(366004)(346002)(396003)(39380400002)(376002)(39840400004)(99286004)(478600001)(39060400002)(4326008)(8676002)(81166006)(186003)(33656002)(102836004)(76176011)(59450400001)(7696005)(6506007)(5890100001)(55016002)(25786009)(5250100002)(2900100001)(9686003)(6306002)(229853002)(6246003)(53936002)(14454004)(2906002)(3660700001)(6436002)(74482002)(476003)(446003)(74316002)(8936002)(11346002)(5660300001)(786003)(966005)(316002)(110136005)(3280700002)(86362001)(305945005)(26005); DIR:OUT; SFP:1101; SCL:1; SRVR:YQBPR0101MB1249; H:YQBPR0101MB1042.CANPRD01.PROD.OUTLOOK.COM; FPR:; SPF:None; LANG:en; MLV:ovrnspm; PTR:InfoNoRecords; received-spf: None (protection.outlook.com: uoguelph.ca does not designate permitted sender hosts) x-microsoft-antispam-message-info: IwLv94Zzl3vMpOLI50TpteZi+hDRXHD2wIyisvSFin7NYKXR01ywyqJzrBtLluR9vCEYI8v+tKPHLdrWvCtryYhE0d6Cw/PxMb/+SXzDvvCHxn56XRl3OkXjGT5Du8fqqkSDt6YohhVk4C6TLOAvAnGsJhH1rnAM2vEkjNvUd74roUUTrX0z3sRYo5yU/D3J spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: d79fab05-c7f5-420c-dcae-08d5a8526a95 X-OriginatorOrg: uoguelph.ca X-MS-Exchange-CrossTenant-Network-Message-Id: d79fab05-c7f5-420c-dcae-08d5a8526a95 X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Apr 2018 13:10:27.1002 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: be62a12b-2cad-49a1-a5fa-85f4f3156a7d X-MS-Exchange-Transport-CrossTenantHeadersStamped: YQBPR0101MB1249 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, 22 Apr 2018 13:10:29 -0000 Konstantin Belousov wrote: >On Sat, Apr 21, 2018 at 11:49:34PM +0200, Tijl Coosemans wrote: >> On Sat, 21 Apr 2018 21:09:09 +0000 Rick Macklem w= rote: >> > 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=3D227404 >> I have a patch (attached) but haven't been able to test it yet. > >> Index: sys/kern/vfs_bio.c >> >=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >> --- 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, curthre= ad, >> + SHUTDOWN_PRI_LAST); >> + >> bd =3D 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, bufdaemon= proc, >> + EVENTHANDLER_REGISTER(shutdown_pre_sync, kthread_shutdown, curthre= ad, >> SHUTDOWN_PRI_LAST); >> >> /* >> @@ -3381,7 +3384,7 @@ buf_daemon() >> bd_request =3D 0; >> mtx_unlock(&bdlock); >> >> - kproc_suspend_check(bufdaemonproc); >> + kthread_suspend_check(); >> >> /* >> * Save speedupreq for this pass and reset to capture new >This looks fine. For some reason, this thread became two threads, so I'll reply to this one = as well. The patch seems to work fine for me. Thanks, rick=