Merge branch develop-3.10
[firefly-linux-kernel-4.4.55.git] / lib / btree.c
index 297124d4d8da081785e9f5a4f4ce11d3dd706da7..4264871ea1a00194750116a82c48e18d18edbd44 100644 (file)
@@ -198,6 +198,7 @@ EXPORT_SYMBOL_GPL(btree_init);
 
 void btree_destroy(struct btree_head *head)
 {
+       mempool_free(head->node, head->mempool);
        mempool_destroy(head->mempool);
        head->mempool = NULL;
 }
@@ -357,6 +358,7 @@ miss:
        }
        return NULL;
 }
+EXPORT_SYMBOL_GPL(btree_get_prev);
 
 static int getpos(struct btree_geo *geo, unsigned long *node,
                unsigned long *key)
@@ -508,6 +510,7 @@ retry:
 int btree_insert(struct btree_head *head, struct btree_geo *geo,
                unsigned long *key, void *val, gfp_t gfp)
 {
+       BUG_ON(!val);
        return btree_insert_level(head, geo, key, val, 1, gfp);
 }
 EXPORT_SYMBOL_GPL(btree_insert);