On 15/09/2015 12:30, Wanpeng Li wrote:
> +     if (!nested) {
> +             vpid = find_first_zero_bit(vmx_vpid_bitmap, VMX_NR_VPIDS);
> +             if (vpid < VMX_NR_VPIDS) {
>               vmx->vpid = vpid;
>               __set_bit(vpid, vmx_vpid_bitmap);
> +             }
> +     } else {
> +             vpid = find_first_zero_bit(vmx_vpid_bitmap, VMX_NR_VPIDS);
> +             if (vpid < VMX_NR_VPIDS) {
> +                     vmx->nested.vpid02 = vpid;
> +                     __set_bit(vpid, vmx_vpid_bitmap);
> +             }

Messy indentation, and a lot of duplicate code.  Can you instead have
(which I think was Jan's suggestion too):

static int allocate_vpid(void);
static void free_vpid(int vpid);

That said, I like the simple solution to the "too many VPIDs for each L1
VCPU" processor.

Paolo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to