#define MAPLE_NODE_SLOTS       31      /* 256 bytes including ->parent */
 #define MAPLE_RANGE64_SLOTS    16      /* 256 bytes */
 #define MAPLE_ARANGE64_SLOTS   10      /* 240 bytes */
-#define MAPLE_ARANGE64_META_MAX        15      /* Out of range for metadata */
 #define MAPLE_ALLOC_SLOTS      (MAPLE_NODE_SLOTS - 1)
 #else
 /* 32bit sizes */
 #define MAPLE_NODE_SLOTS       63      /* 256 bytes including ->parent */
 #define MAPLE_RANGE64_SLOTS    32      /* 256 bytes */
 #define MAPLE_ARANGE64_SLOTS   21      /* 240 bytes */
-#define MAPLE_ARANGE64_META_MAX        31      /* Out of range for metadata */
 #define MAPLE_ALLOC_SLOTS      (MAPLE_NODE_SLOTS - 2)
 #endif /* defined(CONFIG_64BIT) || defined(BUILD_VDSO32_64) */
 
 
  * mas_max_gap() - find the largest gap in a non-leaf node and set the slot.
  * @mas: The maple state.
  *
- * If the metadata gap is set to MAPLE_ARANGE64_META_MAX, there is no gap.
- *
  * Return: The gap value.
  */
 static inline unsigned long mas_max_gap(struct ma_state *mas)
        node = mas_mn(mas);
        MAS_BUG_ON(mas, mt != maple_arange_64);
        offset = ma_meta_gap(node, mt);
-       if (offset == MAPLE_ARANGE64_META_MAX)
-               return 0;
-
        gaps = ma_gaps(node, mt);
        return gaps[offset];
 }
 ascend:
        MAS_BUG_ON(mas, pmt != maple_arange_64);
        meta_offset = ma_meta_gap(pnode, pmt);
-       if (meta_offset == MAPLE_ARANGE64_META_MAX)
-               meta_gap = 0;
-       else
-               meta_gap = pgaps[meta_offset];
+       meta_gap = pgaps[meta_offset];
 
        pgaps[offset] = new;
 
 
                ma_set_meta_gap(pnode, pmt, offset);
        } else if (new < meta_gap) {
-               meta_offset = 15;
                new = ma_max_gap(pnode, pgaps, pmt, &meta_offset);
                ma_set_meta_gap(pnode, pmt, meta_offset);
        }
        end = j - 1;
        if (likely(!ma_is_leaf(mt) && mt_is_alloc(mas->tree))) {
                unsigned long max_gap = 0;
-               unsigned char offset = 15;
+               unsigned char offset = 0;
 
                gaps = ma_gaps(node, mt);
                do {