staging: erofs: correct all misused ENOTSUPP
[linux-2.6-block.git] / drivers / staging / erofs / zmap.c
index 9c0bd65c46bf31949e1fbe87eff8c50e732065d0..b61b9b5950ac13f4ad8a344fa675fa839b46849e 100644 (file)
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: GPL-2.0
+// SPDX-License-Identifier: GPL-2.0-only
 /*
  * linux/drivers/staging/erofs/zmap.c
  *
 int z_erofs_fill_inode(struct inode *inode)
 {
        struct erofs_vnode *const vi = EROFS_V(inode);
-       struct super_block *const sb = inode->i_sb;
 
        if (vi->datamode == EROFS_INODE_FLAT_COMPRESSION_LEGACY) {
                vi->z_advise = 0;
                vi->z_algorithmtype[0] = 0;
                vi->z_algorithmtype[1] = 0;
-               vi->z_logical_clusterbits = EROFS_SB(sb)->clusterbits;
+               vi->z_logical_clusterbits = LOG_BLOCK_SIZE;
                vi->z_physical_clusterbits[0] = vi->z_logical_clusterbits;
                vi->z_physical_clusterbits[1] = vi->z_logical_clusterbits;
                set_bit(EROFS_V_Z_INITED_BIT, &vi->flags);
@@ -69,7 +68,7 @@ static int fill_inode_lazy(struct inode *inode)
        if (vi->z_algorithmtype[0] >= Z_EROFS_COMPRESSION_MAX) {
                errln("unknown compression format %u for nid %llu, please upgrade kernel",
                      vi->z_algorithmtype[0], vi->nid);
-               err = -ENOTSUPP;
+               err = -EOPNOTSUPP;
                goto unmap_done;
        }
 
@@ -80,7 +79,7 @@ static int fill_inode_lazy(struct inode *inode)
        if (vi->z_physical_clusterbits[0] != LOG_BLOCK_SIZE) {
                errln("unsupported physical clusterbits %u for nid %llu, please upgrade kernel",
                      vi->z_physical_clusterbits[0], vi->nid);
-               err = -ENOTSUPP;
+               err = -EOPNOTSUPP;
                goto unmap_done;
        }
 
@@ -179,7 +178,7 @@ static int vle_legacy_load_cluster_from_disk(struct z_erofs_maprecorder *m,
                break;
        default:
                DBG_BUGON(1);
-               return -EIO;
+               return -EOPNOTSUPP;
        }
        m->type = type;
        return 0;
@@ -212,7 +211,7 @@ static int unpack_compacted_index(struct z_erofs_maprecorder *m,
        else if (1 << amortizedshift == 2 && lclusterbits == 12)
                vcnt = 16;
        else
-               return -ENOTSUPP;
+               return -EOPNOTSUPP;
 
        encodebits = ((vcnt << amortizedshift) - sizeof(__le32)) * 8 / vcnt;
        base = round_down(eofs, vcnt << amortizedshift);
@@ -276,7 +275,7 @@ static int compacted_load_cluster_from_disk(struct z_erofs_maprecorder *m,
        int err;
 
        if (lclusterbits != 12)
-               return -ENOTSUPP;
+               return -EOPNOTSUPP;
 
        if (lcn >= totalidx)
                return -EINVAL;
@@ -339,8 +338,9 @@ static int vle_extent_lookback(struct z_erofs_maprecorder *m,
        int err;
 
        if (lcn < lookback_distance) {
+               errln("bogus lookback distance @ nid %llu", vi->nid);
                DBG_BUGON(1);
-               return -EIO;
+               return -EFSCORRUPTED;
        }
 
        /* load extent head logical cluster if needed */
@@ -362,7 +362,7 @@ static int vle_extent_lookback(struct z_erofs_maprecorder *m,
                errln("unknown type %u at lcn %lu of nid %llu",
                      m->type, lcn, vi->nid);
                DBG_BUGON(1);
-               return -EIO;
+               return -EOPNOTSUPP;
        }
        return 0;
 }
@@ -420,7 +420,7 @@ int z_erofs_map_blocks_iter(struct inode *inode,
                if (unlikely(!m.lcn)) {
                        errln("invalid logical cluster 0 at nid %llu",
                              vi->nid);
-                       err = -EIO;
+                       err = -EFSCORRUPTED;
                        goto unmap_out;
                }
                end = (m.lcn << lclusterbits) | m.clusterofs;
@@ -436,7 +436,7 @@ int z_erofs_map_blocks_iter(struct inode *inode,
        default:
                errln("unknown type %u at offset %llu of nid %llu",
                      m.type, ofs, vi->nid);
-               err = -EIO;
+               err = -EOPNOTSUPP;
                goto unmap_out;
        }