lguest: give each virtqueue a name (for debugging)

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
---
 Documentation/lguest/lguest.c |   10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/Documentation/lguest/lguest.c b/Documentation/lguest/lguest.c
--- a/Documentation/lguest/lguest.c
+++ b/Documentation/lguest/lguest.c
@@ -141,6 +141,9 @@ struct virtqueue
 	/* Which device owns me. */
 	struct device *dev;
 
+	/* My name (for debugging) */
+	const char *name;
+
 	/* The configuration for this queue. */
 	struct lguest_vqconfig config;
 
@@ -1027,8 +1030,10 @@ static struct lguest_device_desc *new_de
 
 /* Each device descriptor is followed by the description of its virtqueues.  We
  * specify how many descriptors the virtqueue is to have. */
-static void add_virtqueue(struct device *dev, unsigned int num_descs,
-			  void (*service)(struct virtqueue *))
+#define add_virtqueue(dev, ndescs, fn) _add_virtqueue(dev, ndescs, fn, #fn)
+static void _add_virtqueue(struct device *dev, unsigned int num_descs,
+			   void (*service)(struct virtqueue *),
+			   const char *name)
 {
 	unsigned int pages;
 	struct virtqueue **i, *vq = malloc(sizeof(*vq));
@@ -1045,6 +1050,7 @@ static void add_virtqueue(struct device 
 	vq->dev = dev;
 	vq->service = service;
 	vq->thread = (pid_t)-1;
+	vq->name = name;
 
 	/* Initialize the configuration. */
 	vq->config.num = num_descs;
