diff options
author | Theo de Raadt <deraadt@cvs.openbsd.org> | 2021-10-26 16:29:50 +0000 |
---|---|---|
committer | Theo de Raadt <deraadt@cvs.openbsd.org> | 2021-10-26 16:29:50 +0000 |
commit | 794a19578ba4218f929e12ece1c56d4fa2040721 (patch) | |
tree | 3c122c2a906276ee1e679bb243d82b3fdc6b7a71 /sys/arch | |
parent | 2cad8975ccb468e7c45b2e66a6571484f87bf3c4 (diff) |
Improve unhibernate performance (30% on some machines, another upcoming diff
shows gains up to 50%) by skipping attach of irrelevant devices, which are
tagged CD_SKIPHIBERNATE in the per-driver cfdriver. In particular, usb devices
are not attached, so they don't need to detach during the suspend-unpack-resume.
New bootblocks are required (which tell the kernel it's job is unhibernate
before configure runs)
tested by various
Diffstat (limited to 'sys/arch')
-rw-r--r-- | sys/arch/amd64/amd64/vmm.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/arch/amd64/amd64/vmm.c b/sys/arch/amd64/amd64/vmm.c index 3ddd41a05d5..61cc95def08 100644 --- a/sys/arch/amd64/amd64/vmm.c +++ b/sys/arch/amd64/amd64/vmm.c @@ -1,4 +1,4 @@ -/* $OpenBSD: vmm.c,v 1.293 2021/09/13 22:16:27 dv Exp $ */ +/* $OpenBSD: vmm.c,v 1.294 2021/10/26 16:29:49 deraadt Exp $ */ /* * Copyright (c) 2014 Mike Larkin <mlarkin@openbsd.org> * @@ -260,7 +260,7 @@ const struct kmem_pa_mode vmm_kp_contig = { }; struct cfdriver vmm_cd = { - NULL, "vmm", DV_DULL + NULL, "vmm", DV_DULL, CD_SKIPHIBERNATE }; const struct cfattach vmm_ca = { |