Print this page
8956 Implement KPTI
Reviewed by: Jerry Jelinek <jerry.jelinek@joyent.com>
Reviewed by: Robert Mustacchi <rm@joyent.com>

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/intel/sys/archsystm.h
          +++ new/usr/src/uts/intel/sys/archsystm.h
↓ open down ↓ 13 lines elided ↑ open up ↑
  14   14   * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15   15   * If applicable, add the following below this CDDL HEADER, with the
  16   16   * fields enclosed by brackets "[]" replaced with your own identifying
  17   17   * information: Portions Copyright [yyyy] [name of copyright owner]
  18   18   *
  19   19   * CDDL HEADER END
  20   20   */
  21   21  
  22   22  /*
  23   23   * Copyright (c) 1993, 2010, Oracle and/or its affiliates. All rights reserved.
  24      - * Copyright 2017 Joyent, Inc.
       24 + * Copyright 2018 Joyent, Inc.
  25   25   */
  26   26  
  27   27  #ifndef _SYS_ARCHSYSTM_H
  28   28  #define _SYS_ARCHSYSTM_H
  29   29  
  30   30  /*
  31   31   * A selection of ISA-dependent interfaces
  32   32   */
  33   33  
  34   34  #include <vm/seg_enum.h>
↓ open down ↓ 38 lines elided ↑ open up ↑
  73   73  extern ulong_t intr_clear(void);
  74   74  extern ulong_t getflags(void);
  75   75  extern int interrupts_enabled(void);
  76   76  
  77   77  extern void int3(void);
  78   78  extern void int18(void);
  79   79  extern void int20(void);
  80   80  extern void int_cmci(void);
  81   81  
  82   82  #if defined(__amd64)
  83      -extern void sys_syscall();
  84      -extern void sys_syscall32();
       83 +extern void sys_syscall(), tr_sys_syscall();
       84 +extern void sys_syscall32(), tr_sys_syscall32();
  85   85  extern void sys_lcall32();
  86   86  extern void sys_syscall_int();
  87      -extern void brand_sys_syscall();
  88      -extern void brand_sys_syscall32();
  89      -extern void brand_sys_syscall_int();
       87 +extern void tr_sys_syscall_int();
       88 +extern void brand_sys_syscall(), tr_brand_sys_syscall();
       89 +extern void brand_sys_syscall32(), tr_brand_sys_syscall32();
       90 +extern void brand_sys_syscall_int(), tr_brand_sys_syscall_int();
  90   91  extern int update_sregs();
  91   92  extern void reset_sregs();
  92   93  #elif defined(__i386)
  93   94  extern void sys_call();
       95 +extern void tr_sys_call();
  94   96  extern void brand_sys_call();
  95   97  #endif
  96   98  extern void sys_sysenter();
       99 +extern void tr_sys_sysenter();
  97  100  extern void _sys_sysenter_post_swapgs();
  98  101  extern void brand_sys_sysenter();
      102 +extern void tr_brand_sys_sysenter();
  99  103  extern void _brand_sys_sysenter_post_swapgs();
 100  104  
 101  105  extern void dosyscall(void);
 102  106  
 103  107  extern void bind_hwcap(void);
 104  108  
 105  109  extern uint16_t inw(int port);
 106  110  extern uint32_t inl(int port);
 107  111  extern void outw(int port, uint16_t value);
 108  112  extern void outl(int port, uint32_t value);
↓ open down ↓ 119 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX