Skip to contentSkip to conversation

virtio: rng: add derating factor for use by hwrng core

PATCH In review Rusty Russell 4 participants 4 messages Aug 13, 2014 – Aug 14, 2014

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 virtio: rng: add derating factor for use by hwrng core

The khwrngd thread is started when a hwrng device of sufficient quality is registered. The virtio-rng device is backed by the hypervisor, and we trust the hypervisor to provide real entropy.

A malicious hypervisor is a scenario that's irrelevant -- such a setup is bound to cause all sorts of badness, and a compromised hwrng is not the biggest threat.

Given this, we are certain the quality of randomness we receive is perfectly trustworthy. Hence, we use 100% for the factor, indicating maximum confidence in the source.

---
Pretty small and contained patch; would be great if it is picked up for 3.17.

v2: re-word commit msg

[Agreed, re-sending to Linus with SOB before jumping on plane]

---
 drivers/char/hw_random/virtio-rng.c | 1 +
 1 file changed, 1 insertion(+)
(quoted diff) +0 -0

b/drivers/char/hw_random/virtio-rng.c
index 0027137..2e3139e 100644

drivers/char/hw_random/virtio-rng.c +0 -0
@@ -116,6 +116,7 @@ static int probe_common(struct virtio_device *vdev)

.cleanup = virtio_cleanup,
.priv = (unsigned long)vi,
.name = vi->name,
+ .quality = 1000,

	};
	vdev->priv = vi;
Reviewed-by on v1 1/1
#1 lore raw
Quoted 14 lines · Rusty Russell

The khwrngd thread is started when a hwrng device of sufficient quality is registered. The virtio-rng device is backed by the hypervisor, and we trust the hypervisor to provide real entropy.

A malicious hypervisor is a scenario that's irrelevant -- such a setup is bound to cause all sorts of badness, and a compromised hwrng is not the biggest threat.

Given this, we are certain the quality of randomness we receive is perfectly trustworthy. Hence, we use 100% for the factor, indicating maximum confidence in the source.

Quoted 7 lines

---
Pretty small and contained patch; would be great if it is picked up for 3.17.

v2: re-word commit msg

[Agreed, re-sending to Linus with SOB before jumping on plane]

#2 lore raw
In reply to Rusty Russell
Quoted 7 lines · Rusty Russell

The khwrngd thread is started when a hwrng device of sufficient quality is registered. The virtio-rng device is backed by the hypervisor, and we trust the hypervisor to provide real entropy.

A malicious hypervisor is a scenario that's irrelevant -- such a setup is bound to cause all sorts of badness, and a compromised hwrng is not the biggest threat.

s/malicious/malicious or badly implemented/

s/is not the biggest threat/is the least of the user's worries/

Quoted 3 lines

Given this, we are certain the quality of randomness we receive is perfectly trustworthy. Hence, we use 100% for the factor, indicating maximum confidence in the source.

s/we are certain/we might as well assume that/

I won't insist on the wording changes, but I think it's a better way of phrasing things.

Cheers,

- Ted

Reviewed-by on v1 1/1
#3 lore raw
In reply to Rusty Russell
Quoted 8 lines · Rusty Russell

The khwrngd thread is started when a hwrng device of sufficient quality is registered. The virtio-rng device is backed by the hypervisor, and we trust the hypervisor to provide real entropy.

A malicious hypervisor is a scenario that's irrelevant -- such a setup is bound to cause all sorts of badness, and a compromised hwrng is not the biggest threat.

Quoted 6 lines

Given this, we are certain the quality of randomness we receive is perfectly trustworthy. Hence, we use 100% for the factor, indicating maximum confidence in the source.

Quoted 29 lines

---
Pretty small and contained patch; would be great if it is picked up for 3.17.

v2: re-word commit msg

[Agreed, re-sending to Linus with SOB before jumping on plane]

---
 drivers/char/hw_random/virtio-rng.c | 1 +
 1 file changed, 1 insertion(+)
drivers/char/hw_random/virtio-rng.c +1 -1
index 0027137..2e3139e 100644
@@ -116,6 +116,7 @@ static int probe_common(struct virtio_device *vdev)
 		.cleanup = virtio_cleanup,
 		.priv = (unsigned long)vi,
 		.name = vi->name,
+		.quality = 1000,
 	};
 	vdev->priv = vi;
 
--

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

Signature · 1 line
			Amos.