search for: ldt_entries_per_page

Displaying 6 results from an estimated 6 matches for "ldt_entries_per_page".

2007 Apr 18
2
[PATCH 3/6] i386 virtualization - Make ldt a desc struct
...--- linux-2.6.13.orig/include/asm-i386/desc.h 2005-08-15 11:16:59.000000000 -0700 > +++ linux-2.6.13/include/asm-i386/desc.h 2005-08-15 11:19:49.000000000 -0700 > @@ -6,6 +6,9 @@ > > #define CPU_16BIT_STACK_SIZE 1024 > > +/* The number of LDT entries per page */ > +#define LDT_ENTRIES_PER_PAGE (PAGE_SIZE / LDT_ENTRY_SIZE) > + > #ifndef __ASSEMBLY__ > > #include <linux/preempt.h> > @@ -30,7 +33,7 @@ > static inline unsigned long get_desc_base(struct desc_struct *desc) > { > unsigned long base; > - base = ((desc->a >> 16) & 0x0000ffff)...
2007 Apr 18
2
[PATCH 3/6] i386 virtualization - Make ldt a desc struct
...--- linux-2.6.13.orig/include/asm-i386/desc.h 2005-08-15 11:16:59.000000000 -0700 > +++ linux-2.6.13/include/asm-i386/desc.h 2005-08-15 11:19:49.000000000 -0700 > @@ -6,6 +6,9 @@ > > #define CPU_16BIT_STACK_SIZE 1024 > > +/* The number of LDT entries per page */ > +#define LDT_ENTRIES_PER_PAGE (PAGE_SIZE / LDT_ENTRY_SIZE) > + > #ifndef __ASSEMBLY__ > > #include <linux/preempt.h> > @@ -30,7 +33,7 @@ > static inline unsigned long get_desc_base(struct desc_struct *desc) > { > unsigned long base; > - base = ((desc->a >> 16) & 0x0000ffff)...
2007 Apr 18
0
[PATCH 20/21] i386 Ldt cleanups 3
...return -ENOMEM; - if (oldsize) - memcpy(newldt, pc->ldt, oldsize*LDT_ENTRY_SIZE); + if (old_pages) + memcpy(newldt, pc->ldt, old_pages*PAGE_SIZE); oldldt = pc->ldt; - memset(newldt+oldsize*LDT_ENTRY_SIZE, 0, (mincount-oldsize)*LDT_ENTRY_SIZE); + if (reload) + memset(newldt+old_pages*LDT_ENTRIES_PER_PAGE, 0, (new_pages-old_pages)*PAGE_SIZE); pc->ldt = newldt; wmb(); - pc->size = mincount; + pc->ldt_pages = new_pages; wmb(); + /* + * If updating an active LDT, must reload LDT on all processors + * where it could be active. + */ if (reload) { #ifdef CONFIG_SMP cpumask_t mask...
2007 Apr 18
0
[PATCH 20/21] i386 Ldt cleanups 3
...return -ENOMEM; - if (oldsize) - memcpy(newldt, pc->ldt, oldsize*LDT_ENTRY_SIZE); + if (old_pages) + memcpy(newldt, pc->ldt, old_pages*PAGE_SIZE); oldldt = pc->ldt; - memset(newldt+oldsize*LDT_ENTRY_SIZE, 0, (mincount-oldsize)*LDT_ENTRY_SIZE); + if (reload) + memset(newldt+old_pages*LDT_ENTRIES_PER_PAGE, 0, (new_pages-old_pages)*PAGE_SIZE); pc->ldt = newldt; wmb(); - pc->size = mincount; + pc->ldt_pages = new_pages; wmb(); + /* + * If updating an active LDT, must reload LDT on all processors + * where it could be active. + */ if (reload) { #ifdef CONFIG_SMP cpumask_t mask...
2007 Apr 18
0
[PATCH 17/21] i386 Ldt cleanups 1
...nclude/asm-i386/ldt.h 2005-10-27 17:02:08.000000000 -0700 +++ linux-2.6.14-zach-work/include/asm-i386/ldt.h 2005-11-04 18:22:07.000000000 -0800 @@ -10,6 +10,8 @@ #define LDT_ENTRIES 8192 /* The size of each LDT entry. */ #define LDT_ENTRY_SIZE 8 +/* The number of LDT entries per page */ +#define LDT_ENTRIES_PER_PAGE (PAGE_SIZE / LDT_ENTRY_SIZE) #ifndef __ASSEMBLY__ struct user_desc {
2007 Apr 18
0
[PATCH 17/21] i386 Ldt cleanups 1
...nclude/asm-i386/ldt.h 2005-10-27 17:02:08.000000000 -0700 +++ linux-2.6.14-zach-work/include/asm-i386/ldt.h 2005-11-04 18:22:07.000000000 -0800 @@ -10,6 +10,8 @@ #define LDT_ENTRIES 8192 /* The size of each LDT entry. */ #define LDT_ENTRY_SIZE 8 +/* The number of LDT entries per page */ +#define LDT_ENTRIES_PER_PAGE (PAGE_SIZE / LDT_ENTRY_SIZE) #ifndef __ASSEMBLY__ struct user_desc {