summaryrefslogtreecommitdiffstats
path: root/drivers/block/rbd.c
diff options
context:
space:
mode:
authorAlex Elder2012-10-31 01:40:33 +0100
committerAlex Elder2012-11-01 13:55:42 +0100
commita92ffdf8a9b09f8fae9a8f418f87f30a5e459570 (patch)
tree61afe269696ac3ce6f999f67f6cc9385a0bd637c /drivers/block/rbd.c
parentrbd: allow null image name (diff)
downloadkernel-qcow2-linux-a92ffdf8a9b09f8fae9a8f418f87f30a5e459570.tar.gz
kernel-qcow2-linux-a92ffdf8a9b09f8fae9a8f418f87f30a5e459570.tar.xz
kernel-qcow2-linux-a92ffdf8a9b09f8fae9a8f418f87f30a5e459570.zip
rbd: allow null image name
Format 2 parent images are partially identified by their image id, but it may not be possible to determine their image name. The name is not strictly needed for correct operation, so we won't be treating it as an error if we don't know it. Handle this case gracefully in rbd_name_show(). Signed-off-by: Alex Elder <elder@inktank.com> Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Diffstat (limited to 'drivers/block/rbd.c')
-rw-r--r--drivers/block/rbd.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c
index a8521338bf46..28052ff679ca 100644
--- a/drivers/block/rbd.c
+++ b/drivers/block/rbd.c
@@ -1982,7 +1982,10 @@ static ssize_t rbd_name_show(struct device *dev,
{
struct rbd_device *rbd_dev = dev_to_rbd_dev(dev);
- return sprintf(buf, "%s\n", rbd_dev->spec->image_name);
+ if (rbd_dev->spec->image_name)
+ return sprintf(buf, "%s\n", rbd_dev->spec->image_name);
+
+ return sprintf(buf, "(unknown)\n");
}
static ssize_t rbd_image_id_show(struct device *dev,