search for: paravirt_ops

Displaying 20 results from an estimated 445 matches for "paravirt_ops".

2007 Apr 18
0
[PATCH 8/9] Vmi apic ops.diff
...t. + * For unimplemented operations, fall back to default, unless nop + * is returned by the ROM. */ #define para_fill(opname, vmicall) \ do { \ @@ -692,8 +694,28 @@ do { \ if (rel->type != VMI_RELOCATION_NONE) { \ BUG_ON(rel->type != VMI_RELOCATION_CALL_REL); \ paravirt_ops.opname = (void *)rel->eip; \ + } else if (rel->type == VMI_RELOCATION_NOP) \ + paravirt_ops.opname = (void *)vmi_nop; \ +} while (0) + +/* + * Helper macro for making the VMI paravirt-ops fill code readable. + * For cached operations which do not match the VMI ROM ABI and must + * go thr...
2007 Apr 18
0
[PATCH 8/9] Vmi apic ops.diff
...t. + * For unimplemented operations, fall back to default, unless nop + * is returned by the ROM. */ #define para_fill(opname, vmicall) \ do { \ @@ -692,8 +694,28 @@ do { \ if (rel->type != VMI_RELOCATION_NONE) { \ BUG_ON(rel->type != VMI_RELOCATION_CALL_REL); \ paravirt_ops.opname = (void *)rel->eip; \ + } else if (rel->type == VMI_RELOCATION_NOP) \ + paravirt_ops.opname = (void *)vmi_nop; \ +} while (0) + +/* + * Helper macro for making the VMI paravirt-ops fill code readable. + * For cached operations which do not match the VMI ROM ABI and must + * go thr...
2007 Apr 18
0
[RFC/PATCH PV_OPS X86_64 01/17] paravirt_ops - core changes
....h> +#include <asm/pgtable.h> +#include <asm/proto.h> +#include <asm/time.h> +#include <asm/e820.h> + +/* nop stub */ +void native_nop(void) +{ +} + +static void __init default_banner(void) +{ + printk(KERN_INFO "Booting paravirtualized kernel on %s\n", + paravirt_ops.name); +} + +void memory_setup(void) +{ + paravirt_ops.memory_setup(); +} + +void syscall_init(void) +{ + paravirt_ops.syscall_init(); +} + +/* Simple instruction patching code. */ +#define DEF_NATIVE(name, code) \ + extern const char start_##name[], end_##name[]; \ + asm("start_" #n...
2007 Apr 18
0
[RFC/PATCH PV_OPS X86_64 01/17] paravirt_ops - core changes
....h> +#include <asm/pgtable.h> +#include <asm/proto.h> +#include <asm/time.h> +#include <asm/e820.h> + +/* nop stub */ +void native_nop(void) +{ +} + +static void __init default_banner(void) +{ + printk(KERN_INFO "Booting paravirtualized kernel on %s\n", + paravirt_ops.name); +} + +void memory_setup(void) +{ + paravirt_ops.memory_setup(); +} + +void syscall_init(void) +{ + paravirt_ops.syscall_init(); +} + +/* Simple instruction patching code. */ +#define DEF_NATIVE(name, code) \ + extern const char start_##name[], end_##name[]; \ + asm("start_" #n...
2007 Jul 09
1
[PATCH RFC] first cut at splitting up paravirt_ops
Here's a first attempt at splitting up paravirt_ops into more specific chunks. Its pretty clunky and chunky; mostly just a lot of replacement. The grouping of ops is very first cut; I'm open to suggestions about what groups should exist and what ops they each should contain. The only slightly subtle part is that I've kept the structur...
2007 Jul 09
1
[PATCH RFC] first cut at splitting up paravirt_ops
Here's a first attempt at splitting up paravirt_ops into more specific chunks. Its pretty clunky and chunky; mostly just a lot of replacement. The grouping of ops is very first cut; I'm open to suggestions about what groups should exist and what ops they each should contain. The only slightly subtle part is that I've kept the structur...
2007 Apr 18
3
[PATCH 1/2] paravirt.h header
...has seen this before), then the second is the binary patching stuff. More things get added to the paravirt struct in future patches, but this basic stuff hasn't changed for some time. ==== This patch does the dumbest possible replacement of paravirtualized instructions: calls through a "paravirt_ops" structure. Currently these are function implementations of native hardware: hypervisors will override the ops structure with their own variants. All the pv-ops functions are declared "fastcall" so that a specific register-based ABI is used, to make inlining assember easier. Signe...
2007 Apr 18
5
[PATCH] paravirt.h
...sty. === Create a paravirt.h header for all the critical operations which need to be replaced with hypervisor calls, and include that instead of defining native operations, when CONFIG_PARAVIRT. This patch does the dumbest possible replacement of paravirtualized instructions: calls through a "paravirt_ops" structure. Currently these are function implementations of native hardware: hypervisors will override the ops structure with their own variants. All the pv-ops functions are declared "fastcall" so that a specific register-based ABI is used, to make inlining assember easier. Signe...
2007 Apr 18
5
[PATCH] paravirt.h
...sty. === Create a paravirt.h header for all the critical operations which need to be replaced with hypervisor calls, and include that instead of defining native operations, when CONFIG_PARAVIRT. This patch does the dumbest possible replacement of paravirtualized instructions: calls through a "paravirt_ops" structure. Currently these are function implementations of native hardware: hypervisors will override the ops structure with their own variants. All the pv-ops functions are declared "fastcall" so that a specific register-based ABI is used, to make inlining assember easier. Signe...
2007 Oct 09
2
[PATCH RFC REPOST 1/2] paravirt: refactor struct paravirt_ops into smaller pv_*_ops
[ I think this is a straight repost this patch, which addresses all the previous comments. I'd like to submit this for .24 as the basis for a unified paravirt_ops. Any objections? ] This patch refactors the paravirt_ops structure into groups of functionally related ops: pv_info - random info, rather than function entrypoints pv_init_ops - functions used at boot time (some for module_init too) pv_misc_ops - lazy mode, which didn't fit well anywhere els...
2007 Oct 09
2
[PATCH RFC REPOST 1/2] paravirt: refactor struct paravirt_ops into smaller pv_*_ops
[ I think this is a straight repost this patch, which addresses all the previous comments. I'd like to submit this for .24 as the basis for a unified paravirt_ops. Any objections? ] This patch refactors the paravirt_ops structure into groups of functionally related ops: pv_info - random info, rather than function entrypoints pv_init_ops - functions used at boot time (some for module_init too) pv_misc_ops - lazy mode, which didn't fit well anywhere els...
2007 Sep 28
2
[PATCH RFC] paravirt_ops: refactor struct paravirt_ops into smaller pv_*_ops
This patch refactors the paravirt_ops structure into groups of functionally related ops: pv_info - random info, rather than function entrypoints pv_init_ops - functions used at boot time (some for module_init too) pv_misc_ops - lazy mode, which didn't fit well anywhere else pv_time_ops - time-related functions pv_cpu_ops - various...
2007 Sep 28
2
[PATCH RFC] paravirt_ops: refactor struct paravirt_ops into smaller pv_*_ops
This patch refactors the paravirt_ops structure into groups of functionally related ops: pv_info - random info, rather than function entrypoints pv_init_ops - functions used at boot time (some for module_init too) pv_misc_ops - lazy mode, which didn't fit well anywhere else pv_time_ops - time-related functions pv_cpu_ops - various...
2007 Apr 18
8
[PATCH 0/7] x86 paravirtualization infrastructure
The following patches introduce the core infrastructure needed to paravirtualize the 32-bit x86 Linux kernel. This is done by moving virtualization sensitive insn's or code paths to a function table, paravirt_ops. This structure can be populated with hypervisor specific calls or native stubs and currently support running on bare metal, VMI, Xen, or Lhype. These patches apply to 2.6.19-rc2-mm2 plus the last set of paravirt prep patches that Rusty sent. thanks, -chris --
2007 Apr 18
8
[PATCH 0/7] x86 paravirtualization infrastructure
The following patches introduce the core infrastructure needed to paravirtualize the 32-bit x86 Linux kernel. This is done by moving virtualization sensitive insn's or code paths to a function table, paravirt_ops. This structure can be populated with hypervisor specific calls or native stubs and currently support running on bare metal, VMI, Xen, or Lhype. These patches apply to 2.6.19-rc2-mm2 plus the last set of paravirt prep patches that Rusty sent. thanks, -chris --
2007 Apr 18
2
[PATCH] x86_64 paravirt_ops port
Hi all, I've been working on a port of paravirt_ops for the x86_64 architectures for a couple of days. Here's the result so far. I'm posting it soon for early cooments. The more, the better. It's obviously based on the previous work for i386, with the needed modifications. By now, I'm able to boot a bare metal kernel, but there are...
2007 Apr 18
2
[PATCH] x86_64 paravirt_ops port
Hi all, I've been working on a port of paravirt_ops for the x86_64 architectures for a couple of days. Here's the result so far. I'm posting it soon for early cooments. The more, the better. It's obviously based on the previous work for i386, with the needed modifications. By now, I'm able to boot a bare metal kernel, but there are...
2015 Feb 11
1
[PATCH] virtual: Documentation: simplify and generalize paravirt_ops.txt
...l.com> Cc: Fenghua Yu <fenghua.yu at intel.com> Cc: Boris Ostrovsky <boris.ostrovsky at oracle.com> Cc: xen-devel at lists.xenproject.org Cc: kvm at vger.kernel.org Cc: linux-kernel at vger.kernel.org Signed-off-by: Luis R. Rodriguez <mcgrof at suse.com> --- Documentation/ia64/paravirt_ops.txt | 137 --------------------------------- Documentation/virtual/00-INDEX | 3 + Documentation/virtual/paravirt_ops.txt | 32 ++++++++ MAINTAINERS | 2 +- 4 files changed, 36 insertions(+), 138 deletions(-) delete mode 100644 Documentation/ia64/paravirt...
2015 Feb 11
1
[PATCH] virtual: Documentation: simplify and generalize paravirt_ops.txt
...l.com> Cc: Fenghua Yu <fenghua.yu at intel.com> Cc: Boris Ostrovsky <boris.ostrovsky at oracle.com> Cc: xen-devel at lists.xenproject.org Cc: kvm at vger.kernel.org Cc: linux-kernel at vger.kernel.org Signed-off-by: Luis R. Rodriguez <mcgrof at suse.com> --- Documentation/ia64/paravirt_ops.txt | 137 --------------------------------- Documentation/virtual/00-INDEX | 3 + Documentation/virtual/paravirt_ops.txt | 32 ++++++++ MAINTAINERS | 2 +- 4 files changed, 36 insertions(+), 138 deletions(-) delete mode 100644 Documentation/ia64/paravirt...
2007 Oct 15
13
[PATCH 00/12] xen/paravirt_ops patches for 2.6.24
Hi Linus, Here's a set of patches to update paravirt_ops and Xen for 2.6.24 A quick overview of the patchset: paravirt_ops: Remove the monolithic paravirt_ops structure, and replace it with smaller structures of related functions. Also, clean up the handling of lazy mode to make it easier to implement. x86/mm/init.c: remove a chunk of dead code X...