aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/block/xen-blkback
diff options
context:
space:
mode:
authorJan Beulich <JBeulich@suse.com>2016-02-10 06:18:10 -0500
committerJens Axboe <axboe@fb.com>2016-03-03 16:45:53 -0500
commit5a7058450cbc8702f976d1f444974485c70cb525 (patch)
tree7a1eb1d38f696802a4af1eb69b2c513885931eaf /drivers/block/xen-blkback
parent14e710fe7897e37762512d336ab081c57de579a4 (diff)
xen-blkback: advertise indirect segment support earlier
There's no reason to defer this until the connect phase, and in fact there are frontend implementations expecting this to be available earlier. Move it into the probe function. Acked-by: Roger Pau Monné <roger.pau@citrix.com> Signed-off-by: Jan Beulich <jbeulich@suse.com> Cc: Bob Liu <bob.liu@oracle.com> Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Diffstat (limited to 'drivers/block/xen-blkback')
-rw-r--r--drivers/block/xen-blkback/xenbus.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/drivers/block/xen-blkback/xenbus.c b/drivers/block/xen-blkback/xenbus.c
index 876763f7f13e..16e28ee880a4 100644
--- a/drivers/block/xen-blkback/xenbus.c
+++ b/drivers/block/xen-blkback/xenbus.c
@@ -618,6 +618,14 @@ static int xen_blkbk_probe(struct xenbus_device *dev,
618 goto fail; 618 goto fail;
619 } 619 }
620 620
621 err = xenbus_printf(XBT_NIL, dev->nodename,
622 "feature-max-indirect-segments", "%u",
623 MAX_INDIRECT_SEGMENTS);
624 if (err)
625 dev_warn(&dev->dev,
626 "writing %s/feature-max-indirect-segments (%d)",
627 dev->nodename, err);
628
621 /* Multi-queue: advertise how many queues are supported by us.*/ 629 /* Multi-queue: advertise how many queues are supported by us.*/
622 err = xenbus_printf(XBT_NIL, dev->nodename, 630 err = xenbus_printf(XBT_NIL, dev->nodename,
623 "multi-queue-max-queues", "%u", xenblk_max_queues); 631 "multi-queue-max-queues", "%u", xenblk_max_queues);
@@ -849,11 +857,6 @@ again:
849 dev->nodename); 857 dev->nodename);
850 goto abort; 858 goto abort;
851 } 859 }
852 err = xenbus_printf(xbt, dev->nodename, "feature-max-indirect-segments", "%u",
853 MAX_INDIRECT_SEGMENTS);
854 if (err)
855 dev_warn(&dev->dev, "writing %s/feature-max-indirect-segments (%d)",
856 dev->nodename, err);
857 860
858 err = xenbus_printf(xbt, dev->nodename, "sectors", "%llu", 861 err = xenbus_printf(xbt, dev->nodename, "sectors", "%llu",
859 (unsigned long long)vbd_sz(&be->blkif->vbd)); 862 (unsigned long long)vbd_sz(&be->blkif->vbd));