Converts the virtio random number source to use sg_ring.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>

diff -r eb0aa6faed8f drivers/char/hw_random/virtio-rng.c
--- a/drivers/char/hw_random/virtio-rng.c	Sat Nov 24 15:16:11 2007 +1100
+++ b/drivers/char/hw_random/virtio-rng.c	Tue Nov 27 16:05:12 2007 +1100
@@ -38,11 +38,11 @@ static bool random_recv_done(struct virt
 
 static void register_buffer(void)
 {
-	struct scatterlist sg;
+	DECLARE_SG_RING(sg, 1);
 
-	sg_init_one(&sg, &random_data, sizeof(random_data));
+	sg_ring_single(&sg.ring, &random_data, sizeof(random_data));
 	/* There should always be room for one buffer. */
-	if (vq->vq_ops->add_buf(vq, &sg, 0, 1, &random_data) != 0)
+	if (vq->vq_ops->add_buf(vq, NULL, &sg.ring, &random_data) != 0)
 		BUG();
 	vq->vq_ops->kick(vq);
 }
