Login
[x]
Log in using an account from:
Fedora Account System
Red Hat Associate
Red Hat Customer
Or login using a Red Hat Bugzilla account
Forgot Password
Login:
Hide Forgot
Create an Account
Red Hat Bugzilla – Attachment 159394 Details for
Bug 233543
Random panics running as a paravirtualized guest of RHEL 5.0
[?]
New
Simple Search
Advanced Search
My Links
Browse
Requests
Reports
Current State
Search
Tabular reports
Graphical reports
Duplicates
Other Reports
User Changes
Plotly Reports
Bug Status
Bug Severity
Non-Defaults
|
Product Dashboard
Help
Page Help!
Bug Writing Guidelines
What's new
Browser Support Policy
5.0.4.rh83 Release notes
FAQ
Guides index
User guide
Web Services
Contact
Legal
This site requires JavaScript to be enabled to function correctly, please enable it.
[patch]
Fix for the > 4GB issue
linux-2.6.9-xen-fix-4GB-notes.patch (text/plain), 3.02 KB, created by
Chris Lalancette
on 2007-07-17 01:18:03 UTC
(
hide
)
Description:
Fix for the > 4GB issue
Filename:
MIME Type:
Creator:
Chris Lalancette
Created:
2007-07-17 01:18:03 UTC
Size:
3.02 KB
patch
obsolete
>diff -urp kernel-2.6.9/linux-2.6.9/arch/i386/kernel/head-xen.S kernel-2.6.9.working/linux-2.6.9/arch/i386/kernel/head-xen.S >--- kernel-2.6.9/linux-2.6.9/arch/i386/kernel/head-xen.S 2007-07-16 17:16:00.000000000 -0400 >+++ kernel-2.6.9.working/linux-2.6.9/arch/i386/kernel/head-xen.S 2007-07-16 17:14:30.000000000 -0400 >@@ -23,6 +22,8 @@ > #define X86_CAPABILITY new_cpu_data+CPUINFO_x86_capability > #define X86_VENDOR_ID new_cpu_data+CPUINFO_x86_vendor_id > >+#define VIRT_ENTRY_OFFSET 0x0 >+.org VIRT_ENTRY_OFFSET > ENTRY(startup_32) > movl %esi,xen_start_info > cld >@@ -161,6 +162,10 @@ ENTRY(cpu_gdt_table) > .ascii ",XEN_VER=xen-3.0" > .ascii ",VIRT_BASE=0x" > utoa __PAGE_OFFSET >+ .ascii ",ELF_PADDR_OFFSET=0x" >+ utoa __PAGE_OFFSET >+ .ascii ",VIRT_ENTRY=0x" >+ utoa (__PAGE_OFFSET + __PHYSICAL_START + VIRT_ENTRY_OFFSET) > .ascii ",HYPERCALL_PAGE=0x" > utoa ((__PHYSICAL_START+HYPERCALL_PAGE_OFFSET)>>PAGE_SHIFT) > .ascii ",FEATURES=writable_page_tables" >@@ -169,7 +174,7 @@ ENTRY(cpu_gdt_table) > .ascii "|pae_pgdir_above_4gb" > .ascii "|supervisor_mode_kernel" > #ifdef CONFIG_X86_PAE >- .ascii ",PAE=yes" >+ .ascii ",PAE=yes[extended-cr3]" > #else > .ascii ",PAE=no" > #endif >diff -urp kernel-2.6.9/linux-2.6.9/arch/i386/mm/pgtable-xen.c kernel-2.6.9.working/linux-2.6.9/arch/i386/mm/pgtable-xen.c >--- kernel-2.6.9/linux-2.6.9/arch/i386/mm/pgtable-xen.c 2007-07-16 17:16:00.000000000 -0400 >+++ kernel-2.6.9.working/linux-2.6.9/arch/i386/mm/pgtable-xen.c 2007-07-16 16:56:54.000000000 -0400 >@@ -441,6 +441,8 @@ pgd_t *pgd_alloc(struct mm_struct *mm) > > spin_unlock_irqrestore(&pgd_lock, flags); > >+ kfree(pmd); >+ > return pgd; > out_oom: > if (HAVE_SHARED_KERNEL_PMD) { >diff -urp kernel-2.6.9/linux-2.6.9/include/asm-i386/mach-xen/asm/processor.h kernel-2.6.9.working/linux-2.6.9/include/asm-i386/mach-xen/asm/processor.h >--- kernel-2.6.9/linux-2.6.9/include/asm-i386/mach-xen/asm/processor.h 2007-07-16 17:16:00.000000000 -0400 >+++ kernel-2.6.9.working/linux-2.6.9/include/asm-i386/mach-xen/asm/processor.h 2007-07-16 16:56:54.000000000 -0400 >@@ -272,8 +272,7 @@ static inline unsigned int cpuid_edx(uns > return edx; > } > >-#define load_cr3(pgdir) \ >- asm volatile("movl %0,%%cr3": :"r" (__pa(pgdir))) >+#define load_cr3(pgdir) write_cr3(__pa(pgdir)) > > > /* >diff -urp kernel-2.6.9/linux-2.6.9/include/asm-i386/mach-xen/asm/system.h kernel-2.6.9.working/linux-2.6.9/include/asm-i386/mach-xen/asm/system.h >--- kernel-2.6.9/linux-2.6.9/include/asm-i386/mach-xen/asm/system.h 2007-07-16 17:16:00.000000000 -0400 >+++ kernel-2.6.9.working/linux-2.6.9/include/asm-i386/mach-xen/asm/system.h 2007-07-16 16:56:54.000000000 -0400 >@@ -113,7 +113,13 @@ static inline unsigned long _get_base(ch > __asm__ ( \ > "movl %%cr3,%0\n\t" \ > :"=r" (__dummy)); \ >- machine_to_phys(__dummy); \ >+ __dummy = xen_cr3_to_pfn(__dummy); \ >+ mfn_to_pfn(__dummy) << PAGE_SHIFT; \ >+}) >+#define write_cr3(x) ({ \ >+ unsigned int __dummy = pfn_to_mfn((x) >> PAGE_SHIFT); \ >+ __dummy = xen_pfn_to_cr3(__dummy); \ >+ __asm__ __volatile__("movl %0,%%cr3": :"r" (__dummy)); \ > }) > > #endif /* __KERNEL__ */
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 233543
: 159394