Skip to content

xen: Xen implementation for paravirt_ops

Jeremy Fitzhardinge lkml netdev virtualization xen-devel 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest28 patches 4 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/28xen: Allocate and free vmalloc areasinclude/linux/vmalloc.h mm/vmalloc.c+57 -00 replies
2/28xen: Add nosegneg capability to the vsyscall page notesarch/i386/kernel/vsyscall-note.S include/asm-i386/elf.h+33 -42 replies
3/28xen: Add Xen interface header filesinclude/asm-i386/xen/hypercall.h include/asm-i386/xen/hypervisor.h include/asm-i386/xen/interface.h +16 more+3041 -00 replies
4/28xen: Core Xen implementationarch/i386/Makefile arch/i386/kernel/entry.S arch/i386/kernel/head.S +13 more+1334 -10 replies
5/28xen: Xen virtual mmuarch/i386/xen/Makefile arch/i386/xen/enlighten.c arch/i386/xen/mmu.c +1 more+493 -50 replies
6/28xen: xen event channelsarch/i386/xen/Makefile arch/i386/xen/enlighten.c arch/i386/xen/events.c +1 more+542 -10 replies
7/28xen: xen time implementationarch/i386/xen/Makefile arch/i386/xen/enlighten.c arch/i386/xen/time.c+409 -10 replies
8/28xen: xen configurationarch/i386/Kconfig arch/i386/xen/Kconfig+13 -00 replies
9/28xen: Complete pagetable pinning for Xenarch/i386/kernel/setup.c arch/i386/kernel/vmi.c arch/i386/mm/init.c +9 more+289 -1430 replies
10/28xen: ignore RW mapping of RO pages in pagetable_initarch/i386/xen/enlighten.c+25 -20 replies
11/28xen: fix multicall batchingarch/i386/xen/enlighten.c arch/i386/xen/mmu.c arch/i386/xen/multicalls.c +2 more+71 -320 replies
12/28xen: Account for time stolen by Xenarch/i386/xen/time.c+105 -10 replies
13/28xen: Implement xen_sched_clockarch/i386/xen/enlighten.c arch/i386/xen/time.c arch/i386/xen/xen-ops.h+23 -40 replies
14/28xen: Xen SMP guest supportarch/i386/kernel/smp.c arch/i386/kernel/smpboot.c arch/i386/xen/Kconfig +13 more+715 -650 replies
15/28xen: Add support for preemptionarch/i386/xen/Kconfig arch/i386/xen/enlighten.c arch/i386/xen/mmu.c +2 more+89 -550 replies
16/28xen: lazy-mmu operationsarch/i386/xen/enlighten.c arch/i386/xen/mmu.c arch/i386/xen/multicalls.c+78 -380 replies
17/28xen: deal with negative stolen timearch/i386/xen/smp.c arch/i386/xen/time.c arch/i386/xen/xen-ops.h+83 -360 replies
18/28xen: Use the hvc console infrastructure for Xen consolearch/i386/xen/events.c drivers/Makefile drivers/char/Kconfig +3 more+149 -10 replies
19/28xen: Add early printk support via hvc consolearch/x86_64/kernel/early_printk.c drivers/char/hvc_xen.c drivers/xen/Makefile +1 more+37 -02 replies
20/28xen: Add Xen grant table supportdrivers/xen/Makefile drivers/xen/grant-table.c include/xen/grant_table.h +1 more+777 -190 replies
21/28xen: Add the Xenbus sysfs and virtual device hotplug driver.drivers/xen/Makefile drivers/xen/xenbus/Makefile drivers/xen/xenbus/xenbus_client.c +7 more+2961 -00 replies
22/28xen: Add Xen virtual block device driver.drivers/block/Kconfig drivers/block/Makefile drivers/block/xen-blkfront.c +2 more+1001 -40 replies
23/28xen: rename xen netif_ structures to xen_netif_include/xen/interface/io/netif.h+11 -70 replies
24/28xen: Add the Xen virtual network device driver.drivers/net/Kconfig drivers/net/Makefile drivers/net/xen-netfront.c+2009 -00 replies
25/28xen: Xen machine operationsarch/i386/xen/enlighten.c arch/i386/xen/smp.c+44 -30 replies
26/28xen: handle external requests for shutdown, reboot and sysrqarch/i386/xen/Makefile arch/i386/xen/manage.c+144 -10 replies
27/28xen: Place vcpu_info structure into per-cpu memory, if possiblearch/i386/xen/enlighten.c arch/i386/xen/setup.c include/xen/interface/vcpu.h+133 -90 replies
28/28xen: Attempt to patch inline versions of common operationsarch/i386/kernel/asm-offsets.c arch/i386/xen/Makefile arch/i386/xen/enlighten.c +2 more+190 -540 replies

Reviews trailers per patch

11 of 28 patches have a Reviewed-by or Acked-by.

PatchZachary AmsdenChris WrightOlof JohanssonIngo Molnar
1/28
2/28A-b
3/28
4/28
5/28
6/28
7/28
8/28
9/28
10/28A-b
11/28A-b
12/28A-b
13/28A-b
14/28
15/28A-b
16/28A-b
17/28A-b
18/28A-b
19/28A-b
20/28
21/28
22/28
23/28
24/28
25/28A-b
26/28
27/28
28/28

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes. Scroll the table sideways for all 4 reviewers.

Read the v1 thread

Cover letter [patch 00/28]xen: Xen implementation for paravirt_ops

Hi Andi,

This series of patches implements the Xen paravirt-ops interface. It applies to 2.6.21-git13 + patches-2.6.21-git7-070507-1.tar.gz (I think "unwinder" is the only patch which doesn't apply to git13, and the sched-clock patches are the only ones which this series actually needs).

Changes since the last posting:
- More netfront review and cleanup
- Added ability to cleanly halt/reboot guests from outside the domain.
- Folded bugfix patches into their main patch
- Lots of little style and other cleanups

These patches are now moderately well tested, with several successful runs through XenSource's regression test suite, and some amount of non-me testing. While I wouldn't go into production with a xen/paravirt_ops kernel right now, it does seem pretty functional.

This series generally restricts itself to Xen-specific parts of the tree, though it does make a few small changes elsewhere.

It includes:
- some helper routines for allocating address space and walking pagetables
- Xen interface header files
- Core Xen implementation (boot, mmu, events, time)
- Efficient late-pinning/early-unpinning pagetable handling
- Virtualized time, including stolen time
- SMP support
- Preemption support
- Batched pagetable updates
- Xen console, based on hvc console
- Xenbus
- Netfront, the paravirtualized network device
- Blockfront, the paravirtualized block device

Thanks,
J