Make sure all the bits of the LDT are initialized.
This commit is contained in:
parent
96c7034619
commit
60b28eedfd
|
@ -51,6 +51,7 @@ struct modify_ldt_s
|
||||||
unsigned int limit_in_pages : 1;
|
unsigned int limit_in_pages : 1;
|
||||||
unsigned int seg_not_present : 1;
|
unsigned int seg_not_present : 1;
|
||||||
unsigned int useable : 1;
|
unsigned int useable : 1;
|
||||||
|
unsigned int garbage : 25;
|
||||||
};
|
};
|
||||||
|
|
||||||
static inline void fill_modify_ldt_struct( struct modify_ldt_s *ptr, const LDT_ENTRY *entry )
|
static inline void fill_modify_ldt_struct( struct modify_ldt_s *ptr, const LDT_ENTRY *entry )
|
||||||
|
@ -63,6 +64,7 @@ static inline void fill_modify_ldt_struct( struct modify_ldt_s *ptr, const LDT_E
|
||||||
ptr->limit_in_pages = entry->HighWord.Bits.Granularity;
|
ptr->limit_in_pages = entry->HighWord.Bits.Granularity;
|
||||||
ptr->seg_not_present = !entry->HighWord.Bits.Pres;
|
ptr->seg_not_present = !entry->HighWord.Bits.Pres;
|
||||||
ptr->useable = entry->HighWord.Bits.Sys;
|
ptr->useable = entry->HighWord.Bits.Sys;
|
||||||
|
ptr->garbage = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline int modify_ldt( int func, struct modify_ldt_s *ptr, unsigned long count )
|
static inline int modify_ldt( int func, struct modify_ldt_s *ptr, unsigned long count )
|
||||||
|
|
Loading…
Reference in New Issue