[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[SCM] GNU Mach branch, master, updated. 55dbc2b5d857d35262ad3116803dfb31
From: |
Samuel Thibault |
Subject: |
[SCM] GNU Mach branch, master, updated. 55dbc2b5d857d35262ad3116803dfb31b733d031 |
Date: |
Wed, 16 Dec 2009 00:12:39 +0000 |
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Mach".
The branch, master has been updated
via 55dbc2b5d857d35262ad3116803dfb31b733d031 (commit)
from 870925205c78415dc4c594bfae9de8eb31745b81 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 55dbc2b5d857d35262ad3116803dfb31b733d031
Author: Samuel Thibault <address@hidden>
Date: Wed Dec 16 01:11:51 2009 +0100
Add Xen support
2009-03-11 Samuel Thibault <address@hidden>
* i386/i386/vm_param.h (VM_MIN_KERNEL_ADDRESS) [MACH_XEN]: Set to
0x20000000.
* i386/i386/i386asm.sym (pfn_list) [VM_MIN_KERNEL_ADDRESS ==
LINEAR_MIN_KERNEL_ADDRESS]: Define to constant PFN_LIST.
2009-02-27 Samuel Thibault <address@hidden>
* i386/intel/pmap.c [MACH_HYP] (INVALIDATE_TLB): Call hyp_invlpg
instead of flush_tlb when e - s is compile-time known to be
PAGE_SIZE.
2008-11-27 Samuel Thibault <address@hidden>
* i386/configfrag.ac (enable_pae): Enable by default on the Xen
platform.
2007-11-14 Samuel Thibault <address@hidden>
* i386/i386at/model_dep.c (machine_relax): New function.
(c_boot_entry): Refuse to boot as dom0.
2007-10-17 Samuel Thibault <address@hidden>
* i386/i386/fpu.c [MACH_XEN]: Disable unused fpintr().
2007-08-12 Samuel Thibault <address@hidden>
* Makefile.am (clib_routines): Add _START.
* i386/xen/xen_boothdr: Use _START for VIRT_BASE and PADDR_OFFSET. Add
GUEST_VERSION and XEN_ELFNOTE_FEATURES.
2007-06-13 Samuel Thibault <address@hidden>
* i386/i386/user_ldt.h (user_ldt) [MACH_XEN]: Add alloc field.
* i386/i386/user_ldt.c (i386_set_ldt) [MACH_XEN]: Round allocation of
LDT to a page, set back LDT pages read/write before freeing them.
(user_ldt_free) [MACH_XEN]: Likewise.
2007-04-18 Samuel Thibault <address@hidden>
* device/ds_routines.c [MACH_HYP]: Add hypervisor block and net devices.
2007-02-19 Thomas Schwinge <address@hidden>
* i386/xen/Makefrag.am [PLATFORM_xen] (gnumach_LINKFLAGS): Define.
* Makefrag.am: Include `xen/Makefrag.am'.
* configure.ac: Include `xen/configfrag.ac'.
(--enable-platform): Support the `xen' platform.
* i386/configfrag.ac: Likewise.
* i386/Makefrag.am [PLATFORM_xen]: Include `i386/xen/Makefrag.am'.
2007-02-19 Samuel Thibault <address@hidden>
Thomas Schwinge <address@hidden>
* i386/xen/Makefrag.am: New file.
* xen/Makefrag.am: Likewise.
* xen/configfrag.ac: Likewise.
2007-02-11 (and later dates) Samuel Thibault <address@hidden>
Xen support
* Makefile.am (clib_routines): Add _start.
* Makefrag.am (include_mach_HEADERS): Add include/mach/xen.h.
* device/cons.c (cnputc): Call hyp_console_write.
* i386/Makefrag.am (libkernel_a_SOURCES): Move non-Xen source to
[PLATFORM_at].
* i386/i386/debug_trace.S: Include <i386/xen.h>
* i386/i386/fpu.c [MACH_HYP] (init_fpu): Call set_ts() and clear_ts(),
do not enable CR0_EM.
* i386/i386/gdt.c: Include <mach/xen.h> and <intel/pmap.h>.
[MACH_XEN]: Make gdt array extern.
[MACH_XEN] (gdt_init): Register gdt with hypervisor. Request 4gb
segments assist. Shift la_shift.
[MACH_PSEUDO_PHYS] (gdt_init): Shift pfn_list.
* i386/i386/gdt.h [MACH_XEN]: Don't define KERNEL_LDT and LINEAR_DS.
* i386/i386/i386asm.sym: Include <i386/xen.h>.
[MACH_XEN]: Remove KERNEL_LDT, Add shared_info's CPU_CLI, CPU_PENDING,
CPU_PENDING_SEL, PENDING, EVTMASK and CR2.
* i386/i386/idt.c [MACH_HYP] (idt_init): Register trap table with
hypervisor.
* i386/i386/idt_inittab.S: Include <i386/i386asm.h>.
[MACH_XEN]: Set IDT_ENTRY() for hypervisor. Set trap table terminator.
* i386/i386/ktss.c [MACH_XEN] (ktss_init): Request exception task switch
from hypervisor.
* i386/i386/ldt.c: Include <mach/xen.h> and <intel/pmap.h>
[MACH_XEN]: Make ldt array extern.
[MACH_XEN] (ldt_init): Set ldt readwrite.
[MACH_HYP] (ldt_init): Register ldt with hypervisor.
* i386/i386/locore.S: Include <i386/xen.h>. Handle KERNEL_RING == 1
case.
[MACH_XEN]: Read hyp_shared_info's CR2 instead of %cr2.
[MACH_PSEUDO_PHYS]: Add mfn_to_pfn computation.
[MACH_HYP]: Drop Cyrix I/O-based detection. Read cr3 instead of %cr3.
Make hypervisor call for pte invalidation.
* i386/i386/mp_desc.c: Include <mach/xen.h>.
[MACH_HYP] (mp_desc_init): Panic.
* i386/i386/pcb.c: Include <mach/xen.h>.
[MACH_XEN] (switch_ktss): Request stack switch from hypervisor.
[MACH_HYP] (switch_ktss): Request ldt and gdt switch from hypervisor.
* i386/i386/phys.c: Include <mach/xen.h>
[MACH_PSEUDO_PHYS] (kvtophys): Do page translation.
* i386/i386/proc_reg.h [MACH_HYP] (cr3): New declaration.
(set_cr3, get_cr3, set_ts, clear_ts): Implement macros.
* i386/i386/seg.h [MACH_HYP]: Define KERNEL_RING macro. Include
<mach/xen.h>
[MACH_XEN] (fill_descriptor): Register descriptor with hypervisor.
* i386/i386/spl.S: Include <i386/xen.h> and <i386/i386/asm.h>
[MACH_XEN] (pic_mask): #define to int_mask.
[MACH_XEN] (SETMASK): Implement.
* i386/i386/vm_param.h [MACH_XEN] (HYP_VIRT_START): New macro.
[MACH_XEN]: Set VM_MAX_KERNEL_ADDRESS to HYP_VIRT_START-
LINEAR_MIN_KERNEL_ADDRESS + VM_MIN_KERNEL_ADDRESS. Increase
KERNEL_STACK_SIZE and INTSTACK_SIZE to 4 pages.
* i386/i386at/conf.c [MACH_HYP]: Remove hardware devices, add hypervisor
console device.
* i386/i386at/cons_conf.c [MACH_HYP]: Add hypervisor console device.
* i386/i386at/model_dep.c: Include <sys/types.h>, <mach/xen.h>.
[MACH_XEN] Include <xen/console.h>, <xen/store.h>, <xen/evt.h>,
<xen/xen.h>.
[MACH_PSEUDO_PHYS]: New boot_info, mfn_list, pfn_list variables.
[MACH_XEN]: New la_shift variable.
[MACH_HYP] (avail_next, mem_size_init): Drop BIOS skipping mecanism.
[MACH_HYP] (machine_init): Call hyp_init(), drop hardware
initialization.
[MACH_HYP] (machine_idle): Call hyp_idle().
[MACH_HYP] (halt_cpu): Call hyp_halt().
[MACH_HYP] (halt_all_cpus): Call hyp_reboot() or hyp_halt().
[MACH_HYP] (i386at_init): Initialize with hypervisor.
[MACH_XEN] (c_boot_entry): Add Xen-specific initialization.
[MACH_HYP] (init_alloc_aligned, pmap_valid_page): Drop zones skipping
mecanism.
* i386/intel/pmap.c: Include <mach/xen.h>.
[MACH_PSEUDO_PHYS] (WRITE_PTE): Do page translation.
[MACH_HYP] (INVALIDATE_TLB): Request invalidation from hypervisor.
[MACH_XEN] (pmap_map_bd, pmap_create, pmap_destroy, pmap_remove_range)
(pmap_page_protect, pmap_protect, pmap_enter, pmap_change_wiring)
(pmap_attribute_clear, pmap_unmap_page_zero, pmap_collect): Request MMU
update from hypervisor.
[MACH_XEN] (pmap_bootstrap): Request pagetable initialization from
hypervisor.
[MACH_XEN] (pmap_set_page_readwrite, pmap_set_page_readonly)
(pmap_set_page_readonly_init, pmap_clear_bootstrap_pagetable)
(pmap_map_mfn): New functions.
* i386/intel/pmap.h [MACH_XEN] (INTEL_PTE_GLOBAL): Disable global page
support.
[MACH_PSEUDO_PHYS] (pte_to_pa): Do page translation.
[MACH_XEN] (pmap_set_page_readwrite, pmap_set_page_readonly)
(pmap_set_page_readonly_init, pmap_clear_bootstrap_pagetable)
(pmap_map_mfn): Declare functions.
* i386/i386/xen.h: New file.
* i386/xen/xen.c: New file.
* i386/xen/xen_boothdr.S: New file.
* i386/xen/xen_locore.S: New file.
* include/mach/xen.h: New file.
* kern/bootstrap.c [MACH_XEN] (boot_info): Declare variable.
[MACH_XEN] (bootstrap_create): Rebase multiboot header.
* kern/debug.c: Include <mach/xen.h>.
[MACH_HYP] (panic): Call hyp_crash() without delay.
* linux/dev/include/asm-i386/segment.h [MACH_HYP] (KERNEL_CS)
(KERNEL_DS): Use ring 1.
* xen/block.c: New file.
* xen/block.h: Likewise.
* xen/console.c: Likewise.
* xen/console.h: Likewise.
* xen/evt.c: Likewise.
* xen/evt.h: Likewise.
* xen/grant.c: Likewise.
* xen/grant.h: Likewise.
* xen/net.c: Likewise.
* xen/net.h: Likewise.
* xen/ring.c: Likewise.
* xen/ring.h: Likewise.
* xen/store.c: Likewise.
* xen/store.h: Likewise.
* xen/time.c: Likewise.
* xen/time.h: Likewise.
* xen/xen.c: Likewise.
* xen/xen.h: Likewise.
* xen/public/COPYING: Import file from Xen.
* xen/public/callback.h: Likewise.
* xen/public/dom0_ops.h: Likewise.
* xen/public/domctl.h: Likewise.
* xen/public/elfnote.h: Likewise.
* xen/public/elfstructs.h: Likewise.
* xen/public/event_channel.h: Likewise.
* xen/public/features.h: Likewise.
* xen/public/grant_table.h: Likewise.
* xen/public/kexec.h: Likewise.
* xen/public/libelf.h: Likewise.
* xen/public/memory.h: Likewise.
* xen/public/nmi.h: Likewise.
* xen/public/physdev.h: Likewise.
* xen/public/platform.h: Likewise.
* xen/public/sched.h: Likewise.
* xen/public/sysctl.h: Likewise.
* xen/public/trace.h: Likewise.
* xen/public/vcpu.h: Likewise.
* xen/public/version.h: Likewise.
* xen/public/xen-compat.h: Likewise.
* xen/public/xen.h: Likewise.
* xen/public/xencomm.h: Likewise.
* xen/public/xenoprof.h: Likewise.
* xen/public/arch-x86/xen-mca.h: Likewise.
* xen/public/arch-x86/xen-x86_32.h: Likewise.
* xen/public/arch-x86/xen-x86_64.h: Likewise.
* xen/public/arch-x86/xen.h: Likewise.
* xen/public/arch-x86_32.h: Likewise.
* xen/public/arch-x86_64.h: Likewise.
* xen/public/io/blkif.h: Likewise.
* xen/public/io/console.h: Likewise.
* xen/public/io/fbif.h: Likewise.
* xen/public/io/fsif.h: Likewise.
* xen/public/io/kbdif.h: Likewise.
* xen/public/io/netif.h: Likewise.
* xen/public/io/pciif.h: Likewise.
* xen/public/io/protocols.h: Likewise.
* xen/public/io/ring.h: Likewise.
* xen/public/io/tpmif.h: Likewise.
* xen/public/io/xenbus.h: Likewise.
* xen/public/io/xs_wire.h: Likewise.
-----------------------------------------------------------------------
Summary of changes:
Makefile.am | 2 +-
Makefrag.am | 8 +-
configure.ac | 10 +-
device/cons.c | 9 +
device/ds_routines.c | 8 +
doc/mach.texi | 4 +-
i386/Makefrag.am | 47 ++-
i386/configfrag.ac | 12 +-
i386/i386/debug_trace.S | 1 +
i386/i386/fpu.c | 15 +-
i386/i386/gdt.c | 27 ++
i386/i386/gdt.h | 4 +
i386/i386/i386asm.sym | 15 +
i386/i386/idt.c | 5 +
i386/i386/idt_inittab.S | 16 +-
i386/i386/ktss.c | 7 +
i386/i386/ldt.c | 15 +
i386/i386/locore.S | 50 +++-
i386/i386/mp_desc.c | 5 +
i386/i386/pcb.c | 31 ++
i386/i386/phys.c | 7 +-
i386/i386/proc_reg.h | 22 ++
i386/i386/seg.h | 18 +-
i386/i386/spl.S | 18 +
i386/i386/trap.c | 5 +-
i386/i386/user_ldt.c | 27 ++
i386/i386/user_ldt.h | 3 +
i386/i386/vm_param.h | 25 ++-
i386/i386/xen.h | 357 ++++++++++++++++++
i386/i386at/conf.c | 21 +
i386/i386at/cons_conf.c | 8 +
i386/i386at/model_dep.c | 180 ++++++++-
i386/intel/pmap.c | 388 +++++++++++++++++++-
i386/intel/pmap.h | 17 +
i386/xen/Makefrag.am | 33 ++
i386/xen/xen.c | 77 ++++
i386/xen/xen_boothdr.S | 167 ++++++++
i386/xen/xen_locore.S | 110 ++++++
include/mach/xen.h | 80 ++++
kern/bootstrap.c | 20 +-
kern/debug.c | 6 +
linux/dev/include/asm-i386/segment.h | 5 +
xen/Makefrag.am | 32 ++
xen/block.c | 689 ++++++++++++++++++++++++++++++++++
xen/block.h | 24 ++
xen/configfrag.ac | 44 +++
xen/console.c | 234 ++++++++++++
xen/console.h | 33 ++
xen/evt.c | 109 ++++++
xen/evt.h | 29 ++
xen/grant.c | 142 +++++++
xen/grant.h | 33 ++
xen/net.c | 665 ++++++++++++++++++++++++++++++++
xen/net.h | 24 ++
xen/public/COPYING | 38 ++
xen/public/arch-x86/xen-mca.h | 279 ++++++++++++++
xen/public/arch-x86/xen-x86_32.h | 180 +++++++++
xen/public/arch-x86/xen-x86_64.h | 212 +++++++++++
xen/public/arch-x86/xen.h | 204 ++++++++++
xen/public/arch-x86_32.h | 27 ++
xen/public/arch-x86_64.h | 27 ++
xen/public/callback.h | 121 ++++++
xen/public/dom0_ops.h | 120 ++++++
xen/public/domctl.h | 680 +++++++++++++++++++++++++++++++++
xen/public/elfnote.h | 233 ++++++++++++
xen/public/elfstructs.h | 527 ++++++++++++++++++++++++++
xen/public/event_channel.h | 264 +++++++++++++
xen/public/features.h | 83 ++++
xen/public/grant_table.h | 438 +++++++++++++++++++++
xen/public/io/blkif.h | 141 +++++++
xen/public/io/console.h | 51 +++
xen/public/io/fbif.h | 176 +++++++++
xen/public/io/fsif.h | 191 ++++++++++
xen/public/io/kbdif.h | 132 +++++++
xen/public/io/netif.h | 205 ++++++++++
xen/public/io/pciif.h | 101 +++++
xen/public/io/protocols.h | 40 ++
xen/public/io/ring.h | 307 +++++++++++++++
xen/public/io/tpmif.h | 77 ++++
xen/public/io/xenbus.h | 80 ++++
xen/public/io/xs_wire.h | 132 +++++++
xen/public/kexec.h | 189 ++++++++++
xen/public/libelf.h | 265 +++++++++++++
xen/public/memory.h | 312 +++++++++++++++
xen/public/nmi.h | 78 ++++
xen/public/physdev.h | 219 +++++++++++
xen/public/platform.h | 346 +++++++++++++++++
xen/public/sched.h | 121 ++++++
xen/public/sysctl.h | 308 +++++++++++++++
xen/public/trace.h | 206 ++++++++++
xen/public/vcpu.h | 213 +++++++++++
xen/public/version.h | 91 +++++
xen/public/xen-compat.h | 44 +++
xen/public/xen.h | 657 ++++++++++++++++++++++++++++++++
xen/public/xencomm.h | 41 ++
xen/public/xenoprof.h | 138 +++++++
xen/ring.c | 61 +++
xen/ring.h | 34 ++
xen/store.c | 334 ++++++++++++++++
xen/store.h | 54 +++
xen/time.c | 148 ++++++++
xen/time.h | 25 ++
xen/xen.c | 87 +++++
xen/xen.h | 27 ++
104 files changed, 12952 insertions(+), 55 deletions(-)
create mode 100644 i386/i386/xen.h
create mode 100644 i386/xen/Makefrag.am
create mode 100644 i386/xen/xen.c
create mode 100644 i386/xen/xen_boothdr.S
create mode 100644 i386/xen/xen_locore.S
create mode 100644 include/mach/xen.h
create mode 100644 xen/Makefrag.am
create mode 100644 xen/block.c
create mode 100644 xen/block.h
create mode 100644 xen/configfrag.ac
create mode 100644 xen/console.c
create mode 100644 xen/console.h
create mode 100644 xen/evt.c
create mode 100644 xen/evt.h
create mode 100644 xen/grant.c
create mode 100644 xen/grant.h
create mode 100644 xen/net.c
create mode 100644 xen/net.h
create mode 100644 xen/public/COPYING
create mode 100644 xen/public/arch-x86/xen-mca.h
create mode 100644 xen/public/arch-x86/xen-x86_32.h
create mode 100644 xen/public/arch-x86/xen-x86_64.h
create mode 100644 xen/public/arch-x86/xen.h
create mode 100644 xen/public/arch-x86_32.h
create mode 100644 xen/public/arch-x86_64.h
create mode 100644 xen/public/callback.h
create mode 100644 xen/public/dom0_ops.h
create mode 100644 xen/public/domctl.h
create mode 100644 xen/public/elfnote.h
create mode 100644 xen/public/elfstructs.h
create mode 100644 xen/public/event_channel.h
create mode 100644 xen/public/features.h
create mode 100644 xen/public/grant_table.h
create mode 100644 xen/public/io/blkif.h
create mode 100644 xen/public/io/console.h
create mode 100644 xen/public/io/fbif.h
create mode 100644 xen/public/io/fsif.h
create mode 100644 xen/public/io/kbdif.h
create mode 100644 xen/public/io/netif.h
create mode 100644 xen/public/io/pciif.h
create mode 100644 xen/public/io/protocols.h
create mode 100644 xen/public/io/ring.h
create mode 100644 xen/public/io/tpmif.h
create mode 100644 xen/public/io/xenbus.h
create mode 100644 xen/public/io/xs_wire.h
create mode 100644 xen/public/kexec.h
create mode 100644 xen/public/libelf.h
create mode 100644 xen/public/memory.h
create mode 100644 xen/public/nmi.h
create mode 100644 xen/public/physdev.h
create mode 100644 xen/public/platform.h
create mode 100644 xen/public/sched.h
create mode 100644 xen/public/sysctl.h
create mode 100644 xen/public/trace.h
create mode 100644 xen/public/vcpu.h
create mode 100644 xen/public/version.h
create mode 100644 xen/public/xen-compat.h
create mode 100644 xen/public/xen.h
create mode 100644 xen/public/xencomm.h
create mode 100644 xen/public/xenoprof.h
create mode 100644 xen/ring.c
create mode 100644 xen/ring.h
create mode 100644 xen/store.c
create mode 100644 xen/store.h
create mode 100644 xen/time.c
create mode 100644 xen/time.h
create mode 100644 xen/xen.c
create mode 100644 xen/xen.h
hooks/post-receive
--
GNU Mach
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [SCM] GNU Mach branch, master, updated. 55dbc2b5d857d35262ad3116803dfb31b733d031,
Samuel Thibault <=