Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 990c91f0 authored by Rusty Russell's avatar Rusty Russell
Browse files

lguest: remove support for VIRTIO_F_NOTIFY_ON_EMPTY.



No virtio device does this any more, so no need to clutter lguest with it.

Signed-off-by: default avatarRusty Russell <rusty@rustcorp.com.au>
parent bc805a03
Loading
Loading
Loading
Loading
+1 −19
Original line number Diff line number Diff line
@@ -135,9 +135,6 @@ struct device {
	/* Is it operational */
	bool running;

	/* Does Guest want an intrrupt on empty? */
	bool irq_on_empty;

	/* Device-specific data. */
	void *priv;
};
@@ -637,9 +634,6 @@ static void trigger_irq(struct virtqueue *vq)

	/* If they don't want an interrupt, don't send one... */
	if (vq->vring.avail->flags & VRING_AVAIL_F_NO_INTERRUPT) {
		/* ... unless they've asked us to force one on empty. */
		if (!vq->dev->irq_on_empty
		    || lg_last_avail(vq) != vq->vring.avail->idx)
		return;
	}

@@ -1057,15 +1051,6 @@ static void create_thread(struct virtqueue *vq)
	close(vq->eventfd);
}

static bool accepted_feature(struct device *dev, unsigned int bit)
{
	const u8 *features = get_feature_bits(dev) + dev->feature_len;

	if (dev->feature_len < bit / CHAR_BIT)
		return false;
	return features[bit / CHAR_BIT] & (1 << (bit % CHAR_BIT));
}

static void start_device(struct device *dev)
{
	unsigned int i;
@@ -1079,8 +1064,6 @@ static void start_device(struct device *dev)
		verbose(" %02x", get_feature_bits(dev)
			[dev->feature_len+i]);

	dev->irq_on_empty = accepted_feature(dev, VIRTIO_F_NOTIFY_ON_EMPTY);

	for (vq = dev->vq; vq; vq = vq->next) {
		if (vq->service)
			create_thread(vq);
@@ -1564,7 +1547,6 @@ static void setup_tun_net(char *arg)
	/* Set up the tun device. */
	configure_device(ipfd, tapif, ip);

	add_feature(dev, VIRTIO_F_NOTIFY_ON_EMPTY);
	/* Expect Guest to handle everything except UFO */
	add_feature(dev, VIRTIO_NET_F_CSUM);
	add_feature(dev, VIRTIO_NET_F_GUEST_CSUM);