Unify KGDTENTRY and KIDTENTRY between architectures as much as possible
All checks were successful
ci/woodpecker/push/build Pipeline was successful
All checks were successful
ci/woodpecker/push/build Pipeline was successful
This commit is contained in:
parent
3ee759cc27
commit
bfc9db8b6d
@ -182,57 +182,50 @@ typedef struct ALIGN(16) _CONTEXT
|
|||||||
} CONTEXT, *PCONTEXT;
|
} CONTEXT, *PCONTEXT;
|
||||||
|
|
||||||
/* Global Descriptor Table (GDT) entry union definition */
|
/* Global Descriptor Table (GDT) entry union definition */
|
||||||
typedef union _KGDTENTRY
|
typedef struct _KGDTENTRY
|
||||||
{
|
{
|
||||||
struct
|
USHORT LimitLow;
|
||||||
|
USHORT BaseLow;
|
||||||
|
union
|
||||||
{
|
{
|
||||||
USHORT LimitLow;
|
struct
|
||||||
USHORT BaseLow;
|
|
||||||
union
|
|
||||||
{
|
{
|
||||||
struct
|
UCHAR BaseMiddle;
|
||||||
{
|
UCHAR Flags1;
|
||||||
UCHAR BaseMiddle;
|
UCHAR Flags2;
|
||||||
UCHAR Flags1;
|
UCHAR BaseHigh;
|
||||||
UCHAR Flags2;
|
} Bytes;
|
||||||
UCHAR BaseHigh;
|
struct
|
||||||
} Bytes;
|
{
|
||||||
struct {
|
ULONG BaseMiddle:8;
|
||||||
ULONG BaseMiddle:8;
|
ULONG Type:5;
|
||||||
ULONG Type:5;
|
ULONG Dpl:2;
|
||||||
ULONG Dpl:2;
|
ULONG Present:1;
|
||||||
ULONG Present:1;
|
ULONG LimitHigh:4;
|
||||||
ULONG LimitHigh:4;
|
ULONG System:1;
|
||||||
ULONG System:1;
|
ULONG LongMode:1;
|
||||||
ULONG LongMode:1;
|
ULONG DefaultBig:1;
|
||||||
ULONG DefaultBig:1;
|
ULONG Granularity:1;
|
||||||
ULONG Granularity:1;
|
ULONG BaseHigh:8;
|
||||||
ULONG BaseHigh:8;
|
} Bits;
|
||||||
} Bits;
|
|
||||||
};
|
|
||||||
ULONG BaseUpper;
|
|
||||||
ULONG MustBeZero;
|
|
||||||
};
|
};
|
||||||
ULONG64 Alignment;
|
ULONG BaseUpper;
|
||||||
|
ULONG MustBeZero;
|
||||||
} KGDTENTRY, *PKGDTENTRY;
|
} KGDTENTRY, *PKGDTENTRY;
|
||||||
|
|
||||||
/* Interrupt Descriptor Table (IDT) entry union definition */
|
/* Interrupt Descriptor Table (IDT) entry union definition */
|
||||||
typedef union _KIDTENTRY
|
typedef struct _KIDTENTRY
|
||||||
{
|
{
|
||||||
struct
|
USHORT OffsetLow;
|
||||||
{
|
USHORT Selector;
|
||||||
USHORT OffsetLow;
|
USHORT IstIndex:3;
|
||||||
USHORT Selector;
|
USHORT Reserved0:5;
|
||||||
USHORT IstIndex:3;
|
USHORT Type:5;
|
||||||
USHORT Reserved0:5;
|
USHORT Dpl:2;
|
||||||
USHORT Type:5;
|
USHORT Present:1;
|
||||||
USHORT Dpl:2;
|
USHORT OffsetMiddle;
|
||||||
USHORT Present:1;
|
ULONG OffsetHigh;
|
||||||
USHORT OffsetMiddle;
|
ULONG Reserved1;
|
||||||
ULONG OffsetHigh;
|
|
||||||
ULONG Reserved1;
|
|
||||||
};
|
|
||||||
ULONG64 Alignment;
|
|
||||||
} KIDTENTRY, *PKIDTENTRY;
|
} KIDTENTRY, *PKIDTENTRY;
|
||||||
|
|
||||||
/* Task State Segment (TSS) structure definition */
|
/* Task State Segment (TSS) structure definition */
|
||||||
|
@ -22,12 +22,10 @@ typedef struct _CPUID_REGISTERS CPUID_REGISTERS, *PCPUID_REGISTERS;
|
|||||||
typedef struct _FLOATING_SAVE_AREA FLOATING_SAVE_AREA, *PFLOATING_SAVE_AREA;
|
typedef struct _FLOATING_SAVE_AREA FLOATING_SAVE_AREA, *PFLOATING_SAVE_AREA;
|
||||||
typedef struct _HARDWARE_PTE HARDWARE_PTE, *PHARDWARE_PTE;
|
typedef struct _HARDWARE_PTE HARDWARE_PTE, *PHARDWARE_PTE;
|
||||||
typedef struct _KEXCEPTION_FRAME KEXCEPTION_FRAME, *PKEXCEPTION_FRAME;
|
typedef struct _KEXCEPTION_FRAME KEXCEPTION_FRAME, *PKEXCEPTION_FRAME;
|
||||||
|
typedef struct _KGDTENTRY KGDTENTRY, *PKGDTENTRY;
|
||||||
|
typedef struct _KIDTENTRY KIDTENTRY, *PKIDTENTRY;
|
||||||
typedef struct _KSWITCH_FRAME KSWITCH_FRAME, *PKSWITCH_FRAME;
|
typedef struct _KSWITCH_FRAME KSWITCH_FRAME, *PKSWITCH_FRAME;
|
||||||
typedef struct _KTRAP_FRAME KTRAP_FRAME, *PKTRAP_FRAME;
|
typedef struct _KTRAP_FRAME KTRAP_FRAME, *PKTRAP_FRAME;
|
||||||
typedef struct _KTSS KTSS, *PKTSS;
|
typedef struct _KTSS KTSS, *PKTSS;
|
||||||
|
|
||||||
/* Architecture-related unions forward references */
|
|
||||||
typedef union _KGDTENTRY KGDTENTRY, *PKGDTENTRY;
|
|
||||||
typedef union _KIDTENTRY KIDTENTRY, *PKIDTENTRY;
|
|
||||||
|
|
||||||
#endif /* __XTDK_AMD64_XTSTRUCT_H */
|
#endif /* __XTDK_AMD64_XTSTRUCT_H */
|
||||||
|
@ -155,7 +155,7 @@ typedef struct _KGDTENTRY
|
|||||||
} Bytes;
|
} Bytes;
|
||||||
struct
|
struct
|
||||||
{
|
{
|
||||||
ULONG BaseMid:8;
|
ULONG BaseMiddle:8;
|
||||||
ULONG Type:5;
|
ULONG Type:5;
|
||||||
ULONG Dpl:2;
|
ULONG Dpl:2;
|
||||||
ULONG Present:1;
|
ULONG Present:1;
|
||||||
@ -166,7 +166,7 @@ typedef struct _KGDTENTRY
|
|||||||
ULONG Granularity:1;
|
ULONG Granularity:1;
|
||||||
ULONG BaseHigh:8;
|
ULONG BaseHigh:8;
|
||||||
} Bits;
|
} Bits;
|
||||||
} HighWord;
|
};
|
||||||
} KGDTENTRY, *PKGDTENTRY;
|
} KGDTENTRY, *PKGDTENTRY;
|
||||||
|
|
||||||
/* Interrupt Descriptor Table (IDT) entry structure definition */
|
/* Interrupt Descriptor Table (IDT) entry structure definition */
|
||||||
|
Loading…
Reference in New Issue
Block a user