rbd: don't use ENOTSUPP
authorAlex Elder <elder@dreamhost.com>
Thu, 1 Nov 2012 13:39:26 +0000 (08:39 -0500)
committerAlex Elder <elder@inktank.com>
Mon, 17 Dec 2012 18:07:32 +0000 (12:07 -0600)
ENOTSUPP is not a standard errno (it shows up as "Unknown error 524"
in an error message).  This is what was getting produced when the
the local rbd code does not implement features required by a
discovered rbd image.

Change the error code returned in this case to ENXIO.

Signed-off-by: Alex Elder <elder@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
drivers/block/rbd.c

index ce26b74..4daa400 100644 (file)
@@ -2456,7 +2456,7 @@ static int _rbd_dev_v2_snap_features(struct rbd_device *rbd_dev, u64 snap_id,
 
        incompat = le64_to_cpu(features_buf.incompat);
        if (incompat & ~RBD_FEATURES_ALL)
-               return -ENOTSUPP;
+               return -ENXIO;
 
        *snap_features = le64_to_cpu(features_buf.features);