yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 00/28] ia64/xen domU paravirtualization
Hi linux/ia64 developers. Few days before Eddie posted the mail for Linux/IA64 paravirtualization. But only a few responded partially because there was no reviewable patches. Here is the patches for xen/ia64 Linux paravirtualization. The goal is to merge IA64 xen Linux paravirtualization for both domU and dom0 eventually. However the first step is to merge domU portion. As you can see from the current patchset, abstraction and many clean up must be done before merge. Before starting cleaning up, we want to discuss with linux ia64 developers. Please comment. Especially the first blocker is the paravirtualization of the hand written assembly code as Eddie already tried to discuss. The corresponding patch is "ia64/xen: xen hand written assembly code paravirtualization." NOTE: This patchset depends on another patchset which I sent out as "Xen arch portability patches." thansk, Diffstat: arch/ia64/Kconfig | 76 + arch/ia64/Makefile | 12 +- arch/ia64/configs/xen_domu_wip_defconfig | 854 ++++++++++++ arch/ia64/kernel/Makefile | 63 + arch/ia64/kernel/acpi.c | 6 + arch/ia64/kernel/asm-offsets.c | 25 + arch/ia64/kernel/entry.S | 41 +- arch/ia64/kernel/fsys.S | 41 + arch/ia64/kernel/gate.S | 55 + arch/ia64/kernel/gate.lds.S | 18 + arch/ia64/kernel/head.S | 6 + arch/ia64/kernel/iosapic.c | 89 ++- arch/ia64/kernel/irq_ia64.c | 363 +++++- arch/ia64/kernel/mca.c | 22 + arch/ia64/kernel/module.c | 32 + arch/ia64/kernel/pal.S | 5 +- arch/ia64/kernel/paravirt_alt.c | 118 ++ arch/ia64/kernel/paravirt_core.c | 201 +++ arch/ia64/kernel/paravirt_entry.c | 99 ++ arch/ia64/kernel/paravirt_nop.c | 49 + arch/ia64/kernel/paravirtentry.S | 37 + arch/ia64/kernel/patch.c | 28 + arch/ia64/kernel/salinfo.c | 44 + arch/ia64/kernel/setup.c | 121 ++ arch/ia64/kernel/smpboot.c | 4 + arch/ia64/kernel/time.c | 204 +++ arch/ia64/kernel/vmlinux.lds.S | 41 + arch/ia64/kernel/xengate-data.S | 3 + arch/ia64/mm/init.c | 22 +- arch/ia64/xen/Kconfig | 29 + arch/ia64/xen/Makefile | 11 + arch/ia64/xen/hypercall.S | 141 ++ arch/ia64/xen/hypervisor.c | 228 +++ arch/ia64/xen/machvec.c | 4 + arch/ia64/xen/paravirt_xen.c | 242 ++++ arch/ia64/xen/privops_asm.S | 221 +++ arch/ia64/xen/privops_c.c | 279 ++++ arch/ia64/xen/util.c | 101 ++ arch/ia64/xen/xcom_asm.S | 27 + arch/ia64/xen/xcom_hcall.c | 458 +++++++ arch/ia64/xen/xencomm.c | 108 ++ arch/ia64/xen/xenentry.S | 798 +++++++++++ arch/ia64/xen/xenivt.S | 2204 ++++++++++++++++++++++++++++++ arch/ia64/xen/xenminstate.h | 320 +++++ arch/ia64/xen/xenpal.S | 76 + arch/ia64/xen/xensetup.S | 50 + include/asm-ia64/gcc_intrin.h | 58 +- include/asm-ia64/hw_irq.h | 10 + include/asm-ia64/intel_intrin.h | 64 +- include/asm-ia64/intrinsics.h | 12 + include/asm-ia64/iosapic.h | 2 + include/asm-ia64/irq.h | 33 + include/asm-ia64/machvec.h | 2 + include/asm-ia64/machvec_xen.h | 22 + include/asm-ia64/meminit.h | 7 + include/asm-ia64/mmu_context.h | 6 +- include/asm-ia64/module.h | 6 + include/asm-ia64/page.h | 11 + include/asm-ia64/paravirt_alt.h | 82 ++ include/asm-ia64/paravirt_core.h | 54 + include/asm-ia64/paravirt_entry.h | 62 + include/asm-ia64/paravirt_nop.h | 46 + include/asm-ia64/privop.h | 67 + include/asm-ia64/privop_paravirt.h | 587 ++++++++ include/asm-ia64/sal.h | 36 + include/asm-ia64/sync_bitops.h | 61 + include/asm-ia64/system.h | 4 +- include/asm-ia64/xen/hypercall.h | 426 ++++++ include/asm-ia64/xen/hypervisor.h | 249 ++++ include/asm-ia64/xen/interface.h | 686 ++++++++++ include/asm-ia64/xen/page.h | 19 + include/asm-ia64/xen/privop.h | 609 +++++++++ include/asm-ia64/xen/xcom_hcall.h | 55 + include/asm-ia64/xen/xencomm.h | 33 + 74 files changed, 11190 insertions(+), 95 deletions(-) -- yamahata
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 01/28] ia64/xen: introduce ia64_set_rr0_to_rr4() to make kernel paravirtualization friendly.
An embedded and charset-unspecified text was scrubbed... Name: 0001-ia64-xen-introduce-ia64_set_rr0_to_rr4-to-make-ke.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/d0bee01b/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 02/28] ia64/xen: introduce ia64_get_psr_i() to make kernel paravirtualization friendly.
An embedded and charset-unspecified text was scrubbed... Name: 0002-ia64-xen-introduce-ia64_get_psr_i-to-make-kernel.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/654422f6/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 03/28] ia64/xen: increase IA64_MAX_RSVD_REGIONS.
An embedded and charset-unspecified text was scrubbed... Name: 0003-ia64-xen-increase-IA64_MAX_RSVD_REGIONS.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/67a23b38/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 04/28] ia64/xen: introduce synch bitops which is necessary for ia64/xen support.
An embedded and charset-unspecified text was scrubbed... Name: 0004-ia64-xen-introduce-synch-bitops-which-is-necessary.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/0e2b5e72/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 05/28] ia64/xen: import xen hypercall header file.
An embedded and charset-unspecified text was scrubbed... Name: 0005-ia64-xen-import-xen-hypercall-header-file.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/57d93238/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 06/28] ia64/xen: define xen assembler constants which will be used later.
An embedded and charset-unspecified text was scrubbed... Name: 0006-ia64-xen-define-xen-assembler-constants-which-will.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/dc8ebfda/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 07/28] ia64/xen: detect xen environment at early boot time and do minimal initialization.
An embedded and charset-unspecified text was scrubbed... Name: 0007-ia64-xen-detect-xen-environment-at-early-boot-time.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/318a1d90/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 08/28] RFC: ia64/xen: xen hand written assembly code paravirtualization.
An embedded and charset-unspecified text was scrubbed... Name: 0008-ia64-xen-xen-hand-written-assembly-code-paravirtual.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/2f0cce45/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 09/28] ia64/xen: paravirtualize pal_call_static().
An embedded and charset-unspecified text was scrubbed... Name: 0009-ia64-xen-paravirtualize-pal_call_static.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/275f21d7/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 10/28] RFC: ia64/xen: introduce xen paravirtualized intrinsic operations for privileged instruction.
An embedded and charset-unspecified text was scrubbed... Name: 0010-ia64-xen-introduce-xen-paravirtualized-intrinsic-op.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/7ba6bfbd/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 11/28] ia64: introduce basic facilities for binary patching.
An embedded and charset-unspecified text was scrubbed... Name: 0011-ia64-introduce-basic-facilities-for-binary-patching.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/d4ac420a/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 12/28] RFC: ia64/xen: xen privileged instruction intrinsics binary patching.
An embedded and charset-unspecified text was scrubbed... Name: 0012-ia64-xen-xen-privileged-instruction-intrinsics-bina.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/0990566d/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 13/28] ia64/xen: introduce xen hypercall routines necessary for domU.
An embedded and charset-unspecified text was scrubbed... Name: 0013-ia64-xen-introduce-xen-hypercall-routines-necessary.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/b8c6ab46/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 14/28] ia64/xen: ia64 domU part of xencomm.
An embedded and charset-unspecified text was scrubbed... Name: 0014-ia64-xen-ia64-domU-part-of-xencomm.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/00505962/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 15/28] ia64/xen: define xen_alloc_vm_area()/xen_free_vm_area() for ia64 arch.
An embedded and charset-unspecified text was scrubbed... Name: 0015-ia64-xen-define-xen_alloc_vm_area-xen_free_vm_are.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/571109d1/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 16/28] ia64/xen: basic helper routines for xen/ia64.
An embedded and charset-unspecified text was scrubbed... Name: 0016-ia64-xen-basic-helper-routines-for-xen-ia64.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/256b13d0/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 17/28] ia64/xen: domU initialization code.
An embedded and charset-unspecified text was scrubbed... Name: 0017-ia64-xen-domU-initialization-code.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/557d1d32/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 18/28] ia64/xen: iosapic paravirtualization
An embedded and charset-unspecified text was scrubbed... Name: 0018-ia64-xen-iosapic-paravirtualization.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/dd436868/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 19/28] ia64/xen: xen domU irq chip introducing some helper functions, xen_send_ipi.
An embedded and charset-unspecified text was scrubbed... Name: 0019-ia64-xen-xen-domU-irq-chip-introducing-some-helper.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/9b62c589/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 20/28] ia64/xen: domU xen machine vector without dma api.
An embedded and charset-unspecified text was scrubbed... Name: 0020-ia64-xen-domU-xen-machine-vector-without-dma-api.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/95bbea00/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 21/28] ia64/xen: define xen related address conversion helper functions for domU
An embedded and charset-unspecified text was scrubbed... Name: 0021-ia64-xen-define-xen-related-address-conversion-help.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/004b801b/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 22/28] ia64/xen: mca paravirtualization
An embedded and charset-unspecified text was scrubbed... Name: 0022-ia64-xen-mca-paravirtualization.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/0cb35132/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 23/28] ia64/xen: sal paravirtualization.
An embedded and charset-unspecified text was scrubbed... Name: 0023-ia64-xen-sal-paravirtualization.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/81cf6d04/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 24/28] ia64/xen: time paravirtualization
An embedded and charset-unspecified text was scrubbed... Name: 0024-ia64-xen-time-paravirtualization.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/d95f1c3e/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 25/28] ia64/xen: gate page paravirtualization
An embedded and charset-unspecified text was scrubbed... Name: 0025-ia64-xen-gate-page-paravirtualization.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/a31834e1/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 26/28] ia64/xen: fsys paravirtualization.
An embedded and charset-unspecified text was scrubbed... Name: 0026-ia64-xen-fsys-paravirtualization.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/f8465a93/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 27/28] ia64/xen: update Kconfig to allow xen domU Linux
An embedded and charset-unspecified text was scrubbed... Name: 0027-ia64-xen-update-Kconfig-to-allow-xen-domU-Linux.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/13636f21/attachment.txt
yamahata at valinux.co.jp
2008-Feb-21 09:17 UTC
[PATCH 28/28] ia64/xen: add ia64/xen domU config.
An embedded and charset-unspecified text was scrubbed... Name: 0028-ia64-xen-add-ia64-xen-domU-config.patch Url: http://lists.linux-foundation.org/pipermail/virtualization/attachments/20080221/9d9aa2e0/attachment.txt