61 lines
		
	
	
		
			661 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			661 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SPDX-License-Identifier: GPL-2.0 */
 | |
| #ifndef __TSS_SEGMENT_H
 | |
| #define __TSS_SEGMENT_H
 | |
| 
 | |
| struct tss_segment_32 {
 | |
| 	u32 prev_task_link;
 | |
| 	u32 esp0;
 | |
| 	u32 ss0;
 | |
| 	u32 esp1;
 | |
| 	u32 ss1;
 | |
| 	u32 esp2;
 | |
| 	u32 ss2;
 | |
| 	u32 cr3;
 | |
| 	u32 eip;
 | |
| 	u32 eflags;
 | |
| 	u32 eax;
 | |
| 	u32 ecx;
 | |
| 	u32 edx;
 | |
| 	u32 ebx;
 | |
| 	u32 esp;
 | |
| 	u32 ebp;
 | |
| 	u32 esi;
 | |
| 	u32 edi;
 | |
| 	u32 es;
 | |
| 	u32 cs;
 | |
| 	u32 ss;
 | |
| 	u32 ds;
 | |
| 	u32 fs;
 | |
| 	u32 gs;
 | |
| 	u32 ldt_selector;
 | |
| 	u16 t;
 | |
| 	u16 io_map;
 | |
| };
 | |
| 
 | |
| struct tss_segment_16 {
 | |
| 	u16 prev_task_link;
 | |
| 	u16 sp0;
 | |
| 	u16 ss0;
 | |
| 	u16 sp1;
 | |
| 	u16 ss1;
 | |
| 	u16 sp2;
 | |
| 	u16 ss2;
 | |
| 	u16 ip;
 | |
| 	u16 flag;
 | |
| 	u16 ax;
 | |
| 	u16 cx;
 | |
| 	u16 dx;
 | |
| 	u16 bx;
 | |
| 	u16 sp;
 | |
| 	u16 bp;
 | |
| 	u16 si;
 | |
| 	u16 di;
 | |
| 	u16 es;
 | |
| 	u16 cs;
 | |
| 	u16 ss;
 | |
| 	u16 ds;
 | |
| 	u16 ldt;
 | |
| };
 | |
| 
 | |
| #endif
 | 
