Displaying 20 results from an estimated 36 matches for "startup_paravirt".
2007 May 09
1
lguest re-review
Some concern was expressed over the lguest review status, so I shall send
the patches out again for people to review, to test, to make observations
about the author's personal appearance, etc.
I'll plan on sending these patches off to Linus in a week's time, assuming
all goes well.
Thanks.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body
2007 May 09
1
lguest re-review
Some concern was expressed over the lguest review status, so I shall send
the patches out again for people to review, to test, to make observations
about the author's personal appearance, etc.
I'll plan on sending these patches off to Linus in a week's time, assuming
all goes well.
Thanks.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body
2007 Apr 29
5
[patches] [PATCH] [21/22] x86_64: Extend bzImage protocol for relocatable bzImage
...ow I'm a little frustrated that insanity below slipped into
head.S right after the 32bit entry point after the review said
use the normal linux parameters for parameter passing.
> #ifdef CONFIG_PARAVIRT
> movl %cs, %eax
> testl $0x3, %eax
> jnz startup_paravirt
> #endif
The whole thing should be based on a value in the linux parameter block
pointed to by %esi, instead of the insane preserve all registers and
attempt to be super compatible with everyone.
Yes we do need a branch there, but no we don't need to be changing
the format w...
2007 Apr 29
5
[patches] [PATCH] [21/22] x86_64: Extend bzImage protocol for relocatable bzImage
...ow I'm a little frustrated that insanity below slipped into
head.S right after the 32bit entry point after the review said
use the normal linux parameters for parameter passing.
> #ifdef CONFIG_PARAVIRT
> movl %cs, %eax
> testl $0x3, %eax
> jnz startup_paravirt
> #endif
The whole thing should be based on a value in the linux parameter block
pointed to by %esi, instead of the insane preserve all registers and
attempt to be super compatible with everyone.
Yes we do need a branch there, but no we don't need to be changing
the format w...
2007 Apr 18
5
[RFC] First (incomplete) cut of Xen paravirt binding
I've updated the patches at
http://ozlabs.org/~rusty/paravirt/?mf=33ba6c4fce13;path=/ to carve out
the basic shape of how I see all this fitting together.
These patches implement an initial set of Xen paravirt ops, as well as
adapting head.S to set up a Xen-specific entrypoint. The head.S code
does absolutely minimal setup, and then calls xen_start_kernel(). This
installs the Xen
2007 Apr 18
0
[RFC/PATCH PV_OPS X86_64 10/17] paravirt_ops - boot changes
...y-mapped pages on setup so define __START_KERNEL to
@@ -106,6 +113,14 @@ startup_64:
* reload the page tables here.
*/
+#ifdef CONFIG_PARAVIRT
+ /* a CS ended in 0x3 indicates we're in userspace. That's where
+ * our paravirt guests run. */
+ movq %cs, %rax
+ testq $0x3, %rax
+ jnz startup_paravirt
+#endif
+
/* Enable PAE mode and PGE */
xorq %rax, %rax
btsq $5, %rax
@@ -208,10 +223,11 @@ ENTRY(early_idt_handler)
cmpl $2,early_recursion_flag(%rip)
jz 1f
incl early_recursion_flag(%rip)
- xorl %eax,%eax
movq 8(%rsp),%rsi # get rip
movq (%rsp),%rdx
- movq %cr2,%rcx
+ GET_CR2_INT...
2007 Apr 18
0
[RFC/PATCH PV_OPS X86_64 10/17] paravirt_ops - boot changes
...y-mapped pages on setup so define __START_KERNEL to
@@ -106,6 +113,14 @@ startup_64:
* reload the page tables here.
*/
+#ifdef CONFIG_PARAVIRT
+ /* a CS ended in 0x3 indicates we're in userspace. That's where
+ * our paravirt guests run. */
+ movq %cs, %rax
+ testq $0x3, %rax
+ jnz startup_paravirt
+#endif
+
/* Enable PAE mode and PGE */
xorq %rax, %rax
btsq $5, %rax
@@ -208,10 +223,11 @@ ENTRY(early_idt_handler)
cmpl $2,early_recursion_flag(%rip)
jz 1f
incl early_recursion_flag(%rip)
- xorl %eax,%eax
movq 8(%rsp),%rsi # get rip
movq (%rsp),%rdx
- movq %cr2,%rcx
+ GET_CR2_INT...
2007 Apr 18
1
[PATCH 0/10] lguest
This patch series is against 2.6.20; some things are in flux, so there
might be issues as other things flow into the latest -git tree.
>From the documentation:
Lguest is designed to be a minimal hypervisor for the Linux kernel, for
Linux developers and users to experiment with virtualization with the
minimum of complexity. Nonetheless, it should have sufficient
features to make it useful for
2007 Apr 18
1
[PATCH 0/10] lguest
This patch series is against 2.6.20; some things are in flux, so there
might be issues as other things flow into the latest -git tree.
>From the documentation:
Lguest is designed to be a minimal hypervisor for the Linux kernel, for
Linux developers and users to experiment with virtualization with the
minimum of complexity. Nonetheless, it should have sufficient
features to make it useful for
2007 Apr 18
1
[PATCH 1/7] cleanup: paravirt unhandled fallthrough
...ther paravirt_ops structs: see head.S
obj-$(CONFIG_PARAVIRT) += paravirt.o
EXTRA_AFLAGS := -traditional
diff -r 4fb7fc327801 arch/i386/kernel/head.S
--- a/arch/i386/kernel/head.S Mon Feb 12 12:37:01 2007 +1100
+++ b/arch/i386/kernel/head.S Mon Feb 12 12:54:19 2007 +1100
@@ -513,10 +513,11 @@ startup_paravirt:
pushl %ecx
pushl %eax
- /* paravirt.o is last in link, and that probe fn never returns */
pushl $__start_paravirtprobe
1:
movl 0(%esp), %eax
+ cmpl $__stop_paravirtprobe, %eax
+ je unhandled_paravirt
pushl (%eax)
movl 8(%esp), %eax
call *(%esp)
@@ -528,6 +529,10 @@ 1:
addl $4,...
2007 Apr 18
1
[PATCH 1/7] cleanup: paravirt unhandled fallthrough
...ther paravirt_ops structs: see head.S
obj-$(CONFIG_PARAVIRT) += paravirt.o
EXTRA_AFLAGS := -traditional
diff -r 4fb7fc327801 arch/i386/kernel/head.S
--- a/arch/i386/kernel/head.S Mon Feb 12 12:37:01 2007 +1100
+++ b/arch/i386/kernel/head.S Mon Feb 12 12:54:19 2007 +1100
@@ -513,10 +513,11 @@ startup_paravirt:
pushl %ecx
pushl %eax
- /* paravirt.o is last in link, and that probe fn never returns */
pushl $__start_paravirtprobe
1:
movl 0(%esp), %eax
+ cmpl $__stop_paravirtprobe, %eax
+ je unhandled_paravirt
pushl (%eax)
movl 8(%esp), %eax
call *(%esp)
@@ -528,6 +529,10 @@ 1:
addl $4,...
2007 Apr 18
0
[PATCH] paravirt_ops x86_64 , take 2
...wever, I took the opportunity to write some new less
important pieces of code, highlighting:
* proper casts in places in which macros were replaced by functions, and
the arguments happened to mismatch types.
* calling paravirt_ops functions from .S files (I lacked this last time)
* addition of the startup_paravirt function, to kick off guests (not
tested)
* fixed problems with patching
* added a new field, vsyscall_page in the paravirt_ops struct, which
allows the kernel to map a vsyscall_page on its own
* fixed vsyscall functions to avoid calling paravirt_ops functions.
__vsyscall_0 is the page to be mappe...
2007 Apr 18
0
[PATCH] paravirt_ops x86_64 , take 2
...wever, I took the opportunity to write some new less
important pieces of code, highlighting:
* proper casts in places in which macros were replaced by functions, and
the arguments happened to mismatch types.
* calling paravirt_ops functions from .S files (I lacked this last time)
* addition of the startup_paravirt function, to kick off guests (not
tested)
* fixed problems with patching
* added a new field, vsyscall_page in the paravirt_ops struct, which
allows the kernel to map a vsyscall_page on its own
* fixed vsyscall functions to avoid calling paravirt_ops functions.
__vsyscall_0 is the page to be mappe...
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
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
2007 Apr 18
20
[patch 00/20] XEN-paravirt: Xen guest implementation for paravirt_ops interface
This patch series implements the Linux Xen guest in terms of the
paravirt-ops interface. The features in implemented this patch series
are:
* domU only
* UP only (most code is SMP-safe, but there's no way to create a new vcpu)
* writable pagetables, with late pinning/early unpinning
(no shadow pagetable support)
* supports both PAE and non-PAE modes
* xen console
* virtual block
2007 Apr 18
20
[patch 00/20] XEN-paravirt: Xen guest implementation for paravirt_ops interface
This patch series implements the Linux Xen guest in terms of the
paravirt-ops interface. The features in implemented this patch series
are:
* domU only
* UP only (most code is SMP-safe, but there's no way to create a new vcpu)
* writable pagetables, with late pinning/early unpinning
(no shadow pagetable support)
* supports both PAE and non-PAE modes
* xen console
* virtual block
2007 Apr 18
20
[patch 00/20] XEN-paravirt: Xen guest implementation for paravirt_ops interface
This patch series implements the Linux Xen guest in terms of the
paravirt-ops interface. The features in implemented this patch series
are:
* domU only
* UP only (most code is SMP-safe, but there's no way to create a new vcpu)
* writable pagetables, with late pinning/early unpinning
(no shadow pagetable support)
* supports both PAE and non-PAE modes
* xen console
* virtual block
2007 Apr 18
24
[patch 00/24] Xen-paravirt_ops: Xen guest implementation for paravirt_ops interface
Hi Andi,
This patch series implements the Linux Xen guest as a paravirt_ops
backend. The features in implemented this patch series are:
* domU only
* UP only (most code is SMP-safe, but there's no way to create a new vcpu)
* writable pagetables, with late pinning/early unpinning
(no shadow pagetable support)
* supports both PAE and non-PAE modes
* xen hvc console (console=hvc0)
*
2007 Apr 18
24
[patch 00/24] Xen-paravirt_ops: Xen guest implementation for paravirt_ops interface
Hi Andi,
This patch series implements the Linux Xen guest as a paravirt_ops
backend. The features in implemented this patch series are:
* domU only
* UP only (most code is SMP-safe, but there's no way to create a new vcpu)
* writable pagetables, with late pinning/early unpinning
(no shadow pagetable support)
* supports both PAE and non-PAE modes
* xen hvc console (console=hvc0)
*