]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - fs/jbd2/revoke.c
spinlock: lockbreak cleanup
[linux-2.6-omap-h63xx.git] / fs / jbd2 / revoke.c
index 9246e763da78f1491d53b9f0ae12d89579494eaf..df36f42e19e11687b32bd08741c5969db325e116 100644 (file)
@@ -68,6 +68,7 @@
 #include <linux/list.h>
 #include <linux/init.h>
 #endif
+#include <linux/log2.h>
 
 static struct kmem_cache *jbd2_revoke_record_cache;
 static struct kmem_cache *jbd2_revoke_table_cache;
@@ -170,13 +171,15 @@ int __init jbd2_journal_init_revoke_caches(void)
 {
        jbd2_revoke_record_cache = kmem_cache_create("jbd2_revoke_record",
                                           sizeof(struct jbd2_revoke_record_s),
-                                          0, SLAB_HWCACHE_ALIGN, NULL, NULL);
+                                          0,
+                                          SLAB_HWCACHE_ALIGN|SLAB_TEMPORARY,
+                                          NULL);
        if (jbd2_revoke_record_cache == 0)
                return -ENOMEM;
 
        jbd2_revoke_table_cache = kmem_cache_create("jbd2_revoke_table",
                                           sizeof(struct jbd2_revoke_table_s),
-                                          0, 0, NULL, NULL);
+                                          0, SLAB_TEMPORARY, NULL);
        if (jbd2_revoke_table_cache == 0) {
                kmem_cache_destroy(jbd2_revoke_record_cache);
                jbd2_revoke_record_cache = NULL;
@@ -212,7 +215,7 @@ int jbd2_journal_init_revoke(journal_t *journal, int hash_size)
        journal->j_revoke = journal->j_revoke_table[0];
 
        /* Check that the hash_size is a power of two */
-       J_ASSERT ((hash_size & (hash_size-1)) == 0);
+       J_ASSERT(is_power_of_2(hash_size));
 
        journal->j_revoke->hash_size = hash_size;
 
@@ -239,7 +242,7 @@ int jbd2_journal_init_revoke(journal_t *journal, int hash_size)
        journal->j_revoke = journal->j_revoke_table[1];
 
        /* Check that the hash_size is a power of two */
-       J_ASSERT ((hash_size & (hash_size-1)) == 0);
+       J_ASSERT(is_power_of_2(hash_size));
 
        journal->j_revoke->hash_size = hash_size;
 
@@ -351,7 +354,7 @@ int jbd2_journal_revoke(handle_t *handle, unsigned long long blocknr,
                if (bh)
                        BUFFER_TRACE(bh, "found on hash");
        }
-#ifdef JBD_EXPENSIVE_CHECKING
+#ifdef JBD2_EXPENSIVE_CHECKING
        else {
                struct buffer_head *bh2;
 
@@ -452,7 +455,7 @@ int jbd2_journal_cancel_revoke(handle_t *handle, struct journal_head *jh)
                }
        }
 
-#ifdef JBD_EXPENSIVE_CHECKING
+#ifdef JBD2_EXPENSIVE_CHECKING
        /* There better not be one left behind by now! */
        record = find_revoke_record(journal, bh->b_blocknr);
        J_ASSERT_JH(jh, record == NULL);