Displaying 20 results from an estimated 26 matches for "__fixaddr_top".
2007 Apr 18
2
unfixing fixmap_top
Rusty Russell wrote:
> Chris: [RFC PATCH 12/33] Change __FIXADDR_TOP to leave room for the hypervisor.
> - Replace with dynamic (Geerd) patch, put in paravirt_ops structure.
>
I'm looking at this, and I'm not sure that there needs to be a void
(*set_fixmap_top)(unsigned long top) entry in paravirt ops. It seems to
me that the hypervisor's i...
2007 Apr 18
1
[RFC, PATCH 7/24] i386 Vmi memory hole
...=========
--- linux-2.6.16-rc3.orig/include/asm-i386/fixmap.h 2006-02-22 15:48:23.000000000 -0800
+++ linux-2.6.16-rc3/include/asm-i386/fixmap.h 2006-02-22 16:33:27.000000000 -0800
@@ -20,7 +20,7 @@
* Leave one empty page between vmalloc'ed areas and
* the start of the fixmap.
*/
-#define __FIXADDR_TOP 0xfffff000
+#define __FIXADDR_TOP 0xfffff000-(CONFIG_MEMORY_HOLE << 20)
#ifndef __ASSEMBLY__
#include <linux/kernel.h>
2007 Apr 18
1
[RFC, PATCH 7/24] i386 Vmi memory hole
...=========
--- linux-2.6.16-rc3.orig/include/asm-i386/fixmap.h 2006-02-22 15:48:23.000000000 -0800
+++ linux-2.6.16-rc3/include/asm-i386/fixmap.h 2006-02-22 16:33:27.000000000 -0800
@@ -20,7 +20,7 @@
* Leave one empty page between vmalloc'ed areas and
* the start of the fixmap.
*/
-#define __FIXADDR_TOP 0xfffff000
+#define __FIXADDR_TOP 0xfffff000-(CONFIG_MEMORY_HOLE << 20)
#ifndef __ASSEMBLY__
#include <linux/kernel.h>
2007 Apr 18
2
[PATCH] exec-shield style vdso move.
...nclude <linux/pagemap.h>
#include <linux/spinlock.h>
+#include <linux/module.h>
#include <asm/system.h>
#include <asm/pgtable.h>
@@ -138,6 +139,10 @@ void set_pmd_pfn(unsigned long vaddr, un
__flush_tlb_one(vaddr);
}
+static int nr_fixmaps = 0;
+unsigned long __FIXADDR_TOP = 0xfffff000;
+EXPORT_SYMBOL(__FIXADDR_TOP);
+
void __set_fixmap (enum fixed_addresses idx, unsigned long phys, pgprot_t flags)
{
unsigned long address = __fix_to_virt(idx);
@@ -147,6 +152,13 @@ void __set_fixmap (enum fixed_addresses
return;
}
set_pte_pfn(address, phys >> PAGE_SH...
2007 Apr 18
2
[PATCH] exec-shield style vdso move.
...nclude <linux/pagemap.h>
#include <linux/spinlock.h>
+#include <linux/module.h>
#include <asm/system.h>
#include <asm/pgtable.h>
@@ -138,6 +139,10 @@ void set_pmd_pfn(unsigned long vaddr, un
__flush_tlb_one(vaddr);
}
+static int nr_fixmaps = 0;
+unsigned long __FIXADDR_TOP = 0xfffff000;
+EXPORT_SYMBOL(__FIXADDR_TOP);
+
void __set_fixmap (enum fixed_addresses idx, unsigned long phys, pgprot_t flags)
{
unsigned long address = __fix_to_virt(idx);
@@ -147,6 +152,13 @@ void __set_fixmap (enum fixed_addresses
return;
}
set_pte_pfn(address, phys >> PAGE_SH...
2007 Apr 18
1
[PATCH 5/5] Create a hole in high linear address space
...=================
--- linux-2.6.13.orig/include/asm-i386/fixmap.h 2005-08-24 09:30:43.000000000 -0700
+++ linux-2.6.13/include/asm-i386/fixmap.h 2005-08-24 10:04:42.000000000 -0700
@@ -20,7 +20,7 @@
* Leave one empty page between vmalloc'ed areas and
* the start of the fixmap.
*/
-#define __FIXADDR_TOP 0xfffff000
+#define __FIXADDR_TOP (0xfffff000-(CONFIG_MEMORY_HOLE << 20))
#ifndef __ASSEMBLY__
#include <linux/kernel.h>
2007 Apr 18
1
[PATCH 5/5] Create a hole in high linear address space
...=================
--- linux-2.6.13.orig/include/asm-i386/fixmap.h 2005-08-24 09:30:43.000000000 -0700
+++ linux-2.6.13/include/asm-i386/fixmap.h 2005-08-24 10:04:42.000000000 -0700
@@ -20,7 +20,7 @@
* Leave one empty page between vmalloc'ed areas and
* the start of the fixmap.
*/
-#define __FIXADDR_TOP 0xfffff000
+#define __FIXADDR_TOP (0xfffff000-(CONFIG_MEMORY_HOLE << 20))
#ifndef __ASSEMBLY__
#include <linux/kernel.h>
2007 Apr 18
1
[PATCH, experimental] i386 Allow the fixmap to be relocated at boot time
...3D=3D=3D=3D=3D=3D
--- linux-2.6.13.orig/arch/i386/mm/init.c 2005-08-04 14:39:17.000000000 -07=
00
+++ linux-2.6.13/arch/i386/mm/init.c 2005-08-05 15:20:04.000000000 -0700
@@ -42,6 +42,10 @@
=
unsigned int __VMALLOC_RESERVE =3D 128 << 20;
=
+#ifdef CONFIG_RELOCATABLE_FIXMAP
+unsigned long __FIXADDR_TOP =3D 0;
+#endif
+
DEFINE_PER_CPU(struct mmu_gather, mmu_gathers);
unsigned long highstart_pfn, highend_pfn;
=
@@ -478,6 +482,12 @@
printk("NX (Execute Disable) protection: active\n");
#endif
=
+#ifdef CONFIG_RELOCATABLE_FIXMAP
+ if (!__FIXADDR_TOP) =
+ __FIXADDR_TOP =3D 0xffff...
2007 Apr 18
1
[PATCH, experimental] i386 Allow the fixmap to be relocated at boot time
...3D=3D=3D=3D=3D=3D
--- linux-2.6.13.orig/arch/i386/mm/init.c 2005-08-04 14:39:17.000000000 -07=
00
+++ linux-2.6.13/arch/i386/mm/init.c 2005-08-05 15:20:04.000000000 -0700
@@ -42,6 +42,10 @@
=
unsigned int __VMALLOC_RESERVE =3D 128 << 20;
=
+#ifdef CONFIG_RELOCATABLE_FIXMAP
+unsigned long __FIXADDR_TOP =3D 0;
+#endif
+
DEFINE_PER_CPU(struct mmu_gather, mmu_gathers);
unsigned long highstart_pfn, highend_pfn;
=
@@ -478,6 +482,12 @@
printk("NX (Execute Disable) protection: active\n");
#endif
=
+#ifdef CONFIG_RELOCATABLE_FIXMAP
+ if (!__FIXADDR_TOP) =
+ __FIXADDR_TOP =3D 0xffff...
2007 Apr 18
3
[patch] paravirt: VDSO page is essential
...00:06:00 2007 +1100
@@ -173,7 +173,7 @@ void reserve_top_address(unsigned long r
BUG_ON(fixmaps > 0);
printk(KERN_INFO "Reserving virtual address space above 0x%08x\n",
(int)-reserve);
-#ifdef CONFIG_COMPAT_VDSO
+#ifndef CONFIG_RESERVE_TOP
BUG_ON(reserve != 0);
#else
__FIXADDR_TOP = -reserve - PAGE_SIZE;
2007 Apr 18
3
[patch] paravirt: VDSO page is essential
...00:06:00 2007 +1100
@@ -173,7 +173,7 @@ void reserve_top_address(unsigned long r
BUG_ON(fixmaps > 0);
printk(KERN_INFO "Reserving virtual address space above 0x%08x\n",
(int)-reserve);
-#ifdef CONFIG_COMPAT_VDSO
+#ifndef CONFIG_RESERVE_TOP
BUG_ON(reserve != 0);
#else
__FIXADDR_TOP = -reserve - PAGE_SIZE;
2007 Apr 18
1
[PATCH] Gerd Hoffman's move-vsyscall-into-user-address-range patch
...nclude <linux/pagemap.h>
#include <linux/spinlock.h>
+#include <linux/module.h>
#include <asm/system.h>
#include <asm/pgtable.h>
@@ -138,6 +139,10 @@ void set_pmd_pfn(unsigned long vaddr, un
__flush_tlb_one(vaddr);
}
+static int nr_fixmaps = 0;
+unsigned long __FIXADDR_TOP = 0xfffff000;
+EXPORT_SYMBOL(__FIXADDR_TOP);
+
void __set_fixmap (enum fixed_addresses idx, unsigned long phys, pgprot_t flags)
{
unsigned long address = __fix_to_virt(idx);
@@ -147,6 +152,13 @@ void __set_fixmap (enum fixed_addresses
return;
}
set_pte_pfn(address, phys >> PAGE_SH...
2007 Apr 18
1
[PATCH] Gerd Hoffman's move-vsyscall-into-user-address-range patch
...nclude <linux/pagemap.h>
#include <linux/spinlock.h>
+#include <linux/module.h>
#include <asm/system.h>
#include <asm/pgtable.h>
@@ -138,6 +139,10 @@ void set_pmd_pfn(unsigned long vaddr, un
__flush_tlb_one(vaddr);
}
+static int nr_fixmaps = 0;
+unsigned long __FIXADDR_TOP = 0xfffff000;
+EXPORT_SYMBOL(__FIXADDR_TOP);
+
void __set_fixmap (enum fixed_addresses idx, unsigned long phys, pgprot_t flags)
{
unsigned long address = __fix_to_virt(idx);
@@ -147,6 +152,13 @@ void __set_fixmap (enum fixed_addresses
return;
}
set_pte_pfn(address, phys >> PAGE_SH...
2007 Apr 18
8
[patch 0/8] Basic infrastructure patches for a paravirtualized kernel
.../8: Put .note.* sections into a PT_NOTE segment in vmlinux
Cleanups:
1/8: Remove locally-defined ldt structure in favour of standard type
3/8: Allow a kernel to not be in ring 0
5/8: Roll all the cpuid asm into one __cpuid call
Hooks:
4/8: Replace sensitive instructions with macros
6/8: Make __FIXADDR_TOP variable to allow it to make space...
7/8: Add a bootparameter to reserve high linear address...
8/8 "Put .note.* sections into a PT_NOTE segment in vmlinux" is mostly
here to shake out problems early. It slightly changes the way the
vmlinux image is linked together, and it uses the so...
2007 Apr 18
8
[patch 0/8] Basic infrastructure patches for a paravirtualized kernel
.../8: Put .note.* sections into a PT_NOTE segment in vmlinux
Cleanups:
1/8: Remove locally-defined ldt structure in favour of standard type
3/8: Allow a kernel to not be in ring 0
5/8: Roll all the cpuid asm into one __cpuid call
Hooks:
4/8: Replace sensitive instructions with macros
6/8: Make __FIXADDR_TOP variable to allow it to make space...
7/8: Add a bootparameter to reserve high linear address...
8/8 "Put .note.* sections into a PT_NOTE segment in vmlinux" is mostly
here to shake out problems early. It slightly changes the way the
vmlinux image is linked together, and it uses the so...
2007 Apr 18
2
[RFC, PATCH] Fixup COMPAT_VDSO to work with CONFIG_PARAVIRT
...D=3D=3D
--- linux-2.6.21.orig/arch/i386/mm/pgtable.c 2007-03-06 18:51:34.000000000 =
-0800
+++ linux-2.6.21/arch/i386/mm/pgtable.c 2007-03-15 18:14:11.000000000 -0800
@@ -144,10 +144,8 @@ void set_pmd_pfn(unsigned long vaddr, un
}
=
static int fixmaps;
-#ifndef CONFIG_COMPAT_VDSO
unsigned long __FIXADDR_TOP =3D 0xfffff000;
EXPORT_SYMBOL(__FIXADDR_TOP);
-#endif
=
void __set_fixmap (enum fixed_addresses idx, unsigned long phys, pgprot_t =
flags)
{
@@ -173,12 +171,8 @@ void reserve_top_address(unsigned long r
BUG_ON(fixmaps > 0);
printk(KERN_INFO "Reserving virtual address space above 0x...
2007 Apr 18
2
[RFC, PATCH] Fixup COMPAT_VDSO to work with CONFIG_PARAVIRT
...D=3D=3D
--- linux-2.6.21.orig/arch/i386/mm/pgtable.c 2007-03-06 18:51:34.000000000 =
-0800
+++ linux-2.6.21/arch/i386/mm/pgtable.c 2007-03-15 18:14:11.000000000 -0800
@@ -144,10 +144,8 @@ void set_pmd_pfn(unsigned long vaddr, un
}
=
static int fixmaps;
-#ifndef CONFIG_COMPAT_VDSO
unsigned long __FIXADDR_TOP =3D 0xfffff000;
EXPORT_SYMBOL(__FIXADDR_TOP);
-#endif
=
void __set_fixmap (enum fixed_addresses idx, unsigned long phys, pgprot_t =
flags)
{
@@ -173,12 +171,8 @@ void reserve_top_address(unsigned long r
BUG_ON(fixmaps > 0);
printk(KERN_INFO "Reserving virtual address space above 0x...
2007 Apr 18
4
[patch 0/2] Updates to compat VDSOs
Hi Andi,
Here's a couple of patches to fix up COMPAT_VDSO:
The first is a straightforward implementation of Jan's original idea
of relocating the VDSO to match its mapped location. Unlike Jan and
Zach's version, I changed it to relocate based on the phdrs rather than
the sections; the result is pleasantly compact.
The second patch takes advantage of the fact that all the
2007 Apr 18
4
[patch 0/2] Updates to compat VDSOs
Hi Andi,
Here's a couple of patches to fix up COMPAT_VDSO:
The first is a straightforward implementation of Jan's original idea
of relocating the VDSO to match its mapped location. Unlike Jan and
Zach's version, I changed it to relocate based on the phdrs rather than
the sections; the result is pleasantly compact.
The second patch takes advantage of the fact that all the
2007 Apr 18
15
[PATCH 0 of 13] Basic infrastructure patches for a paravirtualized kernel
...ard type
4/13: Allow a kernel to not be in ring 0
6/13: Roll all the cpuid asm into one __cpuid call
9/13: Remove the read hazard from the COW path in copy_one_pte
10/13: Change pte_clear_full to a more appropriately named...
Hooks:
5/13: Replace sensitive instructions with macros
7/13: Make __FIXADDR_TOP variable to allow it to make space...
8/13: Add a bootparameter to reserve high linear address...
11/13: Add lazy MMU mode hooks for batching PTE updates
12/13: Pass the mm struct into the pgd_free code so the mm...
Probably the most subtle changes here are 11/13 and 9/13, since they
add a new...