• Rusty Russell's avatar
    virtio: force callback on empty. · b4f68be6
    Rusty Russell authored
    virtio allows drivers to suppress callbacks (ie. interrupts) for
    efficiency (no locking, it's just an optimization).
    
    There's a similar mechanism for the host to suppress notifications
    coming from the guest: in that case, we ignore the suppression if the
    ring is completely full.
    
    It turns out that life is simpler if the host similarly ignores
    callback suppression when the ring is completely empty: the network
    driver wants to free up old packets in a timely manner, and otherwise
    has to use a timer to poll.
    
    We have to remove the code which ignores interrupts when the driver
    has disabled them (again, it had no locking and hence was unreliable
    anyway).
    Signed-off-by: default avatarRusty Russell <rusty@rustcorp.com.au>
    b4f68be6
virtio_ring.c 7.74 KB