Displaying 20 results from an estimated 28 matches for "__page_kernel".
2005 Aug 18
1
RE: [PATCH] supporting non-NX/XD capable processors onx86_64 xenlinux
...rocessors
> onx86_64 xenlinux
>
>
> On 18 Aug 2005, at 05:29, Nakajima, Jun wrote:
>
> > I don''t have particular preference, but the latter one''s change is
> > smaller, and it can fix other places (that are using the attrributes
> > derived from __PAGE_KERNEL). But the former one is cleaner to me. If
> > people agree, I can make such a patch.
>
> How does native x86/64 Linux avoid this problem? It doesn''t mask
> __PAGE_KERNEL with __supported_pte_mask, so I''m reluctant to take this
> patch. Seems to me there is some...
2011 Feb 11
1
[PATCH 1/3]: Staging: hv: Use native page allocation/free functions
...2 @@ int hv_init(void)
* Allocate the hypercall page memory
* virtaddr = osd_page_alloc(1);
*/
- virtaddr = osd_virtual_alloc_exec(PAGE_SIZE);
+#ifdef __x86_64__
+ virtaddr = __vmalloc(PAGE_SIZE, GFP_KERNEL, PAGE_KERNEL_EXEC);
+#else
+ virtaddr = __vmalloc(PAGE_SIZE, GFP_KERNEL,
+ __pgprot(__PAGE_KERNEL & (~_PAGE_NX)));
+#endif
if (!virtaddr) {
DPRINT_ERR(VMBUS,
@@ -462,10 +467,10 @@ void hv_synic_init(void *irqarg)
Cleanup:
if (hv_context.synic_event_page[cpu])
- osd_page_free(hv_context.synic_event_page[cpu], 1);
+ free_page((unsigned long)hv_context.synic_event_page[cpu]);...
2011 Feb 11
1
[PATCH 1/3]: Staging: hv: Use native page allocation/free functions
...2 @@ int hv_init(void)
* Allocate the hypercall page memory
* virtaddr = osd_page_alloc(1);
*/
- virtaddr = osd_virtual_alloc_exec(PAGE_SIZE);
+#ifdef __x86_64__
+ virtaddr = __vmalloc(PAGE_SIZE, GFP_KERNEL, PAGE_KERNEL_EXEC);
+#else
+ virtaddr = __vmalloc(PAGE_SIZE, GFP_KERNEL,
+ __pgprot(__PAGE_KERNEL & (~_PAGE_NX)));
+#endif
if (!virtaddr) {
DPRINT_ERR(VMBUS,
@@ -462,10 +467,10 @@ void hv_synic_init(void *irqarg)
Cleanup:
if (hv_context.synic_event_page[cpu])
- osd_page_free(hv_context.synic_event_page[cpu], 1);
+ free_page((unsigned long)hv_context.synic_event_page[cpu]);...
2020 Nov 03
0
[patch V3 20/37] io-mapping: Cleanup atomic iomap
...d __iomem *iomap_atomic_pfn_prot(unsigned long pfn, pgprot_t prot)
+void __iomem *__iomap_local_pfn_prot(unsigned long pfn, pgprot_t prot)
{
/*
* For non-PAT systems, translate non-WB request to UC- just in
@@ -60,8 +60,6 @@ void __iomem *iomap_atomic_pfn_prot(unsi
/* Filter out unsupported __PAGE_KERNEL* bits: */
pgprot_val(prot) &= __default_kernel_pte_mask;
- preempt_disable();
- pagefault_disable();
return (void __force __iomem *)__kmap_local_pfn_prot(pfn, prot);
}
-EXPORT_SYMBOL_GPL(iomap_atomic_pfn_prot);
+EXPORT_SYMBOL_GPL(__iomap_local_pfn_prot);
--- a/include/linux/io-mapping.h...
2011 Feb 11
1
[PATCH]: Staging: hv: Cleanup vmalloc calls
...c
+++ b/drivers/staging/hv/hv.c
@@ -230,12 +230,7 @@ int hv_init(void)
* Allocate the hypercall page memory
* virtaddr = osd_page_alloc(1);
*/
-#ifdef __x86_64__
virtaddr = __vmalloc(PAGE_SIZE, GFP_KERNEL, PAGE_KERNEL_EXEC);
-#else
- virtaddr = __vmalloc(PAGE_SIZE, GFP_KERNEL,
- __pgprot(__PAGE_KERNEL & (~_PAGE_NX)));
-#endif
if (!virtaddr) {
DPRINT_ERR(VMBUS,
--
1.5.5.6
2011 Feb 11
1
[PATCH]: Staging: hv: Cleanup vmalloc calls
...c
+++ b/drivers/staging/hv/hv.c
@@ -230,12 +230,7 @@ int hv_init(void)
* Allocate the hypercall page memory
* virtaddr = osd_page_alloc(1);
*/
-#ifdef __x86_64__
virtaddr = __vmalloc(PAGE_SIZE, GFP_KERNEL, PAGE_KERNEL_EXEC);
-#else
- virtaddr = __vmalloc(PAGE_SIZE, GFP_KERNEL,
- __pgprot(__PAGE_KERNEL & (~_PAGE_NX)));
-#endif
if (!virtaddr) {
DPRINT_ERR(VMBUS,
--
1.5.5.6
2009 Apr 16
1
NULL pointer dereference at __switch_to() ( __unlazy_fpu ) with lguest PAE patch
...uest_pages *pages)
{
pte_t *switcher_pte_page = __get_cpu_var(switcher_pte_pages);
- pgd_t switcher_pgd;
pte_t regs_pte;
unsigned long pfn;
+#ifdef CONFIG_X86_PAE
+ pmd_t switcher_pmd;
+ pmd_t *pmd_table;
+
+ switcher_pmd = pfn_pmd(__pa(switcher_pte_page) >>
+ PAGE_SHIFT, __pgprot(__PAGE_KERNEL));
+ pmd_table = __va(pgd_pfn(cpu->lg->
+ pgdirs[cpu->cpu_pgd].pgdir[SWITCHER_PGD_INDEX])
+ << PAGE_SHIFT);
+ pmd_table[SWITCHER_PMD_INDEX] = switcher_pmd;
+
+#else
+ pgd_t switcher_pgd;
+
/* Make the last PGD entry for this Guest point to the Switcher's PTE
* page...
2009 Apr 16
1
NULL pointer dereference at __switch_to() ( __unlazy_fpu ) with lguest PAE patch
...uest_pages *pages)
{
pte_t *switcher_pte_page = __get_cpu_var(switcher_pte_pages);
- pgd_t switcher_pgd;
pte_t regs_pte;
unsigned long pfn;
+#ifdef CONFIG_X86_PAE
+ pmd_t switcher_pmd;
+ pmd_t *pmd_table;
+
+ switcher_pmd = pfn_pmd(__pa(switcher_pte_page) >>
+ PAGE_SHIFT, __pgprot(__PAGE_KERNEL));
+ pmd_table = __va(pgd_pfn(cpu->lg->
+ pgdirs[cpu->cpu_pgd].pgdir[SWITCHER_PGD_INDEX])
+ << PAGE_SHIFT);
+ pmd_table[SWITCHER_PMD_INDEX] = switcher_pmd;
+
+#else
+ pgd_t switcher_pgd;
+
/* Make the last PGD entry for this Guest point to the Switcher's PTE
* page...
2009 Jun 05
1
[PATCH] lguest: PAE support
...<< PAGE_SHIFT);
+ native_set_pmd(&pmd_table[SWITCHER_PMD_INDEX], switcher_pmd);
+#else
+ pgd_t switcher_pgd;
+
/* Make the last PGD entry for this Guest point to the Switcher's PTE
* page for this CPU (with appropriate flags). */
switcher_pgd = __pgd(__pa(switcher_pte_page) | __PAGE_KERNEL_EXEC);
cpu->lg->pgdirs[cpu->cpu_pgd].pgdir[SWITCHER_PGD_INDEX] = switcher_pgd;
+#endif
/* We also change the Switcher PTE page. When we're running the Guest,
* we want the Guest's "regs" page to appear where the first Switcher
* page for this CPU is. This...
2009 Jun 05
1
[PATCH] lguest: PAE support
...<< PAGE_SHIFT);
+ native_set_pmd(&pmd_table[SWITCHER_PMD_INDEX], switcher_pmd);
+#else
+ pgd_t switcher_pgd;
+
/* Make the last PGD entry for this Guest point to the Switcher's PTE
* page for this CPU (with appropriate flags). */
switcher_pgd = __pgd(__pa(switcher_pte_page) | __PAGE_KERNEL_EXEC);
cpu->lg->pgdirs[cpu->cpu_pgd].pgdir[SWITCHER_PGD_INDEX] = switcher_pgd;
+#endif
/* We also change the Switcher PTE page. When we're running the Guest,
* we want the Guest's "regs" page to appear where the first Switcher
* page for this CPU is. This...
2011 Feb 11
0
[PATCH 3/3]:Staging: hv: Remove osd layer
...e <linux/io.h>
-#include <linux/bitops.h>
-#include <linux/slab.h>
-#include "osd.h"
-
-void *osd_virtual_alloc_exec(unsigned int size)
-{
-#ifdef __x86_64__
- return __vmalloc(size, GFP_KERNEL, PAGE_KERNEL_EXEC);
-#else
- return __vmalloc(size, GFP_KERNEL,
- __pgprot(__PAGE_KERNEL & (~_PAGE_NX)));
-#endif
-}
-
-/**
- * osd_page_alloc() - Allocate pages
- * @count: Total number of Kernel pages you want to allocate
- *
- * Tries to allocate @count number of consecutive free kernel pages.
- * And if successful, it will set the pages to 0 before returning.
- * If succes...
2011 Feb 11
0
[PATCH 3/3]:Staging: hv: Remove osd layer
...e <linux/io.h>
-#include <linux/bitops.h>
-#include <linux/slab.h>
-#include "osd.h"
-
-void *osd_virtual_alloc_exec(unsigned int size)
-{
-#ifdef __x86_64__
- return __vmalloc(size, GFP_KERNEL, PAGE_KERNEL_EXEC);
-#else
- return __vmalloc(size, GFP_KERNEL,
- __pgprot(__PAGE_KERNEL & (~_PAGE_NX)));
-#endif
-}
-
-/**
- * osd_page_alloc() - Allocate pages
- * @count: Total number of Kernel pages you want to allocate
- *
- * Tries to allocate @count number of consecutive free kernel pages.
- * And if successful, it will set the pages to 0 before returning.
- * If succes...
2007 Apr 18
1
[RFC, PATCH 19/24] i386 Vmi mmu changes
.../pgtable.h
===================================================================
--- linux-2.6.16-rc5.orig/include/asm-i386/pgtable.h 2006-03-10 12:55:05.000000000 -0800
+++ linux-2.6.16-rc5/include/asm-i386/pgtable.h 2006-03-10 15:57:08.000000000 -0800
@@ -204,12 +204,10 @@ extern unsigned long long __PAGE_KERNEL,
extern unsigned long pg0[];
#define pte_present(x) ((x).pte_low & (_PAGE_PRESENT | _PAGE_PROTNONE))
-#define pte_clear(mm,addr,xp) do { set_pte_at(mm, addr, xp, __pte(0)); } while (0)
/* To avoid harmful races, pmd_none(x) should check only the lower when PAE */
#define pmd_none(x) (!(...
2007 Apr 18
1
[RFC, PATCH 19/24] i386 Vmi mmu changes
.../pgtable.h
===================================================================
--- linux-2.6.16-rc5.orig/include/asm-i386/pgtable.h 2006-03-10 12:55:05.000000000 -0800
+++ linux-2.6.16-rc5/include/asm-i386/pgtable.h 2006-03-10 15:57:08.000000000 -0800
@@ -204,12 +204,10 @@ extern unsigned long long __PAGE_KERNEL,
extern unsigned long pg0[];
#define pte_present(x) ((x).pte_low & (_PAGE_PRESENT | _PAGE_PROTNONE))
-#define pte_clear(mm,addr,xp) do { set_pte_at(mm, addr, xp, __pte(0)); } while (0)
/* To avoid harmful races, pmd_none(x) should check only the lower when PAE */
#define pmd_none(x) (!(...
2005 Jun 15
2
x86_64 - Dom0 will not boot on EMT64
I am unable to boot Dom0 on my IBM eServer BladeCenter HS20, type 8843,
EMT64 blades. I have read reports that Dom0 boots on Opteron boxes, but
on my EMT64 blades, it does not. Has anyone else encountered this
problem on EMT64 hardware?
Here are the errors I am getting:
This is on a SLES 9 box, gcc version 3.3.3 (SuSE Linux):
kernel (hd0,0)/boot/xen.gz dom0_mem=256000 com2=19200,8n1
2007 Apr 18
17
[patch 00/17] paravirt_ops updates
Hi Andi,
This series of patches updates paravirt_ops in various ways. Some of the
changes are plain cleanups and improvements, and some add some interfaces
necessary for Xen.
The brief overview:
add-MAINTAINERS.patch - obvious
remove-CONFIG_DEBUG_PARAVIRT.patch - no longer needed
paravirt-nop.patch - mark nop operations consistently
paravirt-pte-accessors.patch - operations to pack/unpack
2007 Apr 18
17
[patch 00/17] paravirt_ops updates
Hi Andi,
This series of patches updates paravirt_ops in various ways. Some of the
changes are plain cleanups and improvements, and some add some interfaces
necessary for Xen.
The brief overview:
add-MAINTAINERS.patch - obvious
remove-CONFIG_DEBUG_PARAVIRT.patch - no longer needed
paravirt-nop.patch - mark nop operations consistently
paravirt-pte-accessors.patch - operations to pack/unpack
2007 Apr 18
23
[patch 00/20] paravirt_ops updates
Hi Andi,
Here's a repost of the paravirt_ops update series I posted the other day.
Since then, I found a few potential bugs with patching clobbering,
cleaned up and documented paravirt.h and the patching machinery.
Overview:
add-MAINTAINERS.patch
obvious
remove-CONFIG_DEBUG_PARAVIRT.patch
No longer meaningful or needed.
paravirt-nop.patch
Clean up nop paravirt_ops functions, mainly to
2007 Apr 18
23
[patch 00/20] paravirt_ops updates
Hi Andi,
Here's a repost of the paravirt_ops update series I posted the other day.
Since then, I found a few potential bugs with patching clobbering,
cleaned up and documented paravirt.h and the patching machinery.
Overview:
add-MAINTAINERS.patch
obvious
remove-CONFIG_DEBUG_PARAVIRT.patch
No longer meaningful or needed.
paravirt-nop.patch
Clean up nop paravirt_ops functions, mainly to
2020 Nov 03
45
[patch V3 00/37] mm/highmem: Preemptible variant of kmap_atomic & friends
Following up to the discussion in:
https://lore.kernel.org/r/20200914204209.256266093 at linutronix.de
and the second version of this:
https://lore.kernel.org/r/20201029221806.189523375 at linutronix.de
this series provides a preemptible variant of kmap_atomic & related
interfaces.
This is achieved by:
- Removing the RT dependency from migrate_disable/enable()
- Consolidating all