Print this page
9441 kmdb should stash %cr3 in kdiregs
Reviewed by: John Levon <john.levon@joyent.com>
8956 Implement KPTI
Reviewed by: Jerry Jelinek <jerry.jelinek@joyent.com>
Reviewed by: Robert Mustacchi <rm@joyent.com>
   1 \
   2 \ Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved.
   3 \ Copyright 2012 Garrett D'Amore <garrett@damore.org>.  All rights reserved.
   4 \ Copyright 2016 Joyent, Inc.
   5 \
   6 \ CDDL HEADER START
   7 \
   8 \ The contents of this file are subject to the terms of the
   9 \ Common Development and Distribution License (the "License").
  10 \ You may not use this file except in compliance with the License.
  11 \
  12 \ You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
  13 \ or http://www.opensolaris.org/os/licensing.
  14 \ See the License for the specific language governing permissions
  15 \ and limitations under the License.
  16 \
  17 \ When distributing Covered Code, include this CDDL HEADER in each
  18 \ file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  19 \ If applicable, add the following below this CDDL HEADER, with the
  20 \ fields enclosed by brackets "[]" replaced with your own identifying
  21 \ information: Portions Copyright [yyyy] [name of copyright owner]
  22 \
  23 \ CDDL HEADER END
  24 \


 215         cpu_profile_pil
 216         cpu_ftrace.ftd_state            CPU_FTRACE_STATE
 217         cpu_mstate
 218         cpu_intracct
 219 
 220 \#define        CPU_INTR_ACTV_REF       _CONST(CPU_INTR_ACTV + 2)
 221 
 222 cpu
 223         cpu_m.pil_high_start    CPU_PIL_HIGH_START
 224         cpu_m.intrstat          CPU_INTRSTAT
 225         cpu_m.mcpu_current_hat  CPU_CURRENT_HAT
 226         cpu_m.mcpu_gdt          CPU_GDT
 227         cpu_m.mcpu_idt          CPU_IDT
 228         cpu_m.mcpu_tss          CPU_TSS
 229         cpu_m.mcpu_softinfo     CPU_SOFTINFO
 230         cpu_m.mcpu_pri          CPU_PRI
 231 #if defined(__xpv)
 232         cpu_m.mcpu_vcpu_info    CPU_VCPU_INFO
 233 #endif
 234 








































 235 standard_pic
 236         c_curmask
 237         c_iplmask
 238 
 239 ddi_dma_impl
 240         dmai_rflags
 241         dmai_rdip
 242 
 243 dev_info
 244         devi_ops                DEVI_DEV_OPS
 245         devi_bus_ctl
 246         devi_bus_dma_ctl
 247         devi_bus_dma_allochdl
 248         devi_bus_dma_freehdl
 249         devi_bus_dma_bindhdl
 250         devi_bus_dma_unbindhdl
 251         devi_bus_dma_flush
 252         devi_bus_dma_win
 253 
 254 dev_ops


   1 \
   2 \ Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved.
   3 \ Copyright 2012 Garrett D'Amore <garrett@damore.org>.  All rights reserved.
   4 \ Copyright 2018 Joyent, Inc.
   5 \
   6 \ CDDL HEADER START
   7 \
   8 \ The contents of this file are subject to the terms of the
   9 \ Common Development and Distribution License (the "License").
  10 \ You may not use this file except in compliance with the License.
  11 \
  12 \ You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
  13 \ or http://www.opensolaris.org/os/licensing.
  14 \ See the License for the specific language governing permissions
  15 \ and limitations under the License.
  16 \
  17 \ When distributing Covered Code, include this CDDL HEADER in each
  18 \ file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  19 \ If applicable, add the following below this CDDL HEADER, with the
  20 \ fields enclosed by brackets "[]" replaced with your own identifying
  21 \ information: Portions Copyright [yyyy] [name of copyright owner]
  22 \
  23 \ CDDL HEADER END
  24 \


 215         cpu_profile_pil
 216         cpu_ftrace.ftd_state            CPU_FTRACE_STATE
 217         cpu_mstate
 218         cpu_intracct
 219 
 220 \#define        CPU_INTR_ACTV_REF       _CONST(CPU_INTR_ACTV + 2)
 221 
 222 cpu
 223         cpu_m.pil_high_start    CPU_PIL_HIGH_START
 224         cpu_m.intrstat          CPU_INTRSTAT
 225         cpu_m.mcpu_current_hat  CPU_CURRENT_HAT
 226         cpu_m.mcpu_gdt          CPU_GDT
 227         cpu_m.mcpu_idt          CPU_IDT
 228         cpu_m.mcpu_tss          CPU_TSS
 229         cpu_m.mcpu_softinfo     CPU_SOFTINFO
 230         cpu_m.mcpu_pri          CPU_PRI
 231 #if defined(__xpv)
 232         cpu_m.mcpu_vcpu_info    CPU_VCPU_INFO
 233 #endif
 234 
 235 cpu
 236         cpu_m.mcpu_kpti.kf_kernel_cr3   CPU_KPTI_KCR3
 237         cpu_m.mcpu_kpti.kf_user_cr3     CPU_KPTI_UCR3
 238         cpu_m.mcpu_kpti.kf_tr_rsp       CPU_KPTI_TR_RSP
 239         cpu_m.mcpu_kpti.kf_tr_cr3       CPU_KPTI_TR_CR3
 240         cpu_m.mcpu_kpti.kf_r13          CPU_KPTI_R13
 241         cpu_m.mcpu_kpti.kf_r14          CPU_KPTI_R14
 242         cpu_m.mcpu_kpti.kf_tr_ret_rsp   CPU_KPTI_RET_RSP
 243 
 244         cpu_m.mcpu_kpti.kf_ss           CPU_KPTI_SS
 245         cpu_m.mcpu_kpti.kf_rsp          CPU_KPTI_RSP
 246         cpu_m.mcpu_kpti.kf_rflags       CPU_KPTI_RFLAGS
 247         cpu_m.mcpu_kpti.kf_cs           CPU_KPTI_CS
 248         cpu_m.mcpu_kpti.kf_rip          CPU_KPTI_RIP
 249         cpu_m.mcpu_kpti.kf_err          CPU_KPTI_ERR
 250 
 251         cpu_m.mcpu_pad2                 CPU_KPTI_START
 252         cpu_m.mcpu_pad3                 CPU_KPTI_END
 253 
 254         cpu_m.mcpu_kpti_dbg             CPU_KPTI_DBG
 255 
 256 kpti_frame
 257         kf_r14          KPTI_R14
 258         kf_r13          KPTI_R13
 259         kf_err          KPTI_ERR
 260         kf_rip          KPTI_RIP
 261         kf_cs           KPTI_CS
 262         kf_rflags       KPTI_RFLAGS
 263         kf_rsp          KPTI_RSP
 264         kf_ss           KPTI_SS
 265 
 266         kf_tr_rsp       KPTI_TOP
 267 
 268         kf_kernel_cr3   KPTI_KCR3
 269         kf_user_cr3     KPTI_UCR3
 270         kf_tr_ret_rsp   KPTI_RET_RSP
 271         kf_tr_cr3       KPTI_TR_CR3
 272 
 273         kf_tr_flag      KPTI_FLAG
 274 
 275 standard_pic
 276         c_curmask
 277         c_iplmask
 278 
 279 ddi_dma_impl
 280         dmai_rflags
 281         dmai_rdip
 282 
 283 dev_info
 284         devi_ops                DEVI_DEV_OPS
 285         devi_bus_ctl
 286         devi_bus_dma_ctl
 287         devi_bus_dma_allochdl
 288         devi_bus_dma_freehdl
 289         devi_bus_dma_bindhdl
 290         devi_bus_dma_unbindhdl
 291         devi_bus_dma_flush
 292         devi_bus_dma_win
 293 
 294 dev_ops