search for: switch_to

Displaying 20 results from an estimated 64 matches for "switch_to".

2013 Oct 22
0
[PATCH 1/3] x86: process: Unify 32-bit and 64-bit copy_thread I/O bitmap handling
...+ + return 0; +} + +#endif /* _X86_KERNEL_PROCESS_IO_H */ diff --git a/arch/x86/kernel/process_32.c b/arch/x86/kernel/process_32.c index 884f98f..e86028b 100644 --- a/arch/x86/kernel/process_32.c +++ b/arch/x86/kernel/process_32.c @@ -56,6 +56,8 @@ #include <asm/debugreg.h> #include <asm/switch_to.h> +#include "process-io.h" + asmlinkage void ret_from_fork(void) __asm__("ret_from_fork"); asmlinkage void ret_from_kernel_thread(void) __asm__("ret_from_kernel_thread"); @@ -135,7 +137,6 @@ int copy_thread(unsigned long clone_flags, unsigned long sp, { st...
2006 Mar 28
7
context switch
In debugging the sles9 port on 64 bit MP machines, I am seeing a problem where the hypervisor takes a fault in loading fs in the context switch code (load_segments()). The selector is one of the TLS selectors. It appears that the cpu in question has updated this selector with a value of 0 just prior to the problem I am seeing. Looking at the Linux context switch code, we first update the TLS
2008 Dec 12
5
[PATCH 0/5] ia64/pv_ops, xen: binary patch optimization TAKE 2
This patch set is intended for the next merge window. They are just enhancements of the already merged patches or ia64 porting from x86 paravirt techniques and that their quality is enough for merge. This patch set is for binary patch optimization for paravirt_ops. The binary patch optimization is important on native case because the paravirt_ops overhead can be reduced by converting indirect
2008 Dec 12
5
[PATCH 0/5] ia64/pv_ops, xen: binary patch optimization TAKE 2
This patch set is intended for the next merge window. They are just enhancements of the already merged patches or ia64 porting from x86 paravirt techniques and that their quality is enough for merge. This patch set is for binary patch optimization for paravirt_ops. The binary patch optimization is important on native case because the paravirt_ops overhead can be reduced by converting indirect
2008 Dec 22
5
[PATCH 0/5] ia64/pv_ops, xen: binary patch optimization TAKE 3
This patch set is intended for the next merge window. They are just enhancements of the already merged patches or ia64 porting from x86 paravirt techniques and that their quality is enough for merge. This patch set is for binary patch optimization for paravirt_ops which depends on the patch series I sent out, ia64/pv_ops, xen: more paravirtualization. The binary patch optimization is important on
2008 Dec 22
5
[PATCH 0/5] ia64/pv_ops, xen: binary patch optimization TAKE 3
This patch set is intended for the next merge window. They are just enhancements of the already merged patches or ia64 porting from x86 paravirt techniques and that their quality is enough for merge. This patch set is for binary patch optimization for paravirt_ops which depends on the patch series I sent out, ia64/pv_ops, xen: more paravirtualization. The binary patch optimization is important on
2009 Mar 04
5
[PATCH 0/5] ia64/pv_ops, xen: binary patch optimization TAKE 4
This patch set is for the next merge window. They are just enhancements of the already merged patches or ia64 porting from x86 paravirt techniques and that their quality is enough for merge. This patch set is for binary patch optimization for paravirt_ops which depends on the patch series I sent out, ia64/pv_ops, xen: more paravirtualization. The binary patch optimization is important on native
2009 Mar 04
5
[PATCH 0/5] ia64/pv_ops, xen: binary patch optimization TAKE 4
This patch set is for the next merge window. They are just enhancements of the already merged patches or ia64 porting from x86 paravirt techniques and that their quality is enough for merge. This patch set is for binary patch optimization for paravirt_ops which depends on the patch series I sent out, ia64/pv_ops, xen: more paravirtualization. The binary patch optimization is important on native
2007 May 09
0
[patch 1/9] lguest: export symbols for lguest as a module
...aps.c~lguest-export-symbols-for-lguest-as-a-module arch/i386/kernel/traps.c --- a/arch/i386/kernel/traps.c~lguest-export-symbols-for-lguest-as-a-module +++ a/arch/i386/kernel/traps.c @@ -1058,6 +1058,7 @@ asmlinkage void math_state_restore(void) thread->status |= TS_USEDFPU; /* So we fnsave on switch_to() */ tsk->fpu_counter++; } +EXPORT_SYMBOL_GPL(math_state_restore); #ifndef CONFIG_MATH_EMULATION diff -puN kernel/fork.c~lguest-export-symbols-for-lguest-as-a-module kernel/fork.c --- a/kernel/fork.c~lguest-export-symbols-for-lguest-as-a-module +++ a/kernel/fork.c @@ -126,6 +126,7 @@ voi...
2007 May 09
0
[patch 1/9] lguest: export symbols for lguest as a module
...aps.c~lguest-export-symbols-for-lguest-as-a-module arch/i386/kernel/traps.c --- a/arch/i386/kernel/traps.c~lguest-export-symbols-for-lguest-as-a-module +++ a/arch/i386/kernel/traps.c @@ -1058,6 +1058,7 @@ asmlinkage void math_state_restore(void) thread->status |= TS_USEDFPU; /* So we fnsave on switch_to() */ tsk->fpu_counter++; } +EXPORT_SYMBOL_GPL(math_state_restore); #ifndef CONFIG_MATH_EMULATION diff -puN kernel/fork.c~lguest-export-symbols-for-lguest-as-a-module kernel/fork.c --- a/kernel/fork.c~lguest-export-symbols-for-lguest-as-a-module +++ a/kernel/fork.c @@ -126,6 +126,7 @@ voi...
2008 Nov 25
6
[PATCH 0/5] ia64/pv_ops, xen: binary patch optimization
This patch set is for binary patch optimization for paravirt_ops. The binary patch optimization is important on native case because the paravirt_ops overhead can be reduced by converting indirect call into in-place execution or direct call. The first patch imports helper functions which themselves doesn't interesting things. The second patch replaces the indirect function calls with a
2008 Nov 25
6
[PATCH 0/5] ia64/pv_ops, xen: binary patch optimization
This patch set is for binary patch optimization for paravirt_ops. The binary patch optimization is important on native case because the paravirt_ops overhead can be reduced by converting indirect call into in-place execution or direct call. The first patch imports helper functions which themselves doesn't interesting things. The second patch replaces the indirect function calls with a
2007 Apr 18
0
[PATCH 2/6] Paravirt CPU hypercall batching mode
...2006 -0800 @@ -665,6 +665,31 @@ struct task_struct fastcall * __switch_t load_TLS(next, cpu); /* + * Now maybe handle debug registers and/or IO bitmaps + */ + if (unlikely((task_thread_info(next_p)->flags & _TIF_WORK_CTXSW) + || test_tsk_thread_flag(prev_p, TIF_IO_BITMAP))) + __switch_to_xtra(next_p, tss); + + disable_tsc(prev_p, next_p); + + /* + * Leave lazy mode, flushing any hypercalls made here. + * This must be done before restoring TLS segments so + * the GDT and LDT are properly updated, and must be + * done before math_state_restore, so the TS bit is up + * to date. +...
2007 Apr 18
0
[PATCH 2/6] Paravirt CPU hypercall batching mode
...2006 -0800 @@ -665,6 +665,31 @@ struct task_struct fastcall * __switch_t load_TLS(next, cpu); /* + * Now maybe handle debug registers and/or IO bitmaps + */ + if (unlikely((task_thread_info(next_p)->flags & _TIF_WORK_CTXSW) + || test_tsk_thread_flag(prev_p, TIF_IO_BITMAP))) + __switch_to_xtra(next_p, tss); + + disable_tsc(prev_p, next_p); + + /* + * Leave lazy mode, flushing any hypercalls made here. + * This must be done before restoring TLS segments so + * the GDT and LDT are properly updated, and must be + * done before math_state_restore, so the TS bit is up + * to date. +...
2007 Apr 18
1
[RFC] [PATCH] Split host arch headers for UML's benefit
...rig/include/asm-um/system-generic.h 2005-06-17 15:48:29.000000000 -0400 +++ linux-2.6.13-rc5-mm1-abi/include/asm-um/system-generic.h 2005-08-16 11:32:15.000000000 -0400 @@ -1,19 +1,7 @@ #ifndef __UM_SYSTEM_GENERIC_H #define __UM_SYSTEM_GENERIC_H -#include "asm/arch/system.h" - -#undef switch_to -#undef local_irq_save -#undef local_irq_restore -#undef local_irq_disable -#undef local_irq_enable -#undef local_save_flags -#undef local_irq_restore -#undef local_irq_enable -#undef local_irq_disable -#undef local_irq_save -#undef irqs_disabled +#include "asm/arch/system-abi.h" exter...
2007 Apr 18
1
[RFC] [PATCH] Split host arch headers for UML's benefit
...rig/include/asm-um/system-generic.h 2005-06-17 15:48:29.000000000 -0400 +++ linux-2.6.13-rc5-mm1-abi/include/asm-um/system-generic.h 2005-08-16 11:32:15.000000000 -0400 @@ -1,19 +1,7 @@ #ifndef __UM_SYSTEM_GENERIC_H #define __UM_SYSTEM_GENERIC_H -#include "asm/arch/system.h" - -#undef switch_to -#undef local_irq_save -#undef local_irq_restore -#undef local_irq_disable -#undef local_irq_enable -#undef local_save_flags -#undef local_irq_restore -#undef local_irq_enable -#undef local_irq_disable -#undef local_irq_save -#undef irqs_disabled +#include "asm/arch/system-abi.h" exter...
2020 Nov 03
0
[patch V3 24/37] sched: highmem: Store local kmaps in task struct
...*vaddr) arch_kmap_local_pre_unmap(addr); pte_clear(&init_mm, addr, kmap_pte - idx); arch_kmap_local_post_unmap(addr); + current->kmap_ctrl.pteval[kmap_local_idx()] = __pte(0); kmap_local_idx_pop(); preempt_enable(); } EXPORT_SYMBOL(kunmap_local_indexed); + +/* + * Invoked before switch_to(). This is safe even when during or after + * clearing the maps an interrupt which needs a kmap_local happens because + * the task::kmap_ctrl.idx is not modified by the unmapping code so a + * nested kmap_local will use the next unused index and restore the index + * on unmap. The already cleared k...
2007 Apr 18
2
[PATCH 2/5] Paravirt cpu batching.patch
...f needed. + */ + if (unlikely(prev->iopl != next->iopl)) + set_iopl_mask(next->iopl); + + /* + * Now maybe handle debug registers and/or IO bitmaps + */ + if (unlikely((task_thread_info(next_p)->flags & _TIF_WORK_CTXSW) + || test_tsk_thread_flag(prev_p, TIF_IO_BITMAP))) + __switch_to_xtra(next_p, tss); + + /* + * Leave lazy mode, flushing any hypercalls made here. + * This must be done before restoring TLS segments so + * the GDT and LDT are properly updated, and must be + * done before math_state_restore, so the TS bit is up + * to date. + */ + arch_leave_lazy_cpu_mode()...
2007 Apr 18
2
[PATCH 2/5] Paravirt cpu batching.patch
...f needed. + */ + if (unlikely(prev->iopl != next->iopl)) + set_iopl_mask(next->iopl); + + /* + * Now maybe handle debug registers and/or IO bitmaps + */ + if (unlikely((task_thread_info(next_p)->flags & _TIF_WORK_CTXSW) + || test_tsk_thread_flag(prev_p, TIF_IO_BITMAP))) + __switch_to_xtra(next_p, tss); + + /* + * Leave lazy mode, flushing any hypercalls made here. + * This must be done before restoring TLS segments so + * the GDT and LDT are properly updated, and must be + * done before math_state_restore, so the TS bit is up + * to date. + */ + arch_leave_lazy_cpu_mode()...
2014 Mar 11
2
[PATCHv2 1/3] x86: process: Unify 32-bit and 64-bit copy_thread I/O bitmap handling
...+ + return 0; +} + +#endif /* _X86_KERNEL_PROCESS_IO_H */ diff --git a/arch/x86/kernel/process_32.c b/arch/x86/kernel/process_32.c index 0de43e9..73a38c8 100644 --- a/arch/x86/kernel/process_32.c +++ b/arch/x86/kernel/process_32.c @@ -55,6 +55,8 @@ #include <asm/debugreg.h> #include <asm/switch_to.h> +#include "process-io.h" + asmlinkage void ret_from_fork(void) __asm__("ret_from_fork"); asmlinkage void ret_from_kernel_thread(void) __asm__("ret_from_kernel_thread"); @@ -134,7 +136,6 @@ int copy_thread(unsigned long clone_flags, unsigned long sp, { st...