]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
maple_tree: Change ordering of pivots and slots, as well as gaps in one
authorLiam R. Howlett <Liam.Howlett@Oracle.com>
Fri, 7 Aug 2020 00:18:14 +0000 (20:18 -0400)
committerLiam R. Howlett <Liam.Howlett@Oracle.com>
Fri, 30 Oct 2020 19:08:59 +0000 (15:08 -0400)
case.

Signed-off-by: Liam R. Howlett <Liam.Howlett@Oracle.com>
include/linux/maple_tree.h

index 5d5e53316be2db1409fe718cfd0be17ebd5f8e8c..951d3c45ce26c51633171acb021b548cd152ab65 100644 (file)
@@ -84,68 +84,67 @@ typedef struct maple_pnode *maple_pnode; // parent node.
  */
 struct maple_range_64 {
        struct maple_pnode *parent;
-       void __rcu *slot[MAPLE_RANGE64_SLOTS];
        unsigned long pivot[MAPLE_RANGE64_SLOTS - 1];
+       void __rcu *slot[MAPLE_RANGE64_SLOTS];
 };
 
 struct maple_arange_64 {
        struct maple_pnode *parent;
-       unsigned long gap[MAPLE_ARANGE64_SLOTS];
-       void __rcu *slot[MAPLE_ARANGE64_SLOTS];
        unsigned long pivot[MAPLE_ARANGE64_SLOTS - 1];
+       void __rcu *slot[MAPLE_ARANGE64_SLOTS];
+       unsigned long gap[MAPLE_ARANGE64_SLOTS];
 };
 
 struct maple_range_32 {
        struct maple_pnode *parent;
-       void __rcu *slot[MAPLE_RANGE32_SLOTS];
        u32 pivot[MAPLE_RANGE32_SLOTS - 1];
+       void __rcu *slot[MAPLE_RANGE32_SLOTS];
 };
 
 struct maple_range_16 {
        struct maple_pnode *parent;
-       void __rcu *slot[MAPLE_RANGE16_SLOTS];
        u16 pivot[MAPLE_RANGE16_SLOTS - 1];
+       void __rcu *slot[MAPLE_RANGE16_SLOTS];
 };
 
 struct maple_sparse_64 {
        struct maple_pnode *parent;
-       void __rcu *slot[MAPLE_SPARSE64_SLOTS];
        unsigned long pivot[MAPLE_SPARSE64_SLOTS];
+       void __rcu *slot[MAPLE_SPARSE64_SLOTS];
 };
 
 struct maple_sparse_32 {
        struct maple_pnode *parent;
-       void __rcu *slot[MAPLE_SPARSE32_SLOTS];
        u32 pivot[MAPLE_SPARSE32_SLOTS];
+       void __rcu *slot[MAPLE_SPARSE32_SLOTS];
 };
 
 struct maple_sparse_21 {
        struct maple_pnode *parent;
-       void __rcu *slot[MAPLE_SPARSE21_SLOTS];
        unsigned long pivot[(MAPLE_SPARSE21_SLOTS + 2) / 3];
+       void __rcu *slot[MAPLE_SPARSE21_SLOTS];
 };
 
 struct maple_sparse_16 {
        struct maple_pnode *parent;
-       void __rcu *slot[MAPLE_SPARSE16_SLOTS];
        u16 pivot[MAPLE_SPARSE16_SLOTS];
+       void __rcu *slot[MAPLE_SPARSE16_SLOTS];
 };
 
 struct maple_sparse_9 {
        struct maple_pnode *parent;
-       void __rcu *slot[MAPLE_SPARSE9_SLOTS];
        unsigned long pivot[(MAPLE_SPARSE9_SLOTS + 6) / 7];
+       void __rcu *slot[MAPLE_SPARSE9_SLOTS];
 };
 
 struct maple_sparse_6 {
        struct maple_pnode *parent;
-       void __rcu *slot[MAPLE_SPARSE6_SLOTS];
        unsigned long pivot;    /* Use a bitmap for pivots */
+       void __rcu *slot[MAPLE_SPARSE6_SLOTS];
 };
 
 struct maple_topiary {
        struct maple_pnode *parent;
-       void __rcu *slot[MAPLE_TOPIARY_SLOTS];
        struct maple_enode *next; /* Overlaps the pivot */
 };