xref: /illumos-gate/usr/src/uts/i86pc/ml/offsets.in (revision c0692105a8b350050833b89a3c492068ed009b09)
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 2019 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	t_useracc
128
129ctxop
130	save_op			CTXOP_SAVE
131
132as
133	a_hat
134
135user	USIZEBYTES
136	u_comm
137	u_signal
138
139_label_t
140	val	LABEL_VAL
141
142\#define	LABEL_PC	LABEL_VAL
143\#define	LABEL_SP	_CONST(LABEL_VAL + LABEL_VAL_INCR)
144\#define	T_PC		_CONST(T_LABEL + LABEL_PC)
145\#define	T_SP		_CONST(T_LABEL + LABEL_SP)
146
147_klwp
148	lwp_thread
149	lwp_procp
150	lwp_brand
151	lwp_eosys
152	lwp_regs
153	lwp_arg
154	lwp_ap
155	lwp_cursig
156	lwp_state
157	lwp_mstate.ms_acct	LWP_MS_ACCT
158	lwp_mstate.ms_prev	LWP_MS_PREV
159	lwp_mstate.ms_start	LWP_MS_START
160	lwp_mstate.ms_state_start LWP_MS_STATE_START
161	lwp_pcb
162	lwp_ru.sysc		LWP_RU_SYSC
163
164\#define	LWP_ACCT_USER	_CONST(LWP_MS_ACCT + _MUL(LMS_USER, LWP_MS_ACCT_INCR))
165\#define	LWP_ACCT_SYSTEM	_CONST(LWP_MS_ACCT + _MUL(LMS_SYSTEM, LWP_MS_ACCT_INCR))
166
167fpu_ctx
168	fpu_regs		FPU_CTX_FPU_REGS
169	fpu_flags		FPU_CTX_FPU_FLAGS
170	fpu_xsave_mask		FPU_CTX_FPU_XSAVE_MASK
171
172fxsave_state	FXSAVE_STATE_SIZE
173	fx_fsw			FXSAVE_STATE_FSW
174	fx_mxcsr_mask		FXSAVE_STATE_MXCSR_MASK
175
176
177autovec		AUTOVECSIZE
178	av_vector
179	av_intarg1
180	av_intarg2
181	av_ticksp
182	av_link
183	av_prilevel
184	av_dip
185
186av_head
187	avh_link
188	avh_hi_pri
189	avh_lo_pri
190
191cpu
192	cpu_id
193	cpu_flags
194	cpu_self
195	cpu_thread
196	cpu_thread_lock
197	cpu_kprunrun
198	cpu_lwp
199	cpu_fpowner
200	cpu_idle_thread
201	cpu_intr_thread
202	cpu_intr_actv
203	cpu_base_spl
204	cpu_intr_stack
205	cpu_stats.sys.cpumigrate	CPU_STATS_SYS_CPUMIGRATE
206	cpu_stats.sys.intr		CPU_STATS_SYS_INTR
207	cpu_stats.sys.intrblk		CPU_STATS_SYS_INTRBLK
208	cpu_stats.sys.syscall		CPU_STATS_SYS_SYSCALL
209	cpu_profile_pc
210	cpu_profile_upc
211	cpu_profile_pil
212	cpu_ftrace.ftd_state		CPU_FTRACE_STATE
213	cpu_mstate
214	cpu_intracct
215
216\#define	CPU_INTR_ACTV_REF	_CONST(CPU_INTR_ACTV + 2)
217
218cpu
219	cpu_m.pil_high_start	CPU_PIL_HIGH_START
220	cpu_m.intrstat		CPU_INTRSTAT
221	cpu_m.mcpu_current_hat	CPU_CURRENT_HAT
222	cpu_m.mcpu_gdt		CPU_GDT
223	cpu_m.mcpu_idt		CPU_IDT
224	cpu_m.mcpu_tss		CPU_TSS
225	cpu_m.mcpu_softinfo	CPU_SOFTINFO
226	cpu_m.mcpu_pri		CPU_PRI
227#if defined(__xpv)
228	cpu_m.mcpu_vcpu_info	CPU_VCPU_INFO
229#endif
230
231cpu
232	cpu_m.mcpu_kpti.kf_kernel_cr3	CPU_KPTI_KCR3
233	cpu_m.mcpu_kpti.kf_user_cr3	CPU_KPTI_UCR3
234	cpu_m.mcpu_kpti.kf_tr_rsp	CPU_KPTI_TR_RSP
235	cpu_m.mcpu_kpti.kf_tr_cr3	CPU_KPTI_TR_CR3
236	cpu_m.mcpu_kpti.kf_r13		CPU_KPTI_R13
237	cpu_m.mcpu_kpti.kf_r14		CPU_KPTI_R14
238	cpu_m.mcpu_kpti.kf_tr_ret_rsp	CPU_KPTI_RET_RSP
239
240	cpu_m.mcpu_kpti.kf_ss		CPU_KPTI_SS
241	cpu_m.mcpu_kpti.kf_rsp		CPU_KPTI_RSP
242	cpu_m.mcpu_kpti.kf_rflags	CPU_KPTI_RFLAGS
243	cpu_m.mcpu_kpti.kf_cs		CPU_KPTI_CS
244	cpu_m.mcpu_kpti.kf_rip		CPU_KPTI_RIP
245	cpu_m.mcpu_kpti.kf_err		CPU_KPTI_ERR
246
247	cpu_m.mcpu_pad2			CPU_KPTI_START
248	cpu_m.mcpu_pad3			CPU_KPTI_END
249
250	cpu_m.mcpu_kpti_dbg		CPU_KPTI_DBG
251
252kpti_frame
253	kf_r14		KPTI_R14
254	kf_r13		KPTI_R13
255	kf_err		KPTI_ERR
256	kf_rip		KPTI_RIP
257	kf_cs		KPTI_CS
258	kf_rflags	KPTI_RFLAGS
259	kf_rsp		KPTI_RSP
260	kf_ss		KPTI_SS
261
262	kf_tr_rsp	KPTI_TOP
263
264	kf_kernel_cr3	KPTI_KCR3
265	kf_user_cr3	KPTI_UCR3
266	kf_tr_ret_rsp	KPTI_RET_RSP
267	kf_tr_cr3	KPTI_TR_CR3
268
269	kf_tr_flag	KPTI_FLAG
270
271standard_pic
272	c_curmask
273	c_iplmask
274
275ddi_dma_impl
276	dmai_rflags
277	dmai_rdip
278
279dev_info
280	devi_ops		DEVI_DEV_OPS
281	devi_bus_ctl
282	devi_bus_dma_ctl
283	devi_bus_dma_allochdl
284	devi_bus_dma_freehdl
285	devi_bus_dma_bindhdl
286	devi_bus_dma_unbindhdl
287	devi_bus_dma_flush
288	devi_bus_dma_win
289
290dev_ops
291	devo_bus_ops		DEVI_BUS_OPS
292
293bus_ops
294	bus_ctl			OPS_CTL
295	bus_dma_map		OPS_MAP
296	bus_dma_ctl		OPS_MCTL
297	bus_dma_allochdl	OPS_ALLOCHDL
298	bus_dma_freehdl		OPS_FREEHDL
299	bus_dma_bindhdl		OPS_BINDHDL
300	bus_dma_unbindhdl	OPS_UNBINDHDL
301	bus_dma_flush		OPS_FLUSH
302	bus_dma_win		OPS_WIN
303
304sysent	SYSENT_SIZE	SYSENT_SIZE_SHIFT
305	sy_callc
306	sy_flags
307	sy_narg
308
309stdata
310	sd_lock
311
312queue
313	q_flag
314	q_next
315	q_stream
316	q_syncq
317	q_qinfo
318
319qinit
320	qi_putp
321
322syncq
323	sq_flags
324	sq_count
325	sq_lock
326	sq_wait
327
328rm_platter
329	rm_idt_lim		IDTROFF
330	rm_gdt_lim		GDTROFF
331	rm_pdbr			CR3OFF
332	rm_cpu			CPUNOFF
333	rm_cr4			CR4OFF
334	rm_cpu_halt_code	CPUHALTCODEOFF
335	rm_cpu_halted		CPUHALTEDOFF
336
337ddi_acc_impl
338	ahi_acc_attr	ACC_ATTR
339	ahi_get8	ACC_GETB
340	ahi_get16	ACC_GETW
341	ahi_get32	ACC_GETL
342	ahi_get64	ACC_GETLL
343	ahi_put8	ACC_PUTB
344	ahi_put16	ACC_PUTW
345	ahi_put32	ACC_PUTL
346	ahi_put64	ACC_PUTLL
347	ahi_rep_get8	ACC_REP_GETB
348	ahi_rep_get16	ACC_REP_GETW
349	ahi_rep_get32	ACC_REP_GETL
350	ahi_rep_get64	ACC_REP_GETLL
351	ahi_rep_put8	ACC_REP_PUTB
352	ahi_rep_put16	ACC_REP_PUTW
353	ahi_rep_put32	ACC_REP_PUTL
354	ahi_rep_put64	ACC_REP_PUTLL
355
356on_trap_data
357	ot_prot
358	ot_trap
359	ot_trampoline
360	ot_jmpbuf
361	ot_prev
362	ot_handle
363	ot_pad1
364
365trap_trace_ctl_t	__TRAPTR_SIZE TRAPTR_SIZE_SHIFT
366	ttc_next	TRAPTR_NEXT
367	ttc_first	TRAPTR_FIRST
368	ttc_limit	TRAPTR_LIMIT
369
370trap_trace_rec_t	TRAP_ENT_SIZE
371	ttr_cr2
372	ttr_info.idt_entry.vector	TTR_VECTOR
373	ttr_info.idt_entry.ipl		TTR_IPL
374	ttr_info.idt_entry.spl		TTR_SPL
375	ttr_info.idt_entry.pri		TTR_PRI
376	ttr_info.gate_entry.sysnum	TTR_SYSNUM
377	ttr_marker
378	ttr_stamp
379	ttr_curthread
380	ttr_sdepth
381	ttr_stack
382
383lgrp_ld
384	lpl_lgrpid
385
386dtrace_id_t	DTRACE_IDSIZE
387
388cpu_core	CPU_CORE_SIZE	CPU_CORE_SHIFT
389	cpuc_dtrace_flags
390	cpuc_dtrace_illval
391
392timespec	TIMESPEC_SIZE
393
394gate_desc	GATE_DESC_SIZE
395
396desctbr_t	DESCTBR_SIZE
397	dtr_limit
398	dtr_base
399
400mod_stub_info	MODS_SIZE
401	mods_func_adr	MODS_INSTFCN
402	mods_errfcn	MODS_RETFCN
403	mods_flag
404
405\#define	TRAP_TSIZE		_MUL(TRAP_ENT_SIZE, TRAPTR_NENT)
406
407copyops
408	cp_copyin
409	cp_xcopyin
410	cp_copyout
411	cp_xcopyout
412	cp_copyinstr
413	cp_copyoutstr
414	cp_fuword8
415	cp_fuword16
416	cp_fuword32
417	cp_fuword64
418	cp_suword8
419	cp_suword16
420	cp_suword32
421	cp_suword64
422	cp_physio
423
424brand
425	b_machops
426
427brand_proc_data_t
428	spd_handler
429
430fastboot_file_t
431	fb_va
432	fb_pte_list_va
433	fb_pte_list_pa
434	fb_dest_pa
435	fb_size
436	fb_next_pa
437	fb_sections
438	fb_sectcnt
439
440fastboot_section_t
441	fb_sec_offset
442	fb_sec_paddr
443	fb_sec_size
444	fb_sec_bss_size
445
446fastboot_info_t
447	fi_files
448	fi_has_pae
449	fi_pagetable_va
450	fi_pagetable_pa
451	fi_last_table_pa
452	fi_new_mbi_pa
453	fi_valid
454
455zone
456	zone_brand_data
457
458wc_cpu	WC_CPU_SIZE
459	wc_retaddr
460	wc_virtaddr
461	wc_cr0
462	wc_cr3
463	wc_cr4
464	wc_cr8
465	wc_fs
466	wc_fsbase
467	wc_gs
468	wc_gsbase
469	wc_kgsbase
470	wc_r8
471	wc_r9
472	wc_r10
473	wc_r11
474	wc_r12
475	wc_r13
476	wc_r14
477	wc_r15
478	wc_rax
479	wc_rbp
480	wc_rbx
481	wc_rcx
482	wc_rdi
483	wc_rdx
484	wc_rsi
485	wc_rsp
486	wc_gdt_limit	WC_GDT
487	wc_gdt_base
488	wc_idt_limit	WC_IDT
489	wc_idt_base
490	wc_tr
491	wc_ldt
492	wc_eflags
493	wc_ebx
494	wc_edi
495	wc_esi
496	wc_ebp
497	wc_esp
498	wc_esp
499	wc_ss
500	wc_cs
501	wc_ds
502	wc_es
503	wc_cpu_id
504	wc_saved_stack
505
506wc_wakecode
507	wc_cpu
508
509comm_page_s	COMM_PAGE_S_SIZE
510