Print this page
10597 would like a way to set NMI behavior at boot
Reviewed by: Robert Mustacchi <rm@joyent.com>
Reviewed by: Andy Fiddaman <andy@omniosce.org>
*** 21,31 ****
/*
* Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2017 by Delphix. All rights reserved.
*/
/*
! * Copyright 2018 Joyent, Inc.
*/
#ifndef _SYS_APIC_COMMON_H
#define _SYS_APIC_COMMON_H
--- 21,31 ----
/*
* Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2017 by Delphix. All rights reserved.
*/
/*
! * Copyright 2019, Joyent, Inc.
*/
#ifndef _SYS_APIC_COMMON_H
#define _SYS_APIC_COMMON_H
*** 153,163 ****
extern lock_t apic_nmi_lock;
/* use to make sure only one cpu handles the error interrupt */
extern lock_t apic_error_lock;
/* Patchable global variables. */
- extern int apic_kmdb_on_nmi; /* 0 - no, 1 - yes enter kmdb */
extern uint32_t apic_divide_reg_init; /* 0 - divide by 2 */
extern apic_intrmap_ops_t *apic_vt_ops;
#ifdef DEBUG
--- 153,162 ----
*** 200,209 ****
--- 199,217 ----
extern int apic_msix_enable;
extern uint32_t apic_get_localapicid(uint32_t cpuid);
extern uchar_t apic_get_ioapicid(uchar_t ioapicindex);
+ typedef enum nmi_action {
+ NMI_ACTION_UNSET,
+ NMI_ACTION_PANIC,
+ NMI_ACTION_IGNORE,
+ NMI_ACTION_KMDB
+ } nmi_action_t;
+
+ extern nmi_action_t nmi_action;
+
#ifdef __cplusplus
}
#endif
#endif /* _SYS_APIC_COMMON_H */