xref: /illumos-gate/usr/src/uts/i86pc/ml/offsets.in (revision bde334a8dbd66dfa70ce4d7fc9dcad6e1ae45fe4)
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\
25
26
27\
28\ offsets.in: input file to produce assym.h using the ctfstabs program
29\
30
31#ifndef	_GENASSYM
32#define	_GENASSYM
33#endif
34
35#define	SIZES	1
36
37#include <sys/types.h>
38#include <sys/bootsvcs.h>
39#include <sys/systm.h>
40#include <sys/sysinfo.h>
41#include <sys/user.h>
42#include <sys/thread.h>
43#include <sys/proc.h>
44#include <sys/cpuvar.h>
45#include <sys/tss.h>
46#include <sys/privregs.h>
47#include <sys/segments.h>
48#include <sys/devops.h>
49#include <sys/ddi_impldefs.h>
50#include <vm/as.h>
51#include <sys/avintr.h>
52#include <sys/pic.h>
53#include <sys/rm_platter.h>
54#include <sys/stream.h>
55#include <sys/strsubr.h>
56#include <sys/sunddi.h>
57#include <sys/modctl.h>
58#include <sys/traptrace.h>
59#include <sys/ontrap.h>
60#include <sys/lgrp.h>
61#include <sys/dtrace.h>
62#include <sys/brand.h>
63#include <sys/fastboot.h>
64#include <sys/cpr_wakecode.h>
65#include <sys/comm_page.h>
66
67proc		PROCSIZE
68	p_link
69	p_next
70	p_child
71	p_sibling
72	p_sig
73	p_flag
74	p_tlist
75	p_as
76	p_lockp
77	p_user
78	p_model
79	p_pctx
80	p_agenttp
81	p_zone
82	p_brand
83	p_brand_data
84
85_kthread	THREAD_SIZE
86	t_pcb			T_LABEL
87	t_lock
88	t_lockstat
89	t_lockp
90	t_lock_flush
91	t_kpri_req
92	t_oldspl
93	t_pri
94	t_pil
95	t_lwp
96	t_procp
97	t_link
98	t_state
99	t_mstate
100	t_preempt_lk
101	t_stk			T_STACK
102	t_swap
103	t_lwpchan.lc_wchan	T_WCHAN
104	t_flag			T_FLAGS
105	t_ctx
106	t_lofault
107	t_onfault
108	t_ontrap
109	t_cpu
110	t_lpl
111	t_bound_cpu
112	t_intr
113	t_forw
114	t_back
115	t_sig
116	t_tid
117	t_pre_sys
118	t_preempt
119	t_proc_flag
120	t_startpc
121	t_sysnum
122	t_intr_start
123	_tu._ts._t_astflag	T_ASTFLAG
124	_tu._ts._t_post_sys	T_POST_SYS
125	_tu._t_post_sys_ast	T_POST_SYS_AST
126	t_copyops
127#ifdef	__amd64
128	t_useracc
129#endif
130
131ctxop
132	save_op			CTXOP_SAVE
133
134as
135	a_hat
136
137user	USIZEBYTES
138	u_comm
139	u_signal
140
141_label_t
142	val	LABEL_VAL
143
144\#define	LABEL_PC	LABEL_VAL
145\#define	LABEL_SP	_CONST(LABEL_VAL + LABEL_VAL_INCR)
146\#define	T_PC		_CONST(T_LABEL + LABEL_PC)
147\#define	T_SP		_CONST(T_LABEL + LABEL_SP)
148
149_klwp
150	lwp_thread
151	lwp_procp
152	lwp_brand
153	lwp_eosys
154	lwp_regs
155	lwp_arg
156	lwp_ap
157	lwp_cursig
158	lwp_state
159	lwp_mstate.ms_acct	LWP_MS_ACCT
160	lwp_mstate.ms_prev	LWP_MS_PREV
161	lwp_mstate.ms_start	LWP_MS_START
162	lwp_mstate.ms_state_start LWP_MS_STATE_START
163	lwp_pcb
164	lwp_ru.sysc		LWP_RU_SYSC
165
166\#define	LWP_ACCT_USER	_CONST(LWP_MS_ACCT + _MUL(LMS_USER, LWP_MS_ACCT_INCR))
167\#define	LWP_ACCT_SYSTEM	_CONST(LWP_MS_ACCT + _MUL(LMS_SYSTEM, LWP_MS_ACCT_INCR))
168
169fpu_ctx
170	fpu_regs		FPU_CTX_FPU_REGS
171	fpu_flags		FPU_CTX_FPU_FLAGS
172	fpu_xsave_mask		FPU_CTX_FPU_XSAVE_MASK
173
174fxsave_state	FXSAVE_STATE_SIZE
175	fx_fsw			FXSAVE_STATE_FSW
176	fx_mxcsr_mask		FXSAVE_STATE_MXCSR_MASK
177
178
179autovec		AUTOVECSIZE
180	av_vector
181	av_intarg1
182	av_intarg2
183	av_ticksp
184	av_link
185	av_prilevel
186	av_dip
187
188av_head
189	avh_link
190	avh_hi_pri
191	avh_lo_pri
192
193cpu
194	cpu_id
195	cpu_flags
196	cpu_self
197	cpu_thread
198	cpu_thread_lock
199	cpu_kprunrun
200	cpu_lwp
201	cpu_fpowner
202	cpu_idle_thread
203	cpu_intr_thread
204	cpu_intr_actv
205	cpu_base_spl
206	cpu_intr_stack
207	cpu_stats.sys.cpumigrate	CPU_STATS_SYS_CPUMIGRATE
208	cpu_stats.sys.intr		CPU_STATS_SYS_INTR
209	cpu_stats.sys.intrblk		CPU_STATS_SYS_INTRBLK
210	cpu_stats.sys.syscall		CPU_STATS_SYS_SYSCALL
211	cpu_profile_pc
212	cpu_profile_upc
213	cpu_profile_pil
214	cpu_ftrace.ftd_state		CPU_FTRACE_STATE
215	cpu_mstate
216	cpu_intracct
217
218\#define	CPU_INTR_ACTV_REF	_CONST(CPU_INTR_ACTV + 2)
219
220cpu
221	cpu_m.pil_high_start	CPU_PIL_HIGH_START
222	cpu_m.intrstat		CPU_INTRSTAT
223	cpu_m.mcpu_current_hat	CPU_CURRENT_HAT
224	cpu_m.mcpu_gdt		CPU_GDT
225	cpu_m.mcpu_idt		CPU_IDT
226	cpu_m.mcpu_tss		CPU_TSS
227	cpu_m.mcpu_softinfo	CPU_SOFTINFO
228	cpu_m.mcpu_pri		CPU_PRI
229#if defined(__xpv)
230	cpu_m.mcpu_vcpu_info	CPU_VCPU_INFO
231#endif
232
233cpu
234	cpu_m.mcpu_kpti.kf_kernel_cr3	CPU_KPTI_KCR3
235	cpu_m.mcpu_kpti.kf_user_cr3	CPU_KPTI_UCR3
236	cpu_m.mcpu_kpti.kf_tr_rsp	CPU_KPTI_TR_RSP
237	cpu_m.mcpu_kpti.kf_tr_cr3	CPU_KPTI_TR_CR3
238	cpu_m.mcpu_kpti.kf_r13		CPU_KPTI_R13
239	cpu_m.mcpu_kpti.kf_r14		CPU_KPTI_R14
240	cpu_m.mcpu_kpti.kf_tr_ret_rsp	CPU_KPTI_RET_RSP
241
242	cpu_m.mcpu_kpti.kf_ss		CPU_KPTI_SS
243	cpu_m.mcpu_kpti.kf_rsp		CPU_KPTI_RSP
244	cpu_m.mcpu_kpti.kf_rflags	CPU_KPTI_RFLAGS
245	cpu_m.mcpu_kpti.kf_cs		CPU_KPTI_CS
246	cpu_m.mcpu_kpti.kf_rip		CPU_KPTI_RIP
247	cpu_m.mcpu_kpti.kf_err		CPU_KPTI_ERR
248
249	cpu_m.mcpu_pad2			CPU_KPTI_START
250	cpu_m.mcpu_pad3			CPU_KPTI_END
251
252	cpu_m.mcpu_kpti_dbg		CPU_KPTI_DBG
253
254kpti_frame
255	kf_r14		KPTI_R14
256	kf_r13		KPTI_R13
257	kf_err		KPTI_ERR
258	kf_rip		KPTI_RIP
259	kf_cs		KPTI_CS
260	kf_rflags	KPTI_RFLAGS
261	kf_rsp		KPTI_RSP
262	kf_ss		KPTI_SS
263
264	kf_tr_rsp	KPTI_TOP
265
266	kf_kernel_cr3	KPTI_KCR3
267	kf_user_cr3	KPTI_UCR3
268	kf_tr_ret_rsp	KPTI_RET_RSP
269	kf_tr_cr3	KPTI_TR_CR3
270
271	kf_tr_flag	KPTI_FLAG
272
273standard_pic
274	c_curmask
275	c_iplmask
276
277ddi_dma_impl
278	dmai_rflags
279	dmai_rdip
280
281dev_info
282	devi_ops		DEVI_DEV_OPS
283	devi_bus_ctl
284	devi_bus_dma_ctl
285	devi_bus_dma_allochdl
286	devi_bus_dma_freehdl
287	devi_bus_dma_bindhdl
288	devi_bus_dma_unbindhdl
289	devi_bus_dma_flush
290	devi_bus_dma_win
291
292dev_ops
293	devo_bus_ops		DEVI_BUS_OPS
294
295bus_ops
296	bus_ctl			OPS_CTL
297	bus_dma_map		OPS_MAP
298	bus_dma_ctl		OPS_MCTL
299	bus_dma_allochdl	OPS_ALLOCHDL
300	bus_dma_freehdl		OPS_FREEHDL
301	bus_dma_bindhdl		OPS_BINDHDL
302	bus_dma_unbindhdl	OPS_UNBINDHDL
303	bus_dma_flush		OPS_FLUSH
304	bus_dma_win		OPS_WIN
305
306sysent	SYSENT_SIZE	SYSENT_SIZE_SHIFT
307	sy_callc
308	sy_flags
309	sy_narg
310
311stdata
312	sd_lock
313
314queue
315	q_flag
316	q_next
317	q_stream
318	q_syncq
319	q_qinfo
320
321qinit
322	qi_putp
323
324syncq
325	sq_flags
326	sq_count
327	sq_lock
328	sq_wait
329
330rm_platter
331	rm_idt_lim		IDTROFF
332	rm_gdt_lim		GDTROFF
333	rm_pdbr			CR3OFF
334	rm_cpu			CPUNOFF
335	rm_cr4			CR4OFF
336	rm_cpu_halt_code	CPUHALTCODEOFF
337	rm_cpu_halted		CPUHALTEDOFF
338
339ddi_acc_impl
340	ahi_acc_attr	ACC_ATTR
341	ahi_get8	ACC_GETB
342	ahi_get16	ACC_GETW
343	ahi_get32	ACC_GETL
344	ahi_get64	ACC_GETLL
345	ahi_put8	ACC_PUTB
346	ahi_put16	ACC_PUTW
347	ahi_put32	ACC_PUTL
348	ahi_put64	ACC_PUTLL
349	ahi_rep_get8	ACC_REP_GETB
350	ahi_rep_get16	ACC_REP_GETW
351	ahi_rep_get32	ACC_REP_GETL
352	ahi_rep_get64	ACC_REP_GETLL
353	ahi_rep_put8	ACC_REP_PUTB
354	ahi_rep_put16	ACC_REP_PUTW
355	ahi_rep_put32	ACC_REP_PUTL
356	ahi_rep_put64	ACC_REP_PUTLL
357
358on_trap_data
359	ot_prot
360	ot_trap
361	ot_trampoline
362	ot_jmpbuf
363	ot_prev
364	ot_handle
365	ot_pad1
366
367trap_trace_ctl_t	__TRAPTR_SIZE TRAPTR_SIZE_SHIFT
368	ttc_next	TRAPTR_NEXT
369	ttc_first	TRAPTR_FIRST
370	ttc_limit	TRAPTR_LIMIT
371
372trap_trace_rec_t	TRAP_ENT_SIZE
373	ttr_cr2
374	ttr_info.idt_entry.vector	TTR_VECTOR
375	ttr_info.idt_entry.ipl		TTR_IPL
376	ttr_info.idt_entry.spl		TTR_SPL
377	ttr_info.idt_entry.pri		TTR_PRI
378	ttr_info.gate_entry.sysnum	TTR_SYSNUM
379	ttr_marker
380	ttr_stamp
381	ttr_curthread
382	ttr_sdepth
383	ttr_stack
384
385lgrp_ld
386	lpl_lgrpid
387
388dtrace_id_t	DTRACE_IDSIZE
389
390cpu_core	CPU_CORE_SIZE	CPU_CORE_SHIFT
391	cpuc_dtrace_flags
392	cpuc_dtrace_illval
393
394timespec	TIMESPEC_SIZE
395
396gate_desc	GATE_DESC_SIZE
397
398desctbr_t	DESCTBR_SIZE
399	dtr_limit
400	dtr_base
401
402mod_stub_info	MODS_SIZE
403	mods_func_adr	MODS_INSTFCN
404	mods_errfcn	MODS_RETFCN
405	mods_flag
406
407\#define	TRAP_TSIZE		_MUL(TRAP_ENT_SIZE, TRAPTR_NENT)
408
409copyops
410	cp_copyin
411	cp_xcopyin
412	cp_copyout
413	cp_xcopyout
414	cp_copyinstr
415	cp_copyoutstr
416	cp_fuword8
417	cp_fuword16
418	cp_fuword32
419	cp_fuword64
420	cp_suword8
421	cp_suword16
422	cp_suword32
423	cp_suword64
424	cp_physio
425
426brand
427	b_machops
428
429brand_proc_data_t
430	spd_handler
431
432fastboot_file_t
433	fb_va
434	fb_pte_list_va
435	fb_pte_list_pa
436	fb_dest_pa
437	fb_size
438	fb_next_pa
439	fb_sections
440	fb_sectcnt
441
442fastboot_section_t
443	fb_sec_offset
444	fb_sec_paddr
445	fb_sec_size
446	fb_sec_bss_size
447
448fastboot_info_t
449	fi_files
450	fi_has_pae
451	fi_pagetable_va
452	fi_pagetable_pa
453	fi_last_table_pa
454	fi_new_mbi_pa
455	fi_valid
456
457zone
458	zone_brand_data
459
460wc_cpu	WC_CPU_SIZE
461	wc_retaddr
462	wc_virtaddr
463	wc_cr0
464	wc_cr3
465	wc_cr4
466	wc_cr8
467	wc_fs
468	wc_fsbase
469	wc_gs
470	wc_gsbase
471	wc_kgsbase
472	wc_r8
473	wc_r9
474	wc_r10
475	wc_r11
476	wc_r12
477	wc_r13
478	wc_r14
479	wc_r15
480	wc_rax
481	wc_rbp
482	wc_rbx
483	wc_rcx
484	wc_rdi
485	wc_rdx
486	wc_rsi
487	wc_rsp
488	wc_gdt_limit	WC_GDT
489	wc_gdt_base
490	wc_idt_limit	WC_IDT
491	wc_idt_base
492	wc_tr
493	wc_ldt
494	wc_eflags
495	wc_ebx
496	wc_edi
497	wc_esi
498	wc_ebp
499	wc_esp
500	wc_esp
501	wc_ss
502	wc_cs
503	wc_ds
504	wc_es
505	wc_cpu_id
506	wc_saved_stack
507
508wc_wakecode
509	wc_cpu
510
511comm_page_s	COMM_PAGE_S_SIZE
512