search for: paravirt_nop

Displaying 20 results from an estimated 241 matches for "paravirt_nop".

2018 Aug 10
0
[PATCH 04/10] x86/paravirt: use a single ops structure
...s.sched_clock = vmware_sched_clock; + pv_ops.pv_time_ops.sched_clock = vmware_sched_clock; pr_info("using sched offset of %llu ns\n", d->cyc2ns_offset); } static void __init vmware_paravirt_ops_setup(void) { pv_info.name = "VMware hypervisor"; - pv_cpu_ops.io_delay = paravirt_nop; + pv_ops.pv_cpu_ops.io_delay = paravirt_nop; if (vmware_tsc_khz && vmw_sched_clock) vmware_sched_clock_setup(); diff --git a/arch/x86/kernel/kvm.c b/arch/x86/kernel/kvm.c index 5b2300b818af..610da165aa26 100644 --- a/arch/x86/kernel/kvm.c +++ b/arch/x86/kernel/kvm.c @@ -292,7 +292,7...
2007 Dec 20
6
[PATCH 0/15] adjust pvops to accomodate its x86_64 variant
Hi folks, With this series, the bulk of the work of pvops64 is done. Here, I integrate most of the paravirt.c and paravirt.h files, making them applicable to both architectures. CONFIG_PARAVIRT is _not_ present yet. Basically, this code is missing page table integration (patches currently being worked on by Jeremy). Enjoy
2007 Dec 20
6
[PATCH 0/15] adjust pvops to accomodate its x86_64 variant
Hi folks, With this series, the bulk of the work of pvops64 is done. Here, I integrate most of the paravirt.c and paravirt.h files, making them applicable to both architectures. CONFIG_PARAVIRT is _not_ present yet. Basically, this code is missing page table integration (patches currently being worked on by Jeremy). Enjoy
2015 Nov 17
1
[PATCH] paravirt: remove paravirt ops pmd_update_defer and pte_update_defer
pte_update_defer can be removed as it is always set to the same function as pte_update. So any usage of pte_update_defer() can be replaced by pte_update(). pmd_update_defer is always set to paravirt_nop, so it can just be nuked. Signed-off-by: Juergen Gross <jgross at suse.com> --- arch/x86/include/asm/paravirt.h | 12 ------------ arch/x86/include/asm/paravirt_types.h | 4 ---- arch/x86/include/asm/pgtable.h | 9 +-------- arch/x86/kernel/paravirt.c | 2 -- arch...
2015 Nov 17
1
[PATCH] paravirt: remove paravirt ops pmd_update_defer and pte_update_defer
pte_update_defer can be removed as it is always set to the same function as pte_update. So any usage of pte_update_defer() can be replaced by pte_update(). pmd_update_defer is always set to paravirt_nop, so it can just be nuked. Signed-off-by: Juergen Gross <jgross at suse.com> --- arch/x86/include/asm/paravirt.h | 12 ------------ arch/x86/include/asm/paravirt_types.h | 4 ---- arch/x86/include/asm/pgtable.h | 9 +-------- arch/x86/kernel/paravirt.c | 2 -- arch...
2007 Oct 09
2
[PATCH RFC REPOST 1/2] paravirt: refactor struct paravirt_ops into smaller pv_*_ops
...re_nocheck #endif =================================================================== --- a/arch/i386/kernel/paravirt.c +++ b/arch/i386/kernel/paravirt.c @@ -34,6 +34,8 @@ #include <asm/tlbflush.h> #include <asm/timer.h> +struct paravirt_ops paravirt_ops; + /* nop stub */ void _paravirt_nop(void) { @@ -42,32 +44,32 @@ static void __init default_banner(void) static void __init default_banner(void) { printk(KERN_INFO "Booting paravirtualized kernel on %s\n", - paravirt_ops.name); + pv_info.name); } char *memory_setup(void) { - return paravirt_ops.memory...
2007 Oct 09
2
[PATCH RFC REPOST 1/2] paravirt: refactor struct paravirt_ops into smaller pv_*_ops
...re_nocheck #endif =================================================================== --- a/arch/i386/kernel/paravirt.c +++ b/arch/i386/kernel/paravirt.c @@ -34,6 +34,8 @@ #include <asm/tlbflush.h> #include <asm/timer.h> +struct paravirt_ops paravirt_ops; + /* nop stub */ void _paravirt_nop(void) { @@ -42,32 +44,32 @@ static void __init default_banner(void) static void __init default_banner(void) { printk(KERN_INFO "Booting paravirtualized kernel on %s\n", - paravirt_ops.name); + pv_info.name); } char *memory_setup(void) { - return paravirt_ops.memory...
2007 Oct 01
2
[PATCH RFC] paravirt: cleanup lazy mode handling
...zy_mode paravirt_get_lazy_mode(void) +{ + return x86_read_percpu(paravirt_lazy_mode); } struct paravirt_ops paravirt_ops = { @@ -333,6 +396,11 @@ struct paravirt_ops paravirt_ops = { .set_iopl_mask = native_set_iopl_mask, .io_delay = native_io_delay, + + .lazy_mode = { + .enter = paravirt_nop, + .leave = paravirt_nop, + }, }, .pv_apic_ops = { @@ -346,10 +414,6 @@ struct paravirt_ops paravirt_ops = { #endif }, - .pv_misc_ops = { - .set_lazy_mode = paravirt_nop, - }, - .pv_mmu_ops = { .pagetable_setup_start = native_pagetable_setup_start, .pagetable_setup_do...
2007 Sep 28
2
[PATCH RFC] paravirt_ops: refactor struct paravirt_ops into smaller pv_*_ops
...rch/i386/kernel/paravirt.c --- a/arch/i386/kernel/paravirt.c Thu Sep 27 12:51:01 2007 -0700 +++ b/arch/i386/kernel/paravirt.c Fri Sep 28 11:05:49 2007 -0700 @@ -34,6 +34,8 @@ #include <asm/tlbflush.h> #include <asm/timer.h> +struct paravirt_ops paravirt_ops; + /* nop stub */ void _paravirt_nop(void) { @@ -42,32 +44,32 @@ static void __init default_banner(void) static void __init default_banner(void) { printk(KERN_INFO "Booting paravirtualized kernel on %s\n", - paravirt_ops.name); + pv_info.name); } char *memory_setup(void) { - return paravirt_ops.memory...
2007 Sep 28
2
[PATCH RFC] paravirt_ops: refactor struct paravirt_ops into smaller pv_*_ops
...rch/i386/kernel/paravirt.c --- a/arch/i386/kernel/paravirt.c Thu Sep 27 12:51:01 2007 -0700 +++ b/arch/i386/kernel/paravirt.c Fri Sep 28 11:05:49 2007 -0700 @@ -34,6 +34,8 @@ #include <asm/tlbflush.h> #include <asm/timer.h> +struct paravirt_ops paravirt_ops; + /* nop stub */ void _paravirt_nop(void) { @@ -42,32 +44,32 @@ static void __init default_banner(void) static void __init default_banner(void) { printk(KERN_INFO "Booting paravirtualized kernel on %s\n", - paravirt_ops.name); + pv_info.name); } char *memory_setup(void) { - return paravirt_ops.memory...
2007 Oct 01
2
[PATCH RFC] paravirt: cleanup lazy mode handling
...zy_mode paravirt_get_lazy_mode(void) +{ + return x86_read_percpu(paravirt_lazy_mode); } struct paravirt_ops paravirt_ops = { @@ -333,6 +396,11 @@ struct paravirt_ops paravirt_ops = { .set_iopl_mask = native_set_iopl_mask, .io_delay = native_io_delay, + + .lazy_mode = { + .enter = paravirt_nop, + .leave = paravirt_nop, + }, }, .pv_apic_ops = { @@ -346,10 +414,6 @@ struct paravirt_ops paravirt_ops = { #endif }, - .pv_misc_ops = { - .set_lazy_mode = paravirt_nop, - }, - .pv_mmu_ops = { .pagetable_setup_start = native_pagetable_setup_start, .pagetable_setup_do...
2018 Aug 10
13
[PATCH 00/10] x86/paravirt: several cleanups
This series removes some no longer needed stuff from paravirt infrastructure and puts large quantities of paravirt ops under a new config option PARAVIRT_XXL which is selected by XEN_PV only. A pvops kernel without XEN_PV being configured is about 2.5% smaller with this series applied. tip commit 5800dc5c19f34e6e03b5adab1282535cb102fafd ("x86/paravirt: Fix spectre-v2 mitigations for
2015 Nov 17
0
[PATCH] paravirt: remove paravirt ops pmd_update[_defer] and pte_update_defer
pte_update_defer can be removed as it is always set to the same function as pte_update. So any usage of pte_update_defer() can be replaced by pte_update(). pmd_update and pmd_update_defer are always set to paravirt_nop, so they can just be nuked. Signed-off-by: Juergen Gross <jgross at suse.com> --- arch/x86/include/asm/paravirt.h | 17 ----------------- arch/x86/include/asm/paravirt_types.h | 6 ------ arch/x86/include/asm/pgtable.h | 15 ++------------- arch/x86/kernel/paravirt.c...
2015 Nov 17
0
[PATCH] paravirt: remove paravirt ops pmd_update[_defer] and pte_update_defer
pte_update_defer can be removed as it is always set to the same function as pte_update. So any usage of pte_update_defer() can be replaced by pte_update(). pmd_update and pmd_update_defer are always set to paravirt_nop, so they can just be nuked. Signed-off-by: Juergen Gross <jgross at suse.com> --- arch/x86/include/asm/paravirt.h | 17 ----------------- arch/x86/include/asm/paravirt_types.h | 6 ------ arch/x86/include/asm/pgtable.h | 15 ++------------- arch/x86/kernel/paravirt.c...
2007 Jul 09
1
[PATCH RFC] first cut at splitting up paravirt_ops
...eck #endif =================================================================== --- a/arch/i386/kernel/paravirt.c +++ b/arch/i386/kernel/paravirt.c @@ -34,6 +34,8 @@ #include <asm/tlbflush.h> #include <asm/timer.h> +static struct paravirt_ops paravirt_ops; + /* nop stub */ void _paravirt_nop(void) { @@ -42,12 +44,12 @@ static void __init default_banner(void) static void __init default_banner(void) { printk(KERN_INFO "Booting paravirtualized kernel on %s\n", - paravirt_ops.name); + pv_info.name); } char *memory_setup(void) { - return paravirt_ops.memory...
2007 Jul 09
1
[PATCH RFC] first cut at splitting up paravirt_ops
...eck #endif =================================================================== --- a/arch/i386/kernel/paravirt.c +++ b/arch/i386/kernel/paravirt.c @@ -34,6 +34,8 @@ #include <asm/tlbflush.h> #include <asm/timer.h> +static struct paravirt_ops paravirt_ops; + /* nop stub */ void _paravirt_nop(void) { @@ -42,12 +44,12 @@ static void __init default_banner(void) static void __init default_banner(void) { printk(KERN_INFO "Booting paravirtualized kernel on %s\n", - paravirt_ops.name); + pv_info.name); } char *memory_setup(void) { - return paravirt_ops.memory...
2007 Oct 09
0
[PATCH RFC REPOST 2/2] paravirt: clean up lazy mode handling
...zy_mode paravirt_get_lazy_mode(void) +{ + return x86_read_percpu(paravirt_lazy_mode); } struct paravirt_ops paravirt_ops = { @@ -333,6 +376,11 @@ struct paravirt_ops paravirt_ops = { .set_iopl_mask = native_set_iopl_mask, .io_delay = native_io_delay, + + .lazy_mode = { + .enter = paravirt_nop, + .leave = paravirt_nop, + }, }, .pv_apic_ops = { @@ -346,10 +394,6 @@ struct paravirt_ops paravirt_ops = { #endif }, - .pv_misc_ops = { - .set_lazy_mode = paravirt_nop, - }, - .pv_mmu_ops = { .pagetable_setup_start = native_pagetable_setup_start, .pagetable_setup_do...
2007 Oct 09
0
[PATCH RFC REPOST 2/2] paravirt: clean up lazy mode handling
...zy_mode paravirt_get_lazy_mode(void) +{ + return x86_read_percpu(paravirt_lazy_mode); } struct paravirt_ops paravirt_ops = { @@ -333,6 +376,11 @@ struct paravirt_ops paravirt_ops = { .set_iopl_mask = native_set_iopl_mask, .io_delay = native_io_delay, + + .lazy_mode = { + .enter = paravirt_nop, + .leave = paravirt_nop, + }, }, .pv_apic_ops = { @@ -346,10 +394,6 @@ struct paravirt_ops paravirt_ops = { #endif }, - .pv_misc_ops = { - .set_lazy_mode = paravirt_nop, - }, - .pv_mmu_ops = { .pagetable_setup_start = native_pagetable_setup_start, .pagetable_setup_do...
2023 Feb 07
1
[PATCH v2] x86/paravirt: merge activate_mm and dup_mmap callbacks
...x86/kernel/paravirt.c b/arch/x86/kernel/paravirt.c index 327757afb027..ff1109b9c6cd 100644 --- a/arch/x86/kernel/paravirt.c +++ b/arch/x86/kernel/paravirt.c @@ -352,8 +352,7 @@ struct paravirt_patch_template pv_ops = { .mmu.make_pte = PTE_IDENT, .mmu.make_pgd = PTE_IDENT, - .mmu.dup_mmap = paravirt_nop, - .mmu.activate_mm = paravirt_nop, + .mmu.enter_mmap = paravirt_nop, .mmu.lazy_mode = { .enter = paravirt_nop, diff --git a/arch/x86/mm/init.c b/arch/x86/mm/init.c index cb258f58fdc8..cbc53da4c1b4 100644 --- a/arch/x86/mm/init.c +++ b/arch/x86/mm/init.c @@ -806,7 +806,7 @@ void __init pok...
2014 Jun 15
0
[PATCH 10/11] qspinlock: Paravirt support
...f CONFIG_QUEUE_SPINLOCK +void __native_queue_unlock(struct qspinlock *lock) +{ + native_queue_unlock(lock); +} +PV_CALLEE_SAVE_REGS_THUNK(__native_queue_unlock); +#endif +#endif + struct pv_lock_ops pv_lock_ops = { #ifdef CONFIG_SMP +#ifdef CONFIG_QUEUE_SPINLOCK + .init_node = __PV_IS_CALLEE_SAVE(paravirt_nop), + .link_and_wait_node = __PV_IS_CALLEE_SAVE(paravirt_nop), + .kick_node = __PV_IS_CALLEE_SAVE(paravirt_nop), + + .wait_head = __PV_IS_CALLEE_SAVE(paravirt_nop), + .queue_unlock = PV_CALLEE_SAVE(__native_queue_unlock), + + .wait = paravirt_nop, + .kick = paravirt_nop, +#else .lock_spinning = __P...