Lines Matching defs:jh
2863 static void journal_free_journal_head(struct journal_head *jh)
2867 memset(jh, JBD2_POISON_FREE, sizeof(*jh));
2869 kmem_cache_free(jbd2_journal_head_cache, jh);
2899 * struct journal_head *jh = jbd2_journal_add_journal_head(bh);
2903 * jh->b_transaction = xxx;
2905 * jbd2_journal_put_journal_head(jh);
2915 struct journal_head *jh;
2924 jh = bh2jh(bh);
2935 jh = new_jh;
2938 bh->b_private = jh;
2939 jh->b_bh = bh;
2943 jh->b_jcount++;
2956 struct journal_head *jh = NULL;
2960 jh = bh2jh(bh);
2961 jh->b_jcount++;
2964 return jh;
2970 struct journal_head *jh = bh2jh(bh);
2972 J_ASSERT_JH(jh, jh->b_transaction == NULL);
2973 J_ASSERT_JH(jh, jh->b_next_transaction == NULL);
2974 J_ASSERT_JH(jh, jh->b_cp_transaction == NULL);
2975 J_ASSERT_JH(jh, jh->b_jlist == BJ_None);
2977 J_ASSERT_BH(bh, jh2bh(jh) == bh);
2982 jh->b_bh = NULL; /* debug, really */
2986 static void journal_release_journal_head(struct journal_head *jh, size_t b_size)
2988 if (jh->b_frozen_data) {
2990 jbd2_free(jh->b_frozen_data, b_size);
2992 if (jh->b_committed_data) {
2994 jbd2_free(jh->b_committed_data, b_size);
2996 journal_free_journal_head(jh);
3003 void jbd2_journal_put_journal_head(struct journal_head *jh)
3005 struct buffer_head *bh = jh2bh(jh);
3008 J_ASSERT_JH(jh, jh->b_jcount > 0);
3009 --jh->b_jcount;
3010 if (!jh->b_jcount) {
3013 journal_release_journal_head(jh, bh->b_size);