xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/11] xen/arm: event channels and shared_info page
@ 2012-03-02 14:27 Stefano Stabellini
  2012-03-02 14:27 ` [PATCH v3 01/11] arm: rename link to inflight Stefano Stabellini
                   ` (11 more replies)
  0 siblings, 12 replies; 32+ messages in thread
From: Stefano Stabellini @ 2012-03-02 14:27 UTC (permalink / raw)
  To: xen-devel@lists.xensource.com
  Cc: Tim Deegan (3P), Stefano Stabellini, Ian Campbell, David Vrabel

Hi all,
this patch series implements support for injecting event channels into
the guest and enables a wider range of hypercalls for ARM guests.

In order to allow more flexibility I modified the hypercall protocol, in
particular the hypercall number is not passed as imm to hvc anymore,
because we might not always know it at compile time.
The hypercall number is now passed on the r12 register.

With this patch series and using the following Linux tree:

git://xenbits.xen.org/people/sstabellini/linux-pvhvm.git vexpress-dt-privcmd-2

I am able to boot dom0, start xenstored and run basic xl commands, like
"xl list" and "xl uptime".
I have added at the beginning of this series few patches that were
previously sent separately (in particular "arm: support fewer LR
registers than virtual irqs").


Changes in v3:

- several fixes to "support fewer LR registers than virtual irqs";

- many more comments to the gic and vgic IRQ queues;

- merge Ian's patch into "shared_info page allocation and mapping";

- do not alloc the shared_info page for the idle domain;

- added "handle dom0_max_vcpus=0 case properly" by Ian, removed the
corresponding patch in my series;

- move XEN_HYPERCALL_TAG to a public header;

- clobber register in the debug build;

- document calling convention;

- check if arm_hypercall_table[regs->r12] != NULL;

- use a PPI for events injection (IRQ 31) and do not request maintenance
interrupts for it whenever possible.


Changes in v2:

- fixed tabs/spaces problem.



Ian Campbell (1):
      arm: handle dom0_max_vcpus=0 case properly

Stefano Stabellini (10):
      arm: rename link to inflight
      arm: fix inflight_irqs list priority ordering
      arm: support fewer LR registers than virtual irqs
      arm: replace list_del and INIT_LIST_HEAD with list_del_init
      arm: shared_info page allocation and mapping
      arm: use r12 to pass the hypercall number
      arm: introduce more hypercalls
      arm: implement flush_tlb_all_local and flush_tlb_local
      arm: remove VGIC_SOFTIRQ
      arm: implement event injection

 xen/arch/arm/Makefile           |    1 +
 xen/arch/arm/domain.c           |   22 ++++++
 xen/arch/arm/domain_build.c     |   11 ++--
 xen/arch/arm/dummy.S            |    1 -
 xen/arch/arm/gic.c              |  151 ++++++++++++++++++++++++++++++++-------
 xen/arch/arm/gic.h              |    7 ++-
 xen/arch/arm/mm.c               |   98 ++++++++++++++++++++++++-
 xen/arch/arm/p2m.c              |   26 +++++++-
 xen/arch/arm/physdev.c          |   27 +++++++
 xen/arch/arm/traps.c            |   40 +++++++---
 xen/arch/arm/vgic.c             |   27 ++------
 xen/include/asm-arm/config.h    |    2 +
 xen/include/asm-arm/domain.h    |   14 ++++-
 xen/include/asm-arm/flushtlb.h  |   23 ++++++-
 xen/include/asm-arm/hypercall.h |    1 +
 xen/include/asm-arm/mm.h        |    4 +
 xen/include/asm-arm/p2m.h       |    9 +++
 xen/include/asm-arm/paging.h    |    3 +
 xen/include/asm-arm/softirq.h   |    3 +-
 xen/include/public/arch-arm.h   |   21 ++++++
 20 files changed, 415 insertions(+), 76 deletions(-)



A git branch based on my previous gic and tools patches is available
here:

git://xenbits.xen.org/people/sstabellini/xen-unstable.git events-3

Cheers,

Stefano

^ permalink raw reply	[flat|nested] 32+ messages in thread

end of thread, other threads:[~2012-05-25 13:58 UTC | newest]

Thread overview: 32+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-03-02 14:27 [PATCH v3 0/11] xen/arm: event channels and shared_info page Stefano Stabellini
2012-03-02 14:27 ` [PATCH v3 01/11] arm: rename link to inflight Stefano Stabellini
2012-03-14  9:48   ` Ian Campbell
2012-03-02 14:27 ` [PATCH v3 02/11] arm: fix inflight_irqs list priority ordering Stefano Stabellini
2012-03-14  9:48   ` Ian Campbell
2012-03-02 14:27 ` [PATCH v3 03/11] arm: support fewer LR registers than virtual irqs Stefano Stabellini
2012-03-13 14:30   ` Ian Campbell
2012-03-13 17:31     ` Stefano Stabellini
2012-03-13 17:24       ` Ian Campbell
2012-03-14  9:26   ` Ian Campbell
2012-05-25 13:38     ` Stefano Stabellini
2012-03-02 14:27 ` [PATCH v3 04/11] arm: replace list_del and INIT_LIST_HEAD with list_del_init Stefano Stabellini
2012-03-14  9:49   ` Ian Campbell
2012-03-02 14:27 ` [PATCH v3 05/11] arm: shared_info page allocation and mapping Stefano Stabellini
2012-03-13 17:06   ` Ian Campbell
2012-05-25 13:44     ` Stefano Stabellini
2012-03-14  9:38   ` Ian Campbell
2012-05-25 13:54     ` Stefano Stabellini
2012-05-25 13:58       ` Ian Campbell
2012-03-02 14:27 ` [PATCH v3 06/11] arm: handle dom0_max_vcpus=0 case properly Stefano Stabellini
2012-03-14  9:49   ` Ian Campbell
2012-03-02 14:27 ` [PATCH v3 07/11] arm: use r12 to pass the hypercall number Stefano Stabellini
2012-03-13 15:28   ` Ian Campbell
2012-03-13 16:09     ` Ian Campbell
2012-03-13 16:17       ` WARNING: Xen ARMv7 with Virtualization Extensions Guest ABI has changed Ian Campbell
2012-03-02 14:27 ` [PATCH v3 08/11] arm: introduce more hypercalls Stefano Stabellini
2012-03-14  9:49   ` Ian Campbell
2012-03-02 14:27 ` [PATCH v3 09/11] arm: implement flush_tlb_all_local and flush_tlb_local Stefano Stabellini
2012-03-14  9:49   ` Ian Campbell
2012-03-02 14:27 ` [PATCH v3 10/11] arm: remove VGIC_SOFTIRQ Stefano Stabellini
2012-03-02 14:27 ` [PATCH v3 11/11] arm: implement event injection Stefano Stabellini
2012-03-14  9:50 ` [PATCH v3 0/11] xen/arm: event channels and shared_info page Ian Campbell

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).