1/*
2 * Interface between ext3 and JBD
3 */
4
5#include "ext3.h"
6
7int __ext3_journal_get_undo_access(const char *where, handle_t *handle,
8				struct buffer_head *bh)
9{
10	int err = journal_get_undo_access(handle, bh);
11	if (err)
12		ext3_journal_abort_handle(where, __func__, bh, handle,err);
13	return err;
14}
15
16int __ext3_journal_get_write_access(const char *where, handle_t *handle,
17				struct buffer_head *bh)
18{
19	int err = journal_get_write_access(handle, bh);
20	if (err)
21		ext3_journal_abort_handle(where, __func__, bh, handle,err);
22	return err;
23}
24
25int __ext3_journal_forget(const char *where, handle_t *handle,
26				struct buffer_head *bh)
27{
28	int err = journal_forget(handle, bh);
29	if (err)
30		ext3_journal_abort_handle(where, __func__, bh, handle,err);
31	return err;
32}
33
34int __ext3_journal_revoke(const char *where, handle_t *handle,
35				unsigned long blocknr, struct buffer_head *bh)
36{
37	int err = journal_revoke(handle, blocknr, bh);
38	if (err)
39		ext3_journal_abort_handle(where, __func__, bh, handle,err);
40	return err;
41}
42
43int __ext3_journal_get_create_access(const char *where,
44				handle_t *handle, struct buffer_head *bh)
45{
46	int err = journal_get_create_access(handle, bh);
47	if (err)
48		ext3_journal_abort_handle(where, __func__, bh, handle,err);
49	return err;
50}
51
52int __ext3_journal_dirty_metadata(const char *where,
53				handle_t *handle, struct buffer_head *bh)
54{
55	int err = journal_dirty_metadata(handle, bh);
56	if (err)
57		ext3_journal_abort_handle(where, __func__, bh, handle,err);
58	return err;
59}
60