xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 0/6] xen/arm: event channels and shared_info page
@ 2012-05-25 16:21 Stefano Stabellini
  2012-05-25 16:23 ` [PATCH v4 1/6] arm: support fewer LR registers than virtual irqs Stefano Stabellini
                   ` (6 more replies)
  0 siblings, 7 replies; 9+ messages in thread
From: Stefano Stabellini @ 2012-05-25 16:21 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 v4:

- drop all the patches that have already been committed;

- rebase on "amd iommu: improve parse_event_log_entry()";

- move the initialization of gic.lr_pending and gic.lr_mask to gic_init;

- pass 0 as memflags to alloc_xenheap_pages in arch_domain_create.


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.



Stefano Stabellini (6):
      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: implement flush_tlb_all_local and flush_tlb_local
      arm: remove VGIC_SOFTIRQ
      arm: implement event injection

 xen/arch/arm/domain.c          |   22 ++++++
 xen/arch/arm/dummy.S           |    1 -
 xen/arch/arm/gic.c             |  152 +++++++++++++++++++++++++++++++++-------
 xen/arch/arm/gic.h             |    7 ++-
 xen/arch/arm/mm.c              |   98 +++++++++++++++++++++++++-
 xen/arch/arm/p2m.c             |   26 +++++++-
 xen/arch/arm/traps.c           |    4 +-
 xen/arch/arm/vgic.c            |   15 ----
 xen/include/asm-arm/config.h   |    2 +
 xen/include/asm-arm/domain.h   |   10 +++
 xen/include/asm-arm/flushtlb.h |   23 ++++++-
 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 +-
 15 files changed, 326 insertions(+), 53 deletions(-)



A git branch is available here:

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

Cheers,

Stefano

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

end of thread, other threads:[~2012-06-01  9:31 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-05-25 16:21 [PATCH v4 0/6] xen/arm: event channels and shared_info page Stefano Stabellini
2012-05-25 16:23 ` [PATCH v4 1/6] arm: support fewer LR registers than virtual irqs Stefano Stabellini
2012-05-25 16:23 ` [PATCH v4 2/6] arm: replace list_del and INIT_LIST_HEAD with list_del_init Stefano Stabellini
2012-05-25 16:23 ` [PATCH v4 3/6] arm: shared_info page allocation and mapping Stefano Stabellini
2012-05-25 16:23 ` [PATCH v4 4/6] arm: implement flush_tlb_all_local and flush_tlb_local Stefano Stabellini
2012-05-25 16:23 ` [PATCH v4 5/6] arm: remove VGIC_SOFTIRQ Stefano Stabellini
2012-05-25 16:23 ` [PATCH v4 6/6] arm: implement event injection Stefano Stabellini
2012-06-01  8:45   ` Ian Campbell
2012-06-01  9:31 ` [PATCH v4 0/6] 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).