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 ce26b749ede0e77cc7f14d2f314dceccb494c90a..4daa400c13aa6fafbb09a9a78bfac7262506bded 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);