diff options
author | Jens Axboe <axboe@kernel.dk> | 2011-12-25 16:46:46 +0100 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2011-12-25 16:46:46 +0100 |
commit | f748040bb875a0d94c3ceef180ab704bdf43079f (patch) | |
tree | b4f91bfaafc1e714e5ff95782b6fe4081a6c7e49 /drivers/block/xen-blkback/xenbus.c | |
parent | fd63836811d6e5b5f5f608abf865bc9e91762c8c (diff) | |
parent | f094148a1751d6ece9374851eb2926bc3cfd16ef (diff) |
Merge branch 'stable/for-jens-3.3' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen into for-3.3/drivers
Diffstat (limited to 'drivers/block/xen-blkback/xenbus.c')
-rw-r--r-- | drivers/block/xen-blkback/xenbus.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/block/xen-blkback/xenbus.c b/drivers/block/xen-blkback/xenbus.c index f759ad4584c..187fd2c1a15 100644 --- a/drivers/block/xen-blkback/xenbus.c +++ b/drivers/block/xen-blkback/xenbus.c @@ -338,6 +338,9 @@ static int xen_vbd_create(struct xen_blkif *blkif, blkif_vdev_t handle, if (q && q->flush_flags) vbd->flush_support = true; + if (q && blk_queue_secdiscard(q)) + vbd->discard_secure = true; + DPRINTK("Successful creation of handle=%04x (dom=%u)\n", handle, blkif->domid); return 0; @@ -420,6 +423,15 @@ int xen_blkbk_discard(struct xenbus_transaction xbt, struct backend_info *be) state = 1; blkif->blk_backend_type = BLKIF_BACKEND_PHY; } + /* Optional. */ + err = xenbus_printf(xbt, dev->nodename, + "discard-secure", "%d", + blkif->vbd.discard_secure); + if (err) { + xenbus_dev_fatal(dev, err, + "writting discard-secure"); + goto kfree; + } } } else { err = PTR_ERR(type); |