xref: /illumos-gate/usr/src/uts/i86pc/ml/offsets.in (revision 9c7f1ae01d2294b79bc57dff1f29ac9b813d6172)
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_ldt
79	p_ldt_desc
80	p_model
81	p_pctx
82	p_agenttp
83	p_zone
84	p_brand
85	p_brand_data
86
87_kthread	THREAD_SIZE
88	t_pcb			T_LABEL
89	t_lock
90	t_lockstat
91	t_lockp
92	t_lock_flush
93	t_kpri_req
94	t_oldspl
95	t_pri
96	t_pil
97	t_lwp
98	t_procp
99	t_link
100	t_state
101	t_mstate
102	t_preempt_lk
103	t_stk			T_STACK
104	t_swap
105	t_lwpchan.lc_wchan	T_WCHAN
106	t_flag			T_FLAGS
107	t_ctx
108	t_lofault
109	t_onfault
110	t_ontrap
111	t_cpu
112	t_lpl
113	t_bound_cpu
114	t_intr
115	t_forw
116	t_back
117	t_sig
118	t_tid
119	t_pre_sys
120	t_preempt
121	t_proc_flag
122	t_startpc
123	t_sysnum
124	t_intr_start
125	_tu._ts._t_astflag	T_ASTFLAG
126	_tu._ts._t_post_sys	T_POST_SYS
127	_tu._t_post_sys_ast	T_POST_SYS_AST
128	t_copyops
129#ifdef	__amd64
130	t_useracc
131#endif
132
133ctxop
134	save_op			CTXOP_SAVE
135
136as
137	a_hat
138
139user	USIZEBYTES
140	u_comm
141	u_signal
142
143_label_t
144	val	LABEL_VAL
145
146\#define	LABEL_PC	LABEL_VAL
147\#define	LABEL_SP	_CONST(LABEL_VAL + LABEL_VAL_INCR)
148\#define	T_PC		_CONST(T_LABEL + LABEL_PC)
149\#define	T_SP		_CONST(T_LABEL + LABEL_SP)
150
151_klwp
152	lwp_thread
153	lwp_procp
154	lwp_brand
155	lwp_eosys
156	lwp_regs
157	lwp_arg
158	lwp_ap
159	lwp_cursig
160	lwp_state
161	lwp_mstate.ms_acct	LWP_MS_ACCT
162	lwp_mstate.ms_prev	LWP_MS_PREV
163	lwp_mstate.ms_start	LWP_MS_START
164	lwp_mstate.ms_state_start LWP_MS_STATE_START
165	lwp_pcb
166	lwp_ru.sysc		LWP_RU_SYSC
167
168\#define	LWP_ACCT_USER	_CONST(LWP_MS_ACCT + _MUL(LMS_USER, LWP_MS_ACCT_INCR))
169\#define	LWP_ACCT_SYSTEM	_CONST(LWP_MS_ACCT + _MUL(LMS_SYSTEM, LWP_MS_ACCT_INCR))
170
171fpu_ctx
172	fpu_regs		FPU_CTX_FPU_REGS
173	fpu_flags		FPU_CTX_FPU_FLAGS
174	fpu_xsave_mask		FPU_CTX_FPU_XSAVE_MASK
175
176fxsave_state	FXSAVE_STATE_SIZE
177	fx_fsw			FXSAVE_STATE_FSW
178	fx_mxcsr_mask		FXSAVE_STATE_MXCSR_MASK
179
180
181autovec		AUTOVECSIZE
182	av_vector
183	av_intarg1
184	av_intarg2
185	av_ticksp
186	av_link
187	av_prilevel
188	av_dip
189
190av_head
191	avh_link
192	avh_hi_pri
193	avh_lo_pri
194
195cpu
196	cpu_id
197	cpu_flags
198	cpu_self
199	cpu_thread
200	cpu_thread_lock
201	cpu_kprunrun
202	cpu_lwp
203	cpu_fpowner
204	cpu_idle_thread
205	cpu_intr_thread
206	cpu_intr_actv
207	cpu_base_spl
208	cpu_intr_stack
209	cpu_stats.sys.cpumigrate	CPU_STATS_SYS_CPUMIGRATE
210	cpu_stats.sys.intr		CPU_STATS_SYS_INTR
211	cpu_stats.sys.intrblk		CPU_STATS_SYS_INTRBLK
212	cpu_stats.sys.syscall		CPU_STATS_SYS_SYSCALL
213	cpu_profile_pc
214	cpu_profile_upc
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
222cpu
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
235cpu
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
256kpti_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
275standard_pic
276	c_curmask
277	c_iplmask
278
279ddi_dma_impl
280	dmai_rflags
281	dmai_rdip
282
283dev_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
294dev_ops
295	devo_bus_ops		DEVI_BUS_OPS
296
297bus_ops
298	bus_ctl			OPS_CTL
299	bus_dma_map		OPS_MAP
300	bus_dma_ctl		OPS_MCTL
301	bus_dma_allochdl	OPS_ALLOCHDL
302	bus_dma_freehdl		OPS_FREEHDL
303	bus_dma_bindhdl		OPS_BINDHDL
304	bus_dma_unbindhdl	OPS_UNBINDHDL
305	bus_dma_flush		OPS_FLUSH
306	bus_dma_win		OPS_WIN
307
308sysent	SYSENT_SIZE	SYSENT_SIZE_SHIFT
309	sy_callc
310	sy_flags
311	sy_narg
312
313stdata
314	sd_lock
315
316queue
317	q_flag
318	q_next
319	q_stream
320	q_syncq
321	q_qinfo
322
323qinit
324	qi_putp
325
326syncq
327	sq_flags
328	sq_count
329	sq_lock
330	sq_wait
331
332rm_platter
333	rm_idt_lim		IDTROFF
334	rm_gdt_lim		GDTROFF
335	rm_pdbr			CR3OFF
336	rm_cpu			CPUNOFF
337	rm_cr4			CR4OFF
338	rm_cpu_halt_code	CPUHALTCODEOFF
339	rm_cpu_halted		CPUHALTEDOFF
340
341ddi_acc_impl
342	ahi_acc_attr	ACC_ATTR
343	ahi_get8	ACC_GETB
344	ahi_get16	ACC_GETW
345	ahi_get32	ACC_GETL
346	ahi_get64	ACC_GETLL
347	ahi_put8	ACC_PUTB
348	ahi_put16	ACC_PUTW
349	ahi_put32	ACC_PUTL
350	ahi_put64	ACC_PUTLL
351	ahi_rep_get8	ACC_REP_GETB
352	ahi_rep_get16	ACC_REP_GETW
353	ahi_rep_get32	ACC_REP_GETL
354	ahi_rep_get64	ACC_REP_GETLL
355	ahi_rep_put8	ACC_REP_PUTB
356	ahi_rep_put16	ACC_REP_PUTW
357	ahi_rep_put32	ACC_REP_PUTL
358	ahi_rep_put64	ACC_REP_PUTLL
359
360on_trap_data
361	ot_prot
362	ot_trap
363	ot_trampoline
364	ot_jmpbuf
365	ot_prev
366	ot_handle
367	ot_pad1
368
369trap_trace_ctl_t	__TRAPTR_SIZE TRAPTR_SIZE_SHIFT
370	ttc_next	TRAPTR_NEXT
371	ttc_first	TRAPTR_FIRST
372	ttc_limit	TRAPTR_LIMIT
373
374trap_trace_rec_t	TRAP_ENT_SIZE
375	ttr_cr2
376	ttr_info.idt_entry.vector	TTR_VECTOR
377	ttr_info.idt_entry.ipl		TTR_IPL
378	ttr_info.idt_entry.spl		TTR_SPL
379	ttr_info.idt_entry.pri		TTR_PRI
380	ttr_info.gate_entry.sysnum	TTR_SYSNUM
381	ttr_marker
382	ttr_stamp
383	ttr_curthread
384	ttr_sdepth
385	ttr_stack
386
387lgrp_ld
388	lpl_lgrpid
389
390dtrace_id_t	DTRACE_IDSIZE
391
392cpu_core	CPU_CORE_SIZE	CPU_CORE_SHIFT
393	cpuc_dtrace_flags
394	cpuc_dtrace_illval
395
396timespec	TIMESPEC_SIZE
397
398gate_desc	GATE_DESC_SIZE
399
400desctbr_t	DESCTBR_SIZE
401	dtr_limit
402	dtr_base
403
404mod_stub_info	MODS_SIZE
405	mods_func_adr	MODS_INSTFCN
406	mods_errfcn	MODS_RETFCN
407	mods_flag
408
409\#define	TRAP_TSIZE		_MUL(TRAP_ENT_SIZE, TRAPTR_NENT)
410
411copyops
412	cp_copyin
413	cp_xcopyin
414	cp_copyout
415	cp_xcopyout
416	cp_copyinstr
417	cp_copyoutstr
418	cp_fuword8
419	cp_fuword16
420	cp_fuword32
421	cp_fuword64
422	cp_suword8
423	cp_suword16
424	cp_suword32
425	cp_suword64
426	cp_physio
427
428brand
429	b_machops
430
431brand_proc_data_t
432	spd_handler
433
434fastboot_file_t
435	fb_va
436	fb_pte_list_va
437	fb_pte_list_pa
438	fb_dest_pa
439	fb_size
440	fb_next_pa
441	fb_sections
442	fb_sectcnt
443
444fastboot_section_t
445	fb_sec_offset
446	fb_sec_paddr
447	fb_sec_size
448	fb_sec_bss_size
449
450fastboot_info_t
451	fi_files
452	fi_has_pae
453	fi_pagetable_va
454	fi_pagetable_pa
455	fi_last_table_pa
456	fi_new_mbi_pa
457	fi_valid
458
459zone
460	zone_brand_data
461
462wc_cpu	WC_CPU_SIZE
463	wc_retaddr
464	wc_virtaddr
465	wc_cr0
466	wc_cr3
467	wc_cr4
468	wc_cr8
469	wc_fs
470	wc_fsbase
471	wc_gs
472	wc_gsbase
473	wc_kgsbase
474	wc_r8
475	wc_r9
476	wc_r10
477	wc_r11
478	wc_r12
479	wc_r13
480	wc_r14
481	wc_r15
482	wc_rax
483	wc_rbp
484	wc_rbx
485	wc_rcx
486	wc_rdi
487	wc_rdx
488	wc_rsi
489	wc_rsp
490	wc_gdt_limit	WC_GDT
491	wc_gdt_base
492	wc_idt_limit	WC_IDT
493	wc_idt_base
494	wc_tr
495	wc_ldt
496	wc_eflags
497	wc_ebx
498	wc_edi
499	wc_esi
500	wc_ebp
501	wc_esp
502	wc_esp
503	wc_ss
504	wc_cs
505	wc_ds
506	wc_es
507	wc_cpu_id
508	wc_saved_stack
509
510wc_wakecode
511	wc_cpu
512
513comm_page_s	COMM_PAGE_S_SIZE
514