blob: c75384b34f2c7e1f587818cafc301a5d6aae5b1e [file] [log] [blame]
Andrew Morton8984d132006-12-06 20:37:15 -08001/*
2 * Interface between ext4 and JBD
3 */
4
Christoph Hellwig3dcf5452008-04-29 18:13:32 -04005#include "ext4_jbd2.h"
Andrew Morton8984d132006-12-06 20:37:15 -08006
7int __ext4_journal_get_undo_access(const char *where, handle_t *handle,
8 struct buffer_head *bh)
9{
10 int err = jbd2_journal_get_undo_access(handle, bh);
11 if (err)
Harvey Harrison46e665e2008-04-17 10:38:59 -040012 ext4_journal_abort_handle(where, __func__, bh, handle, err);
Andrew Morton8984d132006-12-06 20:37:15 -080013 return err;
14}
15
16int __ext4_journal_get_write_access(const char *where, handle_t *handle,
17 struct buffer_head *bh)
18{
19 int err = jbd2_journal_get_write_access(handle, bh);
20 if (err)
Harvey Harrison46e665e2008-04-17 10:38:59 -040021 ext4_journal_abort_handle(where, __func__, bh, handle, err);
Andrew Morton8984d132006-12-06 20:37:15 -080022 return err;
23}
24
25int __ext4_journal_forget(const char *where, handle_t *handle,
26 struct buffer_head *bh)
27{
28 int err = jbd2_journal_forget(handle, bh);
29 if (err)
Harvey Harrison46e665e2008-04-17 10:38:59 -040030 ext4_journal_abort_handle(where, __func__, bh, handle, err);
Andrew Morton8984d132006-12-06 20:37:15 -080031 return err;
32}
33
34int __ext4_journal_revoke(const char *where, handle_t *handle,
35 ext4_fsblk_t blocknr, struct buffer_head *bh)
36{
37 int err = jbd2_journal_revoke(handle, blocknr, bh);
38 if (err)
Harvey Harrison46e665e2008-04-17 10:38:59 -040039 ext4_journal_abort_handle(where, __func__, bh, handle, err);
Andrew Morton8984d132006-12-06 20:37:15 -080040 return err;
41}
42
43int __ext4_journal_get_create_access(const char *where,
44 handle_t *handle, struct buffer_head *bh)
45{
46 int err = jbd2_journal_get_create_access(handle, bh);
47 if (err)
Harvey Harrison46e665e2008-04-17 10:38:59 -040048 ext4_journal_abort_handle(where, __func__, bh, handle, err);
Andrew Morton8984d132006-12-06 20:37:15 -080049 return err;
50}
51
52int __ext4_journal_dirty_metadata(const char *where,
53 handle_t *handle, struct buffer_head *bh)
54{
55 int err = jbd2_journal_dirty_metadata(handle, bh);
56 if (err)
Harvey Harrison46e665e2008-04-17 10:38:59 -040057 ext4_journal_abort_handle(where, __func__, bh, handle, err);
Andrew Morton8984d132006-12-06 20:37:15 -080058 return err;
59}