>>> On 16.08.17 at 07:14, wrote:
> +static inline bool pi_over_limit(unsigned int cpu)
> +{
> +/* Compare w/ constant first to save a division and an add */
> +if ( likely(read_atomic(_cpu(vmx_pi_blocking, cpu).counter) <=
> +PI_LIST_FIXED_LIMIT) )
> +
Currently, a blocked vCPU is put in its pCPU's pi blocking list. If
too many vCPUs are blocked on a given pCPU, it will incur that the list
grows too long. After a simple analysis, there are 32k domains and
128 vcpu per domain, thus about 4M vCPUs may be blocked in one pCPU's
PI blocking list.