#include <linux/smp_lock.h>
#include <linux/init.h>
#include <linux/mm.h>
-#include <linux/suspend.h>
+#include <linux/freezer.h>
#include <linux/pagemap.h>
#include <linux/kthread.h>
#include <linux/poison.h>
int jbd2_journal_write_metadata_buffer(transaction_t *transaction,
struct journal_head *jh_in,
struct journal_head **jh_out,
- sector_t blocknr)
+ unsigned long long blocknr)
{
int need_copy_out = 0;
int done_copy_out = 0;
* Log buffer allocation routines:
*/
-int jbd2_journal_next_log_block(journal_t *journal, sector_t *retp)
+int jbd2_journal_next_log_block(journal_t *journal, unsigned long long *retp)
{
unsigned long blocknr;
* ready.
*/
int jbd2_journal_bmap(journal_t *journal, unsigned long blocknr,
- sector_t *retp)
+ unsigned long long *retp)
{
int err = 0;
- sector_t ret;
+ unsigned long long ret;
if (journal->j_inode) {
ret = bmap(journal->j_inode, blocknr);
struct journal_head *jbd2_journal_get_descriptor_buffer(journal_t *journal)
{
struct buffer_head *bh;
- sector_t blocknr;
+ unsigned long long blocknr;
int err;
err = jbd2_journal_next_log_block(journal, &blocknr);
*/
journal_t * jbd2_journal_init_dev(struct block_device *bdev,
struct block_device *fs_dev,
- sector_t start, int len, int blocksize)
+ unsigned long long start, int len, int blocksize)
{
journal_t *journal = journal_init_common();
struct buffer_head *bh;
__FUNCTION__);
kfree(journal);
journal = NULL;
+ goto out;
}
journal->j_dev = bdev;
journal->j_fs_dev = fs_dev;
J_ASSERT(bh != NULL);
journal->j_sb_buffer = bh;
journal->j_superblock = (journal_superblock_t *)bh->b_data;
-
+out:
return journal;
}
journal_t *journal = journal_init_common();
int err;
int n;
- sector_t blocknr;
+ unsigned long long blocknr;
if (!journal)
return NULL;
static int journal_reset(journal_t *journal)
{
journal_superblock_t *sb = journal->j_superblock;
- sector_t first, last;
+ unsigned long long first, last;
first = be32_to_cpu(sb->s_first);
last = be32_to_cpu(sb->s_maxlen);
**/
int jbd2_journal_create(journal_t *journal)
{
- sector_t blocknr;
+ unsigned long long blocknr;
struct buffer_head *bh;
journal_superblock_t *sb;
int i, err;
#define JBD_MAX_SLABS 5
#define JBD_SLAB_INDEX(size) (size >> 11)
-static kmem_cache_t *jbd_slab[JBD_MAX_SLABS];
+static struct kmem_cache *jbd_slab[JBD_MAX_SLABS];
static const char *jbd_slab_names[JBD_MAX_SLABS] = {
"jbd2_1k", "jbd2_2k", "jbd2_4k", NULL, "jbd2_8k"
};
/*
* Journal_head storage management
*/
-static kmem_cache_t *jbd2_journal_head_cache;
+static struct kmem_cache *jbd2_journal_head_cache;
#ifdef CONFIG_JBD_DEBUG
static atomic_t nr_journal_heads = ATOMIC_INIT(0);
#endif
#endif
-kmem_cache_t *jbd2_handle_cache;
+struct kmem_cache *jbd2_handle_cache;
static int __init journal_init_handle_cache(void)
{