diff options
author | John Levon <john.levon@joyent.com> | 2019-05-14 21:03:41 +0000 |
---|---|---|
committer | John Levon <john.levon@joyent.com> | 2019-05-15 11:44:34 +0000 |
commit | d980e527387fd27a9f615306897c215e07c5df8b (patch) | |
tree | b459894f29ac924e389bbb8d9461b265c5bfe330 /usr/src/uts/common/dtrace/dtrace.c | |
parent | 6853053741569b9547e774ed1593c3a260801c7f (diff) | |
download | illumos-joyent-d980e527387fd27a9f615306897c215e07c5df8b.tar.gz |
OS-7662 need a way to disable SMT
Reviewed by: Jerry Jelinek <jerry.jelinek@joyent.com>
Reviewed by: Robert Mustacchi <rm@joyent.com>
Reviewed by: Patrick Mooney <patrick.mooney@joyent.com>
Approved by: Jerry Jelinek <jerry.jelinek@joyent.com>
Diffstat (limited to 'usr/src/uts/common/dtrace/dtrace.c')
-rw-r--r-- | usr/src/uts/common/dtrace/dtrace.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/usr/src/uts/common/dtrace/dtrace.c b/usr/src/uts/common/dtrace/dtrace.c index 8d5ccdc64b..769337294b 100644 --- a/usr/src/uts/common/dtrace/dtrace.c +++ b/usr/src/uts/common/dtrace/dtrace.c @@ -21,7 +21,7 @@ /* * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved. - * Copyright (c) 2018, Joyent, Inc. + * Copyright 2019 Joyent, Inc. * Copyright (c) 2012, 2014 by Delphix. All rights reserved. */ @@ -6922,6 +6922,16 @@ dtrace_probe(dtrace_id_t id, uintptr_t arg0, uintptr_t arg1, return; cookie = dtrace_interrupt_disable(); + + /* + * Also refuse to process any probe firings that might happen on a + * disabled CPU. + */ + if (CPU->cpu_flags & CPU_DISABLED) { + dtrace_interrupt_enable(cookie); + return; + } + probe = dtrace_probes[id - 1]; cpuid = CPU->cpu_id; onintr = CPU_ON_INTR(CPU); |