search for: esp0

Displaying 20 results from an estimated 85 matches for "esp0".

Did you mean: esp
2007 Apr 18
1
[PATCH 1/7] cleanup: paravirt unhandled fallthrough
The current code simply calls "start_kernel" directly if we're under a hypervisor and no paravirt_ops backend wants us, because paravirt.c registers that as a backend. This was always a vain hope; start_kernel won't get far without setup. It's also impossible for paravirt_ops backends which don't sit in the arch/i386/kernel directory: they can't link before
2007 Apr 18
1
[PATCH 1/7] cleanup: paravirt unhandled fallthrough
The current code simply calls "start_kernel" directly if we're under a hypervisor and no paravirt_ops backend wants us, because paravirt.c registers that as a backend. This was always a vain hope; start_kernel won't get far without setup. It's also impossible for paravirt_ops backends which don't sit in the arch/i386/kernel directory: they can't link before
2003 Oct 22
9
IPSec VPNs: to gif or not to gif
...eived wisdom on how to set this up, and is the use of the gif interface indeed necessary? I also remember that the discussions diverted into a problem with ipfw when gif was *not* used, but I haven't found any messages to indicate that it was resolved. I recall suggestions that a new interface esp0 be created so that ipfw could work correctly on both the innner and outer packets of an ESP tunnel. Was that issue ever resolved? jim hatfield
2007 Apr 18
2
[PATCH] Fix CONFIG_PARAVIRT for 2.6.19-rc5-mm1
...eax, ebx, ecx, edx; - - cpuid(op, &eax, &ebx, &ecx, &edx); - return edx; -} - #define load_cr3(pgdir) write_cr3(__pa(pgdir)) /* @@ -505,18 +445,6 @@ struct thread_struct { .io_bitmap = { [ 0 ... IO_BITMAP_LONGS] = ~0 }, \ } -#ifndef CONFIG_PARAVIRT -static inline void load_esp0(struct tss_struct *tss, struct thread_struct *thread) -{ - tss->esp0 = thread->esp0; - /* This can only happen when SEP is enabled, no need to test "SEP"arately */ - if (unlikely(tss->ss1 != thread->sysenter_cs)) { - tss->ss1 = thread->sysenter_cs; - wrmsr(MSR_IA32_SYS...
2007 Apr 18
2
[PATCH] Fix CONFIG_PARAVIRT for 2.6.19-rc5-mm1
...eax, ebx, ecx, edx; - - cpuid(op, &eax, &ebx, &ecx, &edx); - return edx; -} - #define load_cr3(pgdir) write_cr3(__pa(pgdir)) /* @@ -505,18 +445,6 @@ struct thread_struct { .io_bitmap = { [ 0 ... IO_BITMAP_LONGS] = ~0 }, \ } -#ifndef CONFIG_PARAVIRT -static inline void load_esp0(struct tss_struct *tss, struct thread_struct *thread) -{ - tss->esp0 = thread->esp0; - /* This can only happen when SEP is enabled, no need to test "SEP"arately */ - if (unlikely(tss->ss1 != thread->sysenter_cs)) { - tss->ss1 = thread->sysenter_cs; - wrmsr(MSR_IA32_SYS...
2007 Apr 18
1
[RFC, PATCH 12/24] i386 Vmi processor header
...FPU save and restore */ #define X86_CR4_OSXMMEXCPT 0x0400 /* enable unmasked SSE exceptions */ +#include <mach_processor.h> + /* * Save the cr4 feature set we're using (ie * Pentium 4MB enable and PPro Global page @@ -489,6 +418,7 @@ struct thread_struct { static inline void load_esp0(struct tss_struct *tss, struct thread_struct *thread) { tss->esp0 = thread->esp0; + arch_update_kernel_stack(tss, thread->esp0); /* This can only happen when SEP is enabled, no need to test "SEP"arately */ if (unlikely(tss->ss1 != thread->sysenter_cs)) { tss->s...
2007 Apr 18
1
[RFC, PATCH 12/24] i386 Vmi processor header
...FPU save and restore */ #define X86_CR4_OSXMMEXCPT 0x0400 /* enable unmasked SSE exceptions */ +#include <mach_processor.h> + /* * Save the cr4 feature set we're using (ie * Pentium 4MB enable and PPro Global page @@ -489,6 +418,7 @@ struct thread_struct { static inline void load_esp0(struct tss_struct *tss, struct thread_struct *thread) { tss->esp0 = thread->esp0; + arch_update_kernel_stack(tss, thread->esp0); /* This can only happen when SEP is enabled, no need to test "SEP"arately */ if (unlikely(tss->ss1 != thread->sysenter_cs)) { tss->s...
2005 Dec 03
3
i386 domU on amd64 (xen-unstable)
...t'' has no member named ''eip'' arch/i386/kernel/asm-offsets.c:42: error: ''struct cpuinfo_x86'' has no member named ''hard_math'' arch/i386/kernel/asm-offsets.c:67: error: ''struct tss_struct'' has no member named ''esp0'' arch/i386/kernel/asm-offsets.c:71: error: ''FIX_VSYSCALL'' undeclared (first use in this function) arch/i386/kernel/asm-offsets.c:71: error: (Each undeclared identifier is reported only once arch/i386/kernel/asm-offsets.c:71: error: for each function it appears in.) make...
2005 Dec 03
3
i386 domU on amd64 (xen-unstable)
...t'' has no member named ''eip'' arch/i386/kernel/asm-offsets.c:42: error: ''struct cpuinfo_x86'' has no member named ''hard_math'' arch/i386/kernel/asm-offsets.c:67: error: ''struct tss_struct'' has no member named ''esp0'' arch/i386/kernel/asm-offsets.c:71: error: ''FIX_VSYSCALL'' undeclared (first use in this function) arch/i386/kernel/asm-offsets.c:71: error: (Each undeclared identifier is reported only once arch/i386/kernel/asm-offsets.c:71: error: for each function it appears in.) make...
2007 Apr 18
0
[PATCH 5/5] XEN: fixup APIC accessors when !CONFIG_X86_LOCAL_APIC
OK, not strictly in keeping with the subject of the patch set but I needed this to build ;-) Should be merged into 02d-xen-apic-esp0.patch Signed-off-by: Ian Campbell <ian.campbell@xensource.com> diff -r 6fdbec59813e arch/i386/paravirt-xen/enlighten.c --- a/arch/i386/paravirt-xen/enlighten.c Wed Aug 23 15:08:37 2006 +0100 +++ b/arch/i386/paravirt-xen/enlighten.c Wed Aug 23 15:08:37 2006 +0100 @@ -310,6 +310,7 @@ static f...
2007 Apr 18
0
[PATCH 4/5] Vmi.patch
...+static int disable_sep; +static int disable_tsc; +static int disable_mtrr; + +/* Cached VMI operations */ +struct { + void (fastcall *cpuid)(void /* non-c */); + void (fastcall *_set_ldt)(u32 selector); + void (fastcall *set_tr)(u32 selector); + void (fastcall *set_kernel_stack)(u32 selector, u32 esp0); + void (fastcall *allocate_page)(u32, u32, u32, u32, u32); + void (fastcall *release_page)(u32, u32); + void (fastcall *set_pte)(pte_t, pte_t *, unsigned); + void (fastcall *update_pte)(pte_t *, unsigned); + void (fastcall *set_linear_mapping)(int, u32, u32, u32); + void (fastcall *flush_tlb)(int...
2007 Apr 18
0
[PATCH 4/5] Vmi.patch
...+static int disable_sep; +static int disable_tsc; +static int disable_mtrr; + +/* Cached VMI operations */ +struct { + void (fastcall *cpuid)(void /* non-c */); + void (fastcall *_set_ldt)(u32 selector); + void (fastcall *set_tr)(u32 selector); + void (fastcall *set_kernel_stack)(u32 selector, u32 esp0); + void (fastcall *allocate_page)(u32, u32, u32, u32, u32); + void (fastcall *release_page)(u32, u32); + void (fastcall *set_pte)(pte_t, pte_t *, unsigned); + void (fastcall *update_pte)(pte_t *, unsigned); + void (fastcall *set_linear_mapping)(int, u32, u32, u32); + void (fastcall *flush_tlb)(int...
2007 Apr 18
0
[PATCH 5/6] VMI backend for paravirt-ops
...+static int disable_sep; +static int disable_tsc; +static int disable_mtrr; + +/* Cached VMI operations */ +struct { + void (fastcall *cpuid)(void /* non-c */); + void (fastcall *_set_ldt)(u32 selector); + void (fastcall *set_tr)(u32 selector); + void (fastcall *set_kernel_stack)(u32 selector, u32 esp0); + void (fastcall *allocate_page)(u32, u32, u32, u32, u32); + void (fastcall *release_page)(u32, u32); + void (fastcall *set_pte)(pte_t, pte_t *, unsigned); + void (fastcall *update_pte)(pte_t *, unsigned); + void (fastcall *set_linear_mapping)(int, u32, u32, u32); + void (fastcall *flush_tlb)(int...
2007 Apr 18
0
[PATCH 5/6] VMI backend for paravirt-ops
...+static int disable_sep; +static int disable_tsc; +static int disable_mtrr; + +/* Cached VMI operations */ +struct { + void (fastcall *cpuid)(void /* non-c */); + void (fastcall *_set_ldt)(u32 selector); + void (fastcall *set_tr)(u32 selector); + void (fastcall *set_kernel_stack)(u32 selector, u32 esp0); + void (fastcall *allocate_page)(u32, u32, u32, u32, u32); + void (fastcall *release_page)(u32, u32); + void (fastcall *set_pte)(pte_t, pte_t *, unsigned); + void (fastcall *update_pte)(pte_t *, unsigned); + void (fastcall *set_linear_mapping)(int, u32, u32, u32); + void (fastcall *flush_tlb)(int...
2007 Apr 18
2
[RFC, PATCH] Fixup COMPAT_VDSO to work with CONFIG_PARAVIRT
...p: pushl $(__USER_CS) CFI_ADJUST_CFA_OFFSET 4 /*CFI_REL_OFFSET cs, 0*/ -#ifndef CONFIG_COMPAT_VDSO /* * Push current_thread_info()->sysenter_return to the stack. * A tiny bit of offset fixup is necessary - 4*4 means the 4 words * pushed above; +8 corresponds to copy_thread's esp0 setting. */ pushl (TI_sysenter_return-THREAD_SIZE+8+4*4)(%esp) -#else - pushl $SYSENTER_RETURN -#endif CFI_ADJUST_CFA_OFFSET 4 CFI_REL_OFFSET eip, 0 = Index: linux-2.6.21/arch/i386/kernel/sysenter.c =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D...
2007 Apr 18
2
[RFC, PATCH] Fixup COMPAT_VDSO to work with CONFIG_PARAVIRT
...p: pushl $(__USER_CS) CFI_ADJUST_CFA_OFFSET 4 /*CFI_REL_OFFSET cs, 0*/ -#ifndef CONFIG_COMPAT_VDSO /* * Push current_thread_info()->sysenter_return to the stack. * A tiny bit of offset fixup is necessary - 4*4 means the 4 words * pushed above; +8 corresponds to copy_thread's esp0 setting. */ pushl (TI_sysenter_return-THREAD_SIZE+8+4*4)(%esp) -#else - pushl $SYSENTER_RETURN -#endif CFI_ADJUST_CFA_OFFSET 4 CFI_REL_OFFSET eip, 0 = Index: linux-2.6.21/arch/i386/kernel/sysenter.c =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D...
2008 Mar 04
3
32-on-64 sysenter for pvops
I implemented sysenter for 32-on-64, since it seemed straightforward enough. It mostly works, but every now and again I get vcpus just hanging in blocked state, as if events are being lost or ignored. Its very similar to the symptoms that other people have reported against the pvops kernel, which I have not managed to reproduce. Perhaps using sysenter is exacerbating an existing bug...
2007 Apr 18
2
[PATCH] exec-shield style vdso move.
...84,8 +184,12 @@ sysenter_past_esp: pushl %ebp pushfl pushl $(__USER_CS) - pushl $SYSENTER_RETURN - + /* + * Push current_thread_info()->sysenter_return to the stack. + * A tiny bit of offset fixup is necessary - 4*4 means the 4 words + * pushed above; +8 corresponds to copy_thread's esp0 setting. + */ + pushl (TI_sysenter_return-THREAD_SIZE+8+4*4)(%esp) /* * Load the potential sixth argument from user stack. * Careful about security. diff -urpN --exclude TAGS -X /home/rusty/devel/kernel/kernel-patches/current-dontdiff --minimal .23560-linux-2.6.17-rc4-git3/arch/i386/kernel/si...
2007 Apr 18
2
[PATCH] exec-shield style vdso move.
...84,8 +184,12 @@ sysenter_past_esp: pushl %ebp pushfl pushl $(__USER_CS) - pushl $SYSENTER_RETURN - + /* + * Push current_thread_info()->sysenter_return to the stack. + * A tiny bit of offset fixup is necessary - 4*4 means the 4 words + * pushed above; +8 corresponds to copy_thread's esp0 setting. + */ + pushl (TI_sysenter_return-THREAD_SIZE+8+4*4)(%esp) /* * Load the potential sixth argument from user stack. * Careful about security. diff -urpN --exclude TAGS -X /home/rusty/devel/kernel/kernel-patches/current-dontdiff --minimal .23560-linux-2.6.17-rc4-git3/arch/i386/kernel/si...
2007 Apr 18
0
[RFC/PATCH PV_OPS X86_64 10/17] paravirt_ops - boot changes
...: "=r" (cr4)); + cr0 = read_cr0(); + cr2 = read_cr2(); + cr3 = read_cr3(); + cr4 = read_cr4(); printk("FS: %016lx(%04x) GS:%016lx(%04x) knlGS:%016lx\n", fs,fsindex,gs,gsindex,shadowgs); @@ -578,7 +579,7 @@ __switch_to(struct task_struct *prev_p, /* * Reload esp0, LDT and the page table pointer: */ - tss->rsp0 = next->rsp0; + load_rsp0(tss, next); /* * Switch DS and ES. Index: clean-start/arch/x86_64/kernel/reboot.c =================================================================== --- clean-start.orig/arch/x86_64/kernel/reboot.c +++ clean...