Increasing the number of vCPUs assigned to a VM will reduce the number of available. For instance 10 vCPUs will have 7 active VIFs but 12 vCPUs will only allow 6 active VIFs.
Increase the size of the grant table by passing a parameter to xen at boot time. Refer to the following example:
/opt/xensource/libexec/xen-cmdline --set-xen gnttab_max_frames=128
The number of vCPUs in conjunction with the number of VIFs exhausts the grant table and no more devices will become active.