Xen-pv_ops: Xen guest implementation for paravirt_ops interface
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest34 patches 4 repliesIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/34 | Xen-pv_ops: Fix typo in sync_constant_test_bit()s name.include/ | +1 | 0 replies | |
| 2/34 | Xen-pv_ops: ignore vgacon if hardware not presentdrivers/ | +2 | 0 replies | |
| 3/34 | Xen-pv_ops: update MAINTAINERSMAINTAINERS | +22 | 0 replies | |
| 4/34 | Xen-pv_ops: use paravirt_nop to consistently mark no-op operationsarch/ include/ | +16 | 0 replies | |
| 5/34 | Xen-pv_ops: Add pagetable accessors to pack and unpack pagetable entriesarch/ arch/ include/ +4 more | +179 | 0 replies | |
| 6/34 | Xen-pv_ops: Hooks to set up initial pagetablearch/ arch/ include/ +1 more | +143 | 0 replies | |
| 7/34 | Xen-pv_ops: Allocate a fixmap slotinclude/ | +3 | 0 replies | |
| 8/34 | Xen-pv_ops: Allow paravirt backend to choose kernel PMD sharingarch/ arch/ arch/ +8 more | +105 | 0 replies | |
| 9/34 | Xen-pv_ops: add hooks to intercept mm creation and destructionarch/ include/ include/ +27 more | +96 | 0 replies | |
| 10/34 | Xen-pv_ops: Simplify smp_call_function*() by using common implementationarch/ | +102 | 1 reply | |
| 11/34 | Xen-pv_ops: Add smp_ops interfacearch/ arch/ include/ | +73 | 0 replies | |
| 12/34 | Xen-pv_ops: rename struct paravirt_patch to paravirt_patch_site for clarityarch/ arch/ include/ +1 more | +10 | 0 replies | |
| 13/34 | Xen-pv_ops: Use patch site IDs computed from offset in paravirt_ops structurearch/ arch/ arch/ +1 more | +70 | 0 replies | |
| 14/34 | Xen-pv_ops: Fix patch site clobbers to include return registerinclude/ | +2 | 0 replies | |
| 15/34 | Xen-pv_ops: Consistently wrap paravirt ops callsites to make them patchableinclude/ | +445 | 0 replies | |
| 16/34 | Xen-pv_ops: add common patching machineryarch/ arch/ include/ | +147 | 0 replies | |
| 17/34 | Xen-pv_ops: add flush_tlb_others paravirt_oparch/ arch/ include/ +1 more | +34 | 0 replies | |
| 18/34 | Xen-pv_ops: revert map_pt_hook.arch/ arch/ include/ +1 more | +6 | 0 replies | |
| 19/34 | Xen-pv_ops: add kmap_atomic_pte for mapping highpte pagesarch/ arch/ include/ +4 more | +55 | 0 replies | |
| 20/34 | Xen-pv_ops: Add apply_to_page_range() which applies a function to a pte range.include/ mm/ | +99 | 0 replies | |
| 21/34 | Xen-pv_ops: Allocate and free vmalloc areasarch/ include/ | +47 | 0 replies | |
| 22/34 | Xen-pv_ops: Add nosegneg capability to the vsyscall page notesarch/ | +28 | 0 replies | |
| 23/34 | Xen-pv_ops: Add XEN config optionsarch/ arch/ | +12 | 0 replies | |
| 24/34 | Xen-pv_ops: Add Xen interface header filesinclude/ include/ include/ +16 more | +2957 | 0 replies | |
| 25/34 | Xen-pv_ops: Core Xen implementationarch/ arch/ arch/ +22 more | +2829 | 0 replies | |
| 26/34 | Xen-pv_ops: Complete pagetable pinning for Xenarch/ arch/ arch/ +9 more | +284 | 0 replies | |
| 27/34 | Xen-pv_ops: Implement Xen clockevent devicearch/ arch/ arch/ +1 more | +225 | 0 replies | |
| 28/34 | Xen-pv_ops: Xen SMP guest supportarch/ arch/ arch/ +10 more | +650 | 3 replies | |
| 29/34 | Xen-pv_ops: Use the hvc console infrastructure for Xen consolearch/ arch/ drivers/ +3 more | +142 | 0 replies | |
| 30/34 | Xen-pv_ops: Add early printk support via hvc consolearch/ drivers/ include/ | +36 | 0 replies | |
| 31/34 | Xen-pv_ops: Add Xen grant table supportdrivers/ drivers/ include/ | +562 | 0 replies | |
| 32/34 | Xen-pv_ops: Add the Xenbus sysfs and virtual device hotplug driver.arch/ drivers/ drivers/ +9 more | +3121 | 0 replies | |
| 33/34 | Xen-pv_ops: Add Xen virtual block device driver.drivers/ drivers/ drivers/ +5 more | +1232 | 0 replies | |
| 34/34 | Xen-pv_ops: Add the Xen virtual network device driver.drivers/ drivers/ drivers/ | +1997 | 0 replies |
Reviews trailers per patch
2 of 34 patches have a Reviewed-by or Acked-by.
| Patch | William Irwin | Zachary Amsden |
|---|---|---|
| 1/34 | ||
| 2/34 | ||
| 3/34 | ||
| 4/34 | ||
| 5/34 | ||
| 6/34 | A-b | |
| 7/34 | ||
| 8/34 | ||
| 9/34 | ||
| 10/34 | ||
| 11/34 | ||
| 12/34 | ||
| 13/34 | ||
| 14/34 | ||
| 15/34 | ||
| 16/34 | ||
| 17/34 | ||
| 18/34 | ||
| 19/34 | ||
| 20/34 | ||
| 21/34 | ||
| 22/34 | A-b | |
| 23/34 | ||
| 24/34 | ||
| 25/34 | ||
| 26/34 | ||
| 27/34 | ||
| 28/34 | ||
| 29/34 | ||
| 30/34 | ||
| 31/34 | ||
| 32/34 | ||
| 33/34 | ||
| 34/34 |
Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.
Cover letter [patch 00/34] Xen-pv_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 and SMP guest support (NEW!)
* dynamic ticks (NEW!)
* writable pagetables, with late pinning/early unpinning (no shadow pagetable support)
* supports both PAE and non-PAE modes
(non-PAE may be broken at the moment)
* xen hvc console (console=hvc0)
* virtual block device (blockfront)
* virtual network device (netfront)
The patch series is in three parts:
1-2 Cleanup patches to various parts of the kernel
3-19 Extensions to the core code and/or paravirt ops, needed to support
Xen. Includes hooks into get/setting pte values and the new patching machinery.
19-34 The Xen paravirt_ops implementation itself.
(Some of the earlier patches in the series have already been posted,
but are included to make the series self-contained.)
I've tried to make each patch as self-explanatory as possible. The series is based on 2.6.21-rc3-git7.
Changes since the previous posting:
- SMP support
- Implemented xen_clockevent, so Xen is fully compatible with CONFIG_NO_HZ and HIGH_RES_TIMERS.
- Finished implementing late pinning/early unpinning of pagetables, which should now be equivalent to xen-unstable in performance.
- Add kmap_atomic_pte for mapping ptes, and therefore support for HIGHPTE
- Fixed crash on systems with >= 4G memory
- Cleanup netfront (Stephen Hemminger)
- Add MAINTAINERS entries
- Fold kill-HAVE_ARCH_MM_LIFETIME.patch into mm-lifetime-hooks.patch
- rebased
Thanks,
J