search for: hypervisor_update_descriptor

Displaying 20 results from an estimated 38 matches for "hypervisor_update_descriptor".

2007 Apr 18
1
Descriptor table patches integrated
...ting with my (still in progress!) Linux LDT test suite. First interface quirk came up. It looks like Xen wants to return errors from hypercalls: +static inline int install_ldt_entry (__u32 *lp, __u32 entry_1, __u32 entry_2) +{ + unsigned long mach_lp = arbitrary_virt_to_machine(lp); + + return HYPERVISOR_update_descriptor(mach_lp, entry_1, entry_2); +} While this is fine here, this could be problematic in terms of forcing error checking in lots of situations where there used to be no error checking in regular Linux - i.e. GDT updates which fail really are fatal to the guest, and we don't want to pepper the b...
2007 Apr 18
1
Descriptor table patches integrated
...ting with my (still in progress!) Linux LDT test suite. First interface quirk came up. It looks like Xen wants to return errors from hypercalls: +static inline int install_ldt_entry (__u32 *lp, __u32 entry_1, __u32 entry_2) +{ + unsigned long mach_lp = arbitrary_virt_to_machine(lp); + + return HYPERVISOR_update_descriptor(mach_lp, entry_1, entry_2); +} While this is fine here, this could be problematic in terms of forcing error checking in lots of situations where there used to be no error checking in regular Linux - i.e. GDT updates which fail really are fatal to the guest, and we don't want to pepper the b...
2007 Apr 18
0
[PATCH 12/12] xen-ldt
...>context.pinned) { + spin_lock(&mm_unpinned_lock); + list_del(&mm->context.unpinned); + spin_unlock(&mm_unpinned_lock); + } +} + +static inline int install_ldt_entry (__u32 *lp, __u32 entry_1, __u32 entry_2) +{ + unsigned long mach_lp = arbitrary_virt_to_machine(lp); + + return HYPERVISOR_update_descriptor(mach_lp, entry_1, entry_2); +} + +#endif /* __ASM_HYPERVISOR_HOOKS_H */
2007 Apr 18
0
[PATCH 12/12] xen-ldt
...>context.pinned) { + spin_lock(&mm_unpinned_lock); + list_del(&mm->context.unpinned); + spin_unlock(&mm_unpinned_lock); + } +} + +static inline int install_ldt_entry (__u32 *lp, __u32 entry_1, __u32 entry_2) +{ + unsigned long mach_lp = arbitrary_virt_to_machine(lp); + + return HYPERVISOR_update_descriptor(mach_lp, entry_1, entry_2); +} + +#endif /* __ASM_HYPERVISOR_HOOKS_H */
2007 Apr 18
2
[PATCH 12/12; UPDATED] xen-ldt
...mach_desc.h 2005-08-08 21:19:43.000000000 -0700 @@ -0,0 +1,11 @@ +#ifndef __MACH_DESC_H +#define __MACH_DESC_H + +static inline void write_ldt_entry (struct desc_struct *ldt, int entry, __u32 entry_1, __u32 entry_2) +{ + unsigned long mach_lp = arbitrary_virt_to_machine(&ldt[entry]); + + return HYPERVISOR_update_descriptor(mach_lp, entry_1, entry_2); +} + +#endif
2007 Apr 18
2
[PATCH 12/12; UPDATED] xen-ldt
...mach_desc.h 2005-08-08 21:19:43.000000000 -0700 @@ -0,0 +1,11 @@ +#ifndef __MACH_DESC_H +#define __MACH_DESC_H + +static inline void write_ldt_entry (struct desc_struct *ldt, int entry, __u32 entry_1, __u32 entry_2) +{ + unsigned long mach_lp = arbitrary_virt_to_machine(&ldt[entry]); + + return HYPERVISOR_update_descriptor(mach_lp, entry_1, entry_2); +} + +#endif
2007 Apr 18
2
paravirt & xen & SMP
Hi, Anyone has this working? Looks like there is a chicken-and-egg issue with pda setup: * xen_load_gdt() uses multicalls, thus depends on cpu-specific variables (per-cpu mc buffer) which in turn requires pda being setup already. * pda setup can't be done before xen_load_gdt() ... Next question while looking at xen_load_gdt(): why does it use multicalls in the first place?
2007 Apr 18
2
paravirt & xen & SMP
Hi, Anyone has this working? Looks like there is a chicken-and-egg issue with pda setup: * xen_load_gdt() uses multicalls, thus depends on cpu-specific variables (per-cpu mc buffer) which in turn requires pda being setup already. * pda setup can't be done before xen_load_gdt() ... Next question while looking at xen_load_gdt(): why does it use multicalls in the first place?
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) *
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
25
[patch 00/21] Xen-paravirt: Xen guest implementation for paravirt_ops interface
Hi Andi, 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
2007 Apr 18
25
[patch 00/21] Xen-paravirt: Xen guest implementation for paravirt_ops interface
Hi Andi, 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
2007 Apr 18
25
[patch 00/21] Xen-paravirt: Xen guest implementation for paravirt_ops interface
Hi Andi, 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
2007 Apr 23
27
[PATCH 00/25] xen: Xen implementation for paravirt_ops
Hi Andi, This series of patches implements the Xen paravirt-ops interface. It applies to 2.6.21-rc7 + your patches + the last batch of pv_ops patches I posted. This patch generally restricts itself to Xen-specific parts of the tree, though it does make a few small changes elsewhere. These patches include: - some helper routines for allocating address space and walking pagetables - Xen
2007 Apr 23
27
[PATCH 00/25] xen: Xen implementation for paravirt_ops
Hi Andi, This series of patches implements the Xen paravirt-ops interface. It applies to 2.6.21-rc7 + your patches + the last batch of pv_ops patches I posted. This patch generally restricts itself to Xen-specific parts of the tree, though it does make a few small changes elsewhere. These patches include: - some helper routines for allocating address space and walking pagetables - Xen
2007 Apr 18
34
[patch 00/26] 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) *