Hello Julien,

On 12.02.19 21:21, Julien Grall wrote:
Please provide more meaningful arguments other than "I don't like it". I 
provided potential drawbacks on my previous e-mails that you haven't yet addressed.

Well, currently, on each runstate update, `copy_to_guest()` which translates 
the buffer virtual address is called three times. On context switch, runstate 
update is done twice, when we change a vcpu.

FWIW, Volodymyr had the same argument on OP-TEE and I requested to avoid the 
global mapping. I haven't seen any concern for performance devredation 
afterwards. Please feel free to come with numbers here.
The numbers here are controversial and really confusing to me.
I've measured the raw `update_runstate_area()` execution time. With runstate 
mapped - its execution time is less than my timer tick (120ns), with runstate 
not mapped - I've seen its execution time as 4 to 8 ticks (480-960ns).
But using TBM, I encountered that making runstate mapped with Roger's patch 
increases the IRQ latency from ~7000ns to ~7900ns. It is opposite to my 
expectations and to the raw decrease of `runstate_update_area()` execution time.
Also glmark2 benchmark shown me slight performance drop on getting runstate 
mapping.

--
Sincerely,
Andrii Anisov.

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

Reply via email to