Deleted Added
full compact
x86_var.h (361561) x86_var.h (362383)
1/*-
2 * Copyright (c) 1995 Bruce D. Evans.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 12 unchanged lines hidden (view full) ---

21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
27 * SUCH DAMAGE.
28 *
1/*-
2 * Copyright (c) 1995 Bruce D. Evans.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 12 unchanged lines hidden (view full) ---

21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
27 * SUCH DAMAGE.
28 *
29 * $FreeBSD: stable/11/sys/x86/include/x86_var.h 361561 2020-05-27 18:55:24Z kib $
29 * $FreeBSD: stable/11/sys/x86/include/x86_var.h 362383 2020-06-19 13:48:23Z kib $
30 */
31
32#ifndef _X86_X86_VAR_H_
33#define _X86_X86_VAR_H_
34
35/*
36 * Miscellaneous machine-dependent declarations.
37 */

--- 44 unchanged lines hidden (view full) ---

82extern int use_xsave;
83extern uint64_t xsave_mask;
84extern int pti;
85extern int hw_ibrs_ibpb_active;
86extern int hw_mds_disable;
87extern int hw_ssb_active;
88extern int x86_taa_enable;
89extern int cpu_flush_rsb_ctxsw;
30 */
31
32#ifndef _X86_X86_VAR_H_
33#define _X86_X86_VAR_H_
34
35/*
36 * Miscellaneous machine-dependent declarations.
37 */

--- 44 unchanged lines hidden (view full) ---

82extern int use_xsave;
83extern uint64_t xsave_mask;
84extern int pti;
85extern int hw_ibrs_ibpb_active;
86extern int hw_mds_disable;
87extern int hw_ssb_active;
88extern int x86_taa_enable;
89extern int cpu_flush_rsb_ctxsw;
90extern int x86_rngds_mitg_enable;
90
91struct pcb;
92struct thread;
93struct reg;
94struct fpreg;
95struct dbreg;
96struct dumperinfo;
97struct trapframe;

--- 37 unchanged lines hidden (view full) ---

135int is_physical_memory(vm_paddr_t addr);
136int isa_nmi(int cd);
137void handle_ibrs_entry(void);
138void handle_ibrs_exit(void);
139void hw_ibrs_recalculate(bool all_cpus);
140void hw_mds_recalculate(void);
141void hw_ssb_recalculate(bool all_cpus);
142void x86_taa_recalculate(void);
91
92struct pcb;
93struct thread;
94struct reg;
95struct fpreg;
96struct dbreg;
97struct dumperinfo;
98struct trapframe;

--- 37 unchanged lines hidden (view full) ---

136int is_physical_memory(vm_paddr_t addr);
137int isa_nmi(int cd);
138void handle_ibrs_entry(void);
139void handle_ibrs_exit(void);
140void hw_ibrs_recalculate(bool all_cpus);
141void hw_mds_recalculate(void);
142void hw_ssb_recalculate(bool all_cpus);
143void x86_taa_recalculate(void);
144void x86_rngds_mitg_recalculate(bool all_cpus);
143void nmi_call_kdb(u_int cpu, u_int type, struct trapframe *frame);
144void nmi_call_kdb_smp(u_int type, struct trapframe *frame);
145void nmi_handle_intr(u_int type, struct trapframe *frame);
146void pagecopy(void *from, void *to);
147void printcpuinfo(void);
148int pti_get_default(void);
149int user_dbreg_trap(register_t dr6);
150int minidumpsys(struct dumperinfo *);
151struct pcb *get_pcb_td(struct thread *td);
152
153#define MSR_OP_ANDNOT 0x00000001
154#define MSR_OP_OR 0x00000002
155#define MSR_OP_WRITE 0x00000003
156#define MSR_OP_LOCAL 0x10000000
157#define MSR_OP_SCHED 0x20000000
158#define MSR_OP_RENDEZVOUS 0x30000000
159void x86_msr_op(u_int msr, u_int op, uint64_t arg1);
160
161#endif
145void nmi_call_kdb(u_int cpu, u_int type, struct trapframe *frame);
146void nmi_call_kdb_smp(u_int type, struct trapframe *frame);
147void nmi_handle_intr(u_int type, struct trapframe *frame);
148void pagecopy(void *from, void *to);
149void printcpuinfo(void);
150int pti_get_default(void);
151int user_dbreg_trap(register_t dr6);
152int minidumpsys(struct dumperinfo *);
153struct pcb *get_pcb_td(struct thread *td);
154
155#define MSR_OP_ANDNOT 0x00000001
156#define MSR_OP_OR 0x00000002
157#define MSR_OP_WRITE 0x00000003
158#define MSR_OP_LOCAL 0x10000000
159#define MSR_OP_SCHED 0x20000000
160#define MSR_OP_RENDEZVOUS 0x30000000
161void x86_msr_op(u_int msr, u_int op, uint64_t arg1);
162
163#endif