|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [RFC PATCH v2 13/22] xen/arm: its: Add virtual ITS command support
On 29/04/15 12:56, Julien Grall wrote:
> As the 2 suggested approach don't seem to fit our usage, we need to find
> another approach.
I think I have another approach which doesn't require interrupt neither
polling in EL2.
1) Trap on CWRITER
a) Read command for the vITS CQ
b) Transform command
c) Inject command
- If ITS CQ full => 2)
- If vITS CQ empty => 2)
- Else => 1)
2) Return to guest
3) Trap on CREADR
a) Check completion of the current batch of command
- If complete => 3.b)
- Else => 4)
b) Update CREADR
c) Check if more command and inject it (see process in 1))
4) Return to guest
Some other restrictions to add:
- If there is already a batch of command in process for the domain,
defer the injection of new command
- The number of command sent in a batch should be limited.
I think thoses restrictions are okay because the ITS is per-domain not
per-VCPU.
Although, there is a possible problem if the guest is not reading
CREADR. Maybe having a timer would be fine to update CREADR and inject
new commands.
Regards,
--
Julien Grall
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |