Richard Henderson writes:
> On 01/24/2017 12:34 PM, Alex Bennée wrote:
>>
>> Richard Henderson writes:
>>
>>> On 01/19/2017 09:04 AM, Alex Bennée wrote:
+/* flush_all_helper: run fn across all cpus
+ *
+ * If the wait flag is set then the src cpu's helper will be queued as
+
On 01/24/2017 12:34 PM, Alex Bennée wrote:
>
> Richard Henderson writes:
>
>> On 01/19/2017 09:04 AM, Alex Bennée wrote:
>>> +/* flush_all_helper: run fn across all cpus
>>> + *
>>> + * If the wait flag is set then the src cpu's helper will be queued as
>>> + * "safe" work and the loop exited cr
Richard Henderson writes:
> On 01/19/2017 09:04 AM, Alex Bennée wrote:
>> +/* flush_all_helper: run fn across all cpus
>> + *
>> + * If the wait flag is set then the src cpu's helper will be queued as
>> + * "safe" work and the loop exited creating a synchronisation point
>> + * where all queued
On 01/19/2017 09:04 AM, Alex Bennée wrote:
> +/* flush_all_helper: run fn across all cpus
> + *
> + * If the wait flag is set then the src cpu's helper will be queued as
> + * "safe" work and the loop exited creating a synchronisation point
> + * where all queued work will be finished before execut
This introduces support to the cputlb API for flushing all CPUs TLBs
with one call. This avoids the need for target helpers to iterate
through the vCPUs themselves. Additionally these functions provide a
"wait" argument which will cause the work to be scheduled and the
calling vCPU to exit its loop