This patch tries to poll for new added tx buffer or socket receive queue for a while at the end of tx/rx processing. The maximum time spent on polling were specified through a new kind of vring ioctl.
Showing the changes to include/uapi (1 of 4 files). Show all
Unified · Split
| @@ -126,6 +126,12 @@ struct vhost_memory { · 125 unmodified lines | ||
| 126 | 126 | #define VHOST_SET_VRING_CALL _IOW(VHOST_VIRTIO, 0x21, struct vhost_vring_file) |
| 127 | 127 | /* Set eventfd to signal an error */ |
| 128 | 128 | #define VHOST_SET_VRING_ERR _IOW(VHOST_VIRTIO, 0x22, struct vhost_vring_file) |
| 129 | +/* Set busy loop timeout (in us) */ | |
| 130 | +#define VHOST_SET_VRING_BUSYLOOP_TIMEOUT _IOW(VHOST_VIRTIO, 0x23, \ | |
| 131 | + struct vhost_vring_state) | |
| 132 | +/* Get busy loop timeout (in us) */ | |
| 133 | +#define VHOST_GET_VRING_BUSYLOOP_TIMEOUT _IOW(VHOST_VIRTIO, 0x24, \ | |
| 134 | + struct vhost_vring_state) | |
| 129 | 135 | |
| 130 | 136 | /* VHOST_NET specific defines */ |
| 131 | 137 | |