|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Xen optimization
Hi,
> Don't interrupt _come_ from hardware and go/are routed to
> hypervisor/os/app?
Yes they do, sorry, I reversed the order because I'm a newbie :) .
> Would you mind to explain what is the triple timer counter?
On this link on page 342 is explanation.
> This is not the official Xen repository and look like patches have been
> applied on top. I am afraid, I am not going to be able help here. Could you
> do the same experiment with Xen 4.11?
I think I have to get Xen from Xilinx because I use board that has
Zynq Ultrascale. Stefano sent branch with Xen 4.11 so I built with it.
> This could also means that wfi is not used by the guest or you never go to
> the idle vCPU.
Right.
> This is definitely wrong. Can you please also post the full host device
> tree with your modifications that you are using for Xen and Dom0? You
> should have something like:
>
> timer@ff110000 {
> compatible = "cdns,ttc";
> interrupt-parent = <0x2>;
> interrupts = <0x0 0x24 0x4 0x0 0x25 0x4 0x0 0x26 0x4>;
> reg = <0x0 0xff110000 0x0 0x1000>;
> timer-width = <0x20>;
> power-domains = <0x3b>;
> xen,passthrough;
> };
> For each of the nodes of the devices you are assigning to the DomU.
I put
&ttc0 {
xen,passthrough = <0x1>;
};
because when I was making bm app I was following this guide. Now I see
it's wrong. When I copied directly:
timer@ff110000 {
compatible = "cdns,ttc";
interrupt-parent = <0x2>;
interrupts = <0x0 0x24 0x4 0x0 0x25 0x4 0x0 0x26 0x4>;
reg = <0x0 0xff110000 0x0 0x1000>;
timer-width = <0x20>;
power-domains = <0x3b>;
xen,passthrough;
};
in to the xen-overlay.dtsi file it resulted an error during
device-tree build. I modified it a little bit so I can get successful
build, there are all device-tree files included in attachment. I'm not
sure how to set this passthrough properly, if you could take a look at
those files in attachment I'd be more then grateful.
> It's here:
> https://github.com/Xilinx/xen/blob/xilinx/stable-4.9/xen/arch/arm/vgic.c#L462
Oh, about that. I sent you wrong branch, I was using Xen 4.10. Anyway
now I moved to Xen 4.11 like you suggested and applied your patch and
Dario's also.
Okay, now when I want to xl create my domU (bare-metal app) I get error:
Parsing config from timer.cfg
(XEN) IRQ 68 is already used by domain 0
libxl: error: libxl_create.c:1354:domcreate_launch_dm: Domain 1:failed
give domain access to irq 68: Device or resource busy
libxl: error: libxl_domain.c:1034:libxl__destroy_domid: Domain
1:Non-existant domain
libxl: error: libxl_domain.c:993:domain_destroy_callback: Domain
1:Unable to destroy guest
libxl: error: libxl_domain.c:920:domain_destroy_cb: Domain
1:Destruction of domain failed
I guess my modifications of:
timer@ff110000 {
compatible = "cdns,ttc";
interrupt-parent = <0x2>;
interrupts = <0x0 0x24 0x4 0x0 0x25 0x4 0x0 0x26 0x4>;
reg = <0x0 0xff110000 0x0 0x1000>;
timer-width = <0x20>;
power-domains = <0x3b>;
xen,passthrough;
};
are not correct. I tried to change interrupts to:
interrupts = <0x0 0x44 0x4 0x0 0x45 0x4 0x0 0x46 0x4>;
because if you check here on page 310 interrupts for TTC0 are 68:70.
But that didn't work either I still get same error.
I also tried to change xen,passthrough; line with:
xen,passthrough = <0x1>;
but also without success, still the same error.
Are you sure about this line:
reg = <0x0 0xff110000 0x0 0x1000>; ?
Or it should be like this?
reg = <0x0 0xff110000 0x1000>;
I also included xl dmesg and dmesg in attachments (after xl create of bm app).
Thanks in advance!
Milan
Attachment:
device-tree.bbappend.txt Attachment:
xl dmesg.txt Attachment:
system-user.dtsi.txt Attachment:
dmesg.txt Attachment:
xen-overlay.dtsi.txt _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |