From 3d11d69fe7cd386923ba3ef27c5f69e938111ff6 Mon Sep 17 00:00:00 2001 From: Mike Larkin Date: Sat, 26 Jun 2010 15:56:41 +0000 Subject: Don't try to halt an AP if holding sched_lock since that causes hangs on resume. Fail early if this is detected, so that we have a chance to catch it. ok kettenis@, deraadt@ --- sys/arch/amd64/amd64/ipifuncs.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'sys/arch/amd64') diff --git a/sys/arch/amd64/amd64/ipifuncs.c b/sys/arch/amd64/amd64/ipifuncs.c index d8615ef350b..73fed196631 100644 --- a/sys/arch/amd64/amd64/ipifuncs.c +++ b/sys/arch/amd64/amd64/ipifuncs.c @@ -1,4 +1,4 @@ -/* $OpenBSD: ipifuncs.c,v 1.11 2010/04/07 06:33:06 kettenis Exp $ */ +/* $OpenBSD: ipifuncs.c,v 1.12 2010/06/26 15:56:40 mlarkin Exp $ */ /* $NetBSD: ipifuncs.c,v 1.1 2003/04/26 18:39:28 fvdl Exp $ */ /*- @@ -97,6 +97,7 @@ x86_64_ipi_nop(struct cpu_info *ci) void x86_64_ipi_halt(struct cpu_info *ci) { + SCHED_ASSERT_UNLOCKED(); disable_intr(); ci->ci_flags &= ~CPUF_RUNNING; wbinvd(); -- cgit v1.2.3