• J
    vhost: multiqueue support · a9f98bb5
    Jason Wang 提交于
    This patch lets vhost support multiqueue. The idea is simple, just launching
    multiple threads of vhost and let each of vhost thread processing a subset of
    the virtqueues of the device. After this change each emulated device can have
    multiple vhost threads as its backend.
    
    To do this, a virtqueue index were introduced to record to first virtqueue that
    will be handled by this vhost_net device. Based on this and nvqs, vhost could
    calculate its relative index to setup vhost_net device.
    
    Since we may have many vhost/net devices for a virtio-net device. The setting of
    guest notifiers were moved out of the starting/stopping of a specific vhost
    thread. The vhost_net_{start|stop}() were renamed to
    vhost_net_{start|stop}_one(), and a new vhost_net_{start|stop}() were introduced
    to configure the guest notifiers and start/stop all vhost/vhost_net devices.
    Signed-off-by: NJason Wang <jasowang@redhat.com>
    Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
    a9f98bb5
vhost.c 31.0 KB