|
@@ -1022,9 +1022,9 @@ static int connect_ring(struct backend_info *be)
|
|
pr_debug("%s %s\n", __func__, dev->otherend);
|
|
pr_debug("%s %s\n", __func__, dev->otherend);
|
|
|
|
|
|
be->blkif->blk_protocol = BLKIF_PROTOCOL_DEFAULT;
|
|
be->blkif->blk_protocol = BLKIF_PROTOCOL_DEFAULT;
|
|
- err = xenbus_gather(XBT_NIL, dev->otherend, "protocol",
|
|
|
|
- "%63s", protocol, NULL);
|
|
|
|
- if (err)
|
|
|
|
|
|
+ err = xenbus_scanf(XBT_NIL, dev->otherend, "protocol",
|
|
|
|
+ "%63s", protocol);
|
|
|
|
+ if (err <= 0)
|
|
strcpy(protocol, "unspecified, assuming default");
|
|
strcpy(protocol, "unspecified, assuming default");
|
|
else if (0 == strcmp(protocol, XEN_IO_PROTO_ABI_NATIVE))
|
|
else if (0 == strcmp(protocol, XEN_IO_PROTO_ABI_NATIVE))
|
|
be->blkif->blk_protocol = BLKIF_PROTOCOL_NATIVE;
|
|
be->blkif->blk_protocol = BLKIF_PROTOCOL_NATIVE;
|
|
@@ -1036,10 +1036,9 @@ static int connect_ring(struct backend_info *be)
|
|
xenbus_dev_fatal(dev, err, "unknown fe protocol %s", protocol);
|
|
xenbus_dev_fatal(dev, err, "unknown fe protocol %s", protocol);
|
|
return -ENOSYS;
|
|
return -ENOSYS;
|
|
}
|
|
}
|
|
- err = xenbus_gather(XBT_NIL, dev->otherend,
|
|
|
|
- "feature-persistent", "%u",
|
|
|
|
- &pers_grants, NULL);
|
|
|
|
- if (err)
|
|
|
|
|
|
+ err = xenbus_scanf(XBT_NIL, dev->otherend,
|
|
|
|
+ "feature-persistent", "%u", &pers_grants);
|
|
|
|
+ if (err <= 0)
|
|
pers_grants = 0;
|
|
pers_grants = 0;
|
|
|
|
|
|
be->blkif->vbd.feature_gnt_persistent = pers_grants;
|
|
be->blkif->vbd.feature_gnt_persistent = pers_grants;
|