lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Message-ID: <d4d3ef1f-3f34-40c5-88d5-ed1f35123705@gmail.com> Date: Fri, 6 Sep 2024 09:44:50 -0500 From: stuart hayes <stuart.w.hayes@...il.com> To: Nathan Chancellor <nathan@...nel.org> Cc: linux-kernel@...r.kernel.org, Greg Kroah-Hartman <gregkh@...uxfoundation.org>, "Rafael J . Wysocki" <rafael@...nel.org>, Martin Belanger <Martin.Belanger@...l.com>, Oliver O'Halloran <oohall@...il.com>, Daniel Wagner <dwagner@...e.de>, Keith Busch <kbusch@...nel.org>, Lukas Wunner <lukas@...ner.de>, David Jeffery <djeffery@...hat.com>, Jeremy Allison <jallison@....com>, Jens Axboe <axboe@...com>, Christoph Hellwig <hch@....de>, Sagi Grimberg <sagi@...mberg.me>, linux-nvme@...ts.infradead.org Subject: Re: [PATCH v8 3/4] driver core: shut down devices asynchronously On 9/5/2024 5:13 PM, Nathan Chancellor wrote: > Hi Stuart, > > On Thu, Aug 22, 2024 at 03:28:04PM -0500, Stuart Hayes wrote: >> Add code to allow asynchronous shutdown of devices, ensuring that each >> device is shut down before its parents & suppliers. >> >> Only devices with drivers that have async_shutdown_enable enabled will be >> shut down asynchronously. >> >> This can dramatically reduce system shutdown/reboot time on systems that >> have multiple devices that take many seconds to shut down (like certain >> NVMe drives). On one system tested, the shutdown time went from 11 minutes >> without this patch to 55 seconds with the patch. >> >> Signed-off-by: Stuart Hayes <stuart.w.hayes@...il.com> >> Signed-off-by: David Jeffery <djeffery@...hat.com> > > I am noticing several QEMU machines hang while shutting down after this > change as commit 8064952c6504 ("driver core: shut down devices > asynchronously") in -next. An easy test case due to the size of the > configuration: > > $ make -skj"$(nproc)" ARCH=arm64 CROSS_COMPILE=aarch64-linux- mrproper virtconfig Image.gz > > $ curl -LSs https://github.com/ClangBuiltLinux/boot-utils/releases/download/20230707-182910/arm64-rootfs.cpio.zst | zstd -d >rootfs.cpio > > $ timeout --foreground 3m \ > qemu-system-aarch64 \ > -display none \ > -nodefaults \ > -cpu max,pauth-impdef=true \ > -machine virt,gic-version=max,virtualization=true \ > -append 'console=ttyAMA0 earlycon' \ > -kernel arch/arm64/boot/Image.gz \ > -initrd rootfs.cpio \ > -m 512m \ > -serial mon:stdio > [ 0.000000] Linux version 6.11.0-rc4-00022-g8064952c6504 (nathan@...lio-3990X) (aarch64-linux-gcc (GCC) 14.2.0, GNU ld (GNU Binutils) 2.42) #1 SMP PREEMPT Thu Sep 5 15:02:42 MST 2024 > ... > The system is going down NOW! > Sent SIGTERM to all processes > Sent SIGKILL to all processes > Requesting system poweroff > qemu-system-aarch64: terminating on signal 15 from pid 2753792 (timeout) > > At the parent commit, there are the following two prints after > "Requesting system poweroff" then the machine properly shuts down: > > [ 3.411387] kvm: exiting hardware virtualization > [ 3.411741] reboot: Power down > > If there is any other information I can provide or patches that I can > test, I am more than happy to do so. > > Cheers, > Nathan Thanks, I'll take a look.
Powered by blists - more mailing lists