|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Minios-devel] [UNIKRAFT PATCH v2 00/17] Prepare for enabling scheduling on KVM
The current patch series break the builds for KVM and linuxu platforms
and are supposed to be accepted back-to-back with the patch series
enabling interrupts for those platforms.
Thanks,
Costin
On 04/04/2018 04:53 PM, Costin Lupu wrote:
> The current patch series include refactorizations that integrate functionality
> for both Xen and KVM platforms. We are introducing common CPU related
> definitions, trap handling and thread switching abstractizations. The
> scheduling API is revisited for inlining with the platform changes. The
> current
> changes are needed in order to efficiently reuse the scheduling functionality
> on KVM as well.
>
> Costin Lupu (17):
> plat/common: Common x86 CPU definitions
> plat/common: Common x86 segment descriptors definitions
> plat/common: x86 hardware context definition
> plat/common: Common x86 CPU interrupt flag handling
> plat/common: Common x86 CPU functions
> plat/common: Common x86 tracing functions
> plat/common: Common x86 traps definitions and functions
> plat/common: Add ukplat_lcpu_{enable,disable}_irq functions
> plat/common: Halting functions
> plat/common: Common x86 threading code
> arch/x86_64: Add nop() macro
> arch/x86_64: Add function for stack pointer retrieval
> lib/uksched: Updates for inlining with plat/common changes
> lib/ukschedcoop: Updates for inlining with uksched API changes
> plat/xen: Remove events enabling from platform code
> plat/xen: Add IRQ subsystem initialization function
> lib/ukboot: Updates for inlining with platform and scheduling changes
>
> include/uk/arch/thread.h | 53 -----
> include/uk/arch/x86_64/lcpu.h | 40 +---
> include/uk/plat/irq.h | 54 +++++
> include/uk/plat/lcpu.h | 25 ++-
> include/uk/plat/thread.h | 70 +++++-
> lib/ukboot/boot.c | 21 +-
> lib/uksched/include/uk/sched.h | 120 ++++++----
> lib/uksched/include/uk/thread.h | 39 ++--
> lib/uksched/sched.c | 124 ++++++++---
> lib/uksched/thread.c | 76 ++++++-
> lib/ukschedcoop/schedcoop.c | 45 ++--
> plat/common/include/_time.h | 42 ++++
> plat/common/include/cpu.h | 46 ++++
> plat/common/include/sw_ctx.h | 56 +++++
> plat/common/include/trace.h | 48 ++++
> plat/common/include/x86/cpu.h | 109 +++++++++
> plat/common/include/x86/cpu_defs.h | 76 +++++++
> plat/common/include/x86/desc.h | 197 +++++++++++++++++
> plat/common/include/x86/irq.h | 87 ++++++++
> plat/common/include/x86/regs.h | 94 ++++++++
> plat/common/include/x86/traps.h | 115 ++++++++++
> plat/common/lcpu.c | 60 +++++
> plat/common/sw_ctx.c | 97 ++++++++
> plat/common/thread.c | 66 ++++++
> plat/common/x86/cpu_native.c | 49 +++++
> plat/common/x86/thread_start.S | 65 ++++++
> plat/common/x86/trace.c | 92 ++++++++
> plat/common/x86/traps.c | 116 ++++++++++
> plat/kvm/Makefile.uk | 8 +
> plat/kvm/include/kvm-x86/cpu_x86_64.h | 5 -
> plat/kvm/include/kvm-x86/cpu_x86_64_defs.h | 46 +---
> plat/kvm/shutdown.c | 2 +-
> plat/kvm/x86/console.c | 2 +-
> plat/kvm/x86/cpu_x86_64.c | 11 +-
> plat/kvm/x86/entry64.S | 2 +-
> plat/kvm/x86/lcpu.c | 6 -
> plat/xen/Makefile.uk | 16 +-
> plat/xen/events.c | 8 +
> plat/xen/include/common/sched.h | 52 -----
> plat/xen/include/xen-x86/arch_sched.h | 55 -----
> plat/xen/include/xen-x86/cpu.h | 103 ---------
> plat/xen/include/xen-x86/irq.h | 55 +----
> plat/xen/include/xen-x86/os.h | 46 +---
> plat/xen/include/xen-x86/traps.h | 23 +-
> plat/xen/lcpu.c | 27 +--
> plat/xen/sched.c | 106 ---------
> plat/xen/thread.c | 66 ------
> plat/xen/x86/arch_events.c | 2 +-
> plat/xen/x86/arch_thread.c | 93 --------
> plat/xen/x86/arch_time.c | 17 +-
> plat/xen/x86/cpu_pv.c | 47 ++++
> plat/xen/x86/entry64.S | 231 +++++++------------
> plat/xen/x86/setup.c | 8 +-
> plat/xen/x86/traps.c | 342
> ++++++-----------------------
> 54 files changed, 2138 insertions(+), 1323 deletions(-)
> delete mode 100644 include/uk/arch/thread.h
> create mode 100644 include/uk/plat/irq.h
> create mode 100644 plat/common/include/_time.h
> create mode 100644 plat/common/include/cpu.h
> create mode 100644 plat/common/include/sw_ctx.h
> create mode 100644 plat/common/include/trace.h
> create mode 100644 plat/common/include/x86/cpu.h
> create mode 100644 plat/common/include/x86/cpu_defs.h
> create mode 100644 plat/common/include/x86/desc.h
> create mode 100644 plat/common/include/x86/irq.h
> create mode 100644 plat/common/include/x86/regs.h
> create mode 100644 plat/common/include/x86/traps.h
> create mode 100644 plat/common/lcpu.c
> create mode 100644 plat/common/sw_ctx.c
> create mode 100644 plat/common/thread.c
> create mode 100644 plat/common/x86/cpu_native.c
> create mode 100644 plat/common/x86/thread_start.S
> create mode 100644 plat/common/x86/trace.c
> create mode 100644 plat/common/x86/traps.c
> delete mode 100644 plat/xen/include/common/sched.h
> delete mode 100644 plat/xen/include/xen-x86/arch_sched.h
> delete mode 100644 plat/xen/include/xen-x86/cpu.h
> delete mode 100644 plat/xen/sched.c
> delete mode 100644 plat/xen/thread.c
> delete mode 100644 plat/xen/x86/arch_thread.c
> create mode 100644 plat/xen/x86/cpu_pv.c
>
_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/minios-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |