Print this page
9723 provide support for VMM's GDT handling
Reviewed by: Robert Mustacchi <rm@joyent.com>
Reviewed by: Patrick Mooney <patrick.mooney@joyent.com>
Split |
Close |
Expand all |
Collapse all |
--- old/usr/src/cmd/mdb/i86pc/modules/unix/unix_sup.s
+++ new/usr/src/cmd/mdb/i86pc/modules/unix/unix_sup.s
1 1 /*
2 2 * This file and its contents are supplied under the terms of the
3 3 * Common Development and Distribution License ("CDDL"), version 1.0.
4 4 * You may only use this file in accordance with the terms of version
5 5 * 1.0 of the CDDL.
↓ open down ↓ |
5 lines elided |
↑ open up ↑ |
6 6 *
7 7 * A full copy of the text of the CDDL should have accompanied this
8 8 * source. A copy of the CDDL is also available via the Internet at
9 9 * http://www.illumos.org/license/CDDL.
10 10 */
11 11
12 12 /*
13 13 * Copyright 2018 Joyent, Inc.
14 14 */
15 15
16 -#if !defined(__lint)
17 - .file "unix_sup.s"
18 -#endif /* __lint */
19 -
20 16 /*
21 17 * Support routines for the unix kmdb module
22 18 */
23 19
24 -#include <sys/asm_linkage.h>
25 -
26 20 #if defined(__lint)
27 21
28 22 #include <sys/types.h>
29 23
30 -ulong_t
31 -kmdb_unix_getcr0(void)
32 -{ return (0); }
24 +#else
33 25
34 -ulong_t
35 -kmdb_unix_getcr3(void)
36 -{ return (0); }
26 +#include <sys/asm_linkage.h>
37 27
38 -ulong_t
39 -kmdb_unix_getcr4(void)
40 -{ return (0); }
28 + .file "unix_sup.s"
41 29
42 -#else /* __lint */
43 -
44 -#if defined(__amd64)
45 30 ENTRY(kmdb_unix_getcr0)
46 31 movq %cr0, %rax
47 32 ret
48 33 SET_SIZE(kmdb_unix_getcr0)
49 34
50 35 ENTRY(kmdb_unix_getcr2)
51 36 movq %cr2, %rax
52 37 ret
53 38 SET_SIZE(kmdb_unix_getcr2)
54 39
55 40 ENTRY(kmdb_unix_getcr3)
56 41 movq %cr3, %rax
57 42 ret
58 43 SET_SIZE(kmdb_unix_getcr3)
59 44
60 45 ENTRY(kmdb_unix_getcr4)
61 46 movq %cr4, %rax
62 47 ret
63 48 SET_SIZE(kmdb_unix_getcr4)
64 49
65 -#elif defined (__i386)
66 - ENTRY(kmdb_unix_getcr0)
67 - movl %cr0, %eax
50 + ENTRY(kmdb_unix_getgdtr)
51 + sgdt (%rdi)
68 52 ret
69 - SET_SIZE(kmdb_unix_getcr0)
53 + SET_SIZE(kmdb_unix_getgdtr)
70 54
71 - ENTRY(kmdb_unix_getcr2)
72 - movl %cr2, %eax
73 - ret
74 - SET_SIZE(kmdb_unix_getcr2)
75 -
76 - ENTRY(kmdb_unix_getcr3)
77 - movl %cr3, %eax
78 - ret
79 - SET_SIZE(kmdb_unix_getcr3)
80 -
81 - ENTRY(kmdb_unix_getcr4)
82 - movl %cr4, %eax
83 - ret
84 - SET_SIZE(kmdb_unix_getcr4)
85 -
86 -#endif /* __i386 */
87 -
88 -#endif /* __lint */
55 +#endif /* !__lint */
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX