]> xenbits.xensource.com Git - xenclient/kernel.git/commitdiff
imported patch blk-name blktap-backend-dom-dev
authort_jeang <devnull@localhost>
Tue, 6 Jan 2009 12:06:01 +0000 (12:06 +0000)
committert_jeang <devnull@localhost>
Tue, 6 Jan 2009 12:06:01 +0000 (12:06 +0000)
drivers/xen/blkback/xenbus.c
drivers/xen/blktap/xenbus.c

index 7e689c758117f299dc4969924ac8270168577b2e..e32fe7b835d1533dd5ab6be0649bb3a17f99cf8d 100644 (file)
@@ -56,7 +56,7 @@ static int blkback_name(blkif_t *blkif, char *buf)
        else
                devname  = devpath;
 
-       snprintf(buf, TASK_COMM_LEN, "blkback.%d.%s", blkif->domid, devname);
+       snprintf(buf, TASK_COMM_LEN, "xb.%05d.%s", blkif->domid, devname);
        kfree(devpath);
        
        return 0;
@@ -91,6 +91,14 @@ static void update_blkif_status(blkif_t *blkif)
                err = PTR_ERR(blkif->xenblkd);
                blkif->xenblkd = NULL;
                xenbus_dev_error(blkif->be->dev, err, "start xenblkd");
+               return;
+       }
+
+       err = xenbus_printf(XBT_NIL, blkif->be->dev->nodename, "kthread-pid",
+                           "%d", blkif->xenblkd->pid);
+       if (err) {
+               xenbus_dev_error(blkif->be->dev, err, "write kthread-pid");
+               return;
        }
 }
 
index 61b8ee87a3c7f86d1d0e6dadc9dcd19d49ad5617..98804d0d286076b72382e53ec0b4a711dde3a338 100644 (file)
@@ -107,7 +107,7 @@ static int blktap_name(blkif_t *blkif, char *buf)
        else
                devname  = devpath;
 
-       snprintf(buf, TASK_COMM_LEN, "blktap.%d.%s", blkif->domid, devname);
+       snprintf(buf, TASK_COMM_LEN, "xb.%05d.%s", blkif->domid, devname);
        kfree(devpath);
        
        return 0;
@@ -274,6 +274,13 @@ static int blktap_probe(struct xenbus_device *dev,
                goto fail;
        }
 
+       err = xenbus_printf(XBT_NIL, dev->nodename, "kthread-pid", "%d",
+                           be->blkif->xenblkd->pid);
+       if (err) {
+               xenbus_dev_error(be->dev, err, "write kthread-pid");
+               return;
+       }
+               
        /* set a watch on disk info, waiting for userspace to update details*/
        err = xenbus_watch_path2(dev, dev->nodename, "info",
                                 &be->backend_watch, tap_backend_changed);