Lines Matching refs:handle
40 static struct buffer_head *ext3_append(handle_t *handle, in ext3_append() argument
48 if ((bh = ext3_dir_bread(handle, inode, *block, 1, err))) { in ext3_append()
51 *err = ext3_journal_get_write_access(handle, bh); in ext3_append()
165 static int ext3_dx_add_entry(handle_t *handle, struct dentry *dentry,
1138 static struct ext3_dir_entry_2 *do_split(handle_t *handle, struct inode *dir, in do_split() argument
1153 bh2 = ext3_append (handle, dir, &newblock, &err); in do_split()
1161 err = ext3_journal_get_write_access(handle, *bh); in do_split()
1166 err = ext3_journal_get_write_access(handle, frame->bh); in do_split()
1210 err = ext3_journal_dirty_metadata (handle, bh2); in do_split()
1213 err = ext3_journal_dirty_metadata (handle, frame->bh); in do_split()
1242 static int add_dirent_to_buf(handle_t *handle, struct dentry *dentry, in add_dirent_to_buf() argument
1279 err = ext3_journal_get_write_access(handle, bh); in add_dirent_to_buf()
1317 ext3_mark_inode_dirty(handle, dir); in add_dirent_to_buf()
1319 err = ext3_journal_dirty_metadata(handle, bh); in add_dirent_to_buf()
1330 static int make_indexed_dir(handle_t *handle, struct dentry *dentry, in make_indexed_dir() argument
1351 retval = ext3_journal_get_write_access(handle, bh); in make_indexed_dir()
1372 bh2 = ext3_append (handle, dir, &block, &retval); in make_indexed_dir()
1412 ext3_journal_dirty_metadata(handle, frame->bh); in make_indexed_dir()
1413 ext3_journal_dirty_metadata(handle, bh); in make_indexed_dir()
1414 de = do_split(handle,dir, &bh, frame, &hinfo, &retval); in make_indexed_dir()
1416 ext3_mark_inode_dirty(handle, dir); in make_indexed_dir()
1422 return add_dirent_to_buf(handle, dentry, inode, de, bh); in make_indexed_dir()
1435 static int ext3_add_entry (handle_t *handle, struct dentry *dentry, in ext3_add_entry() argument
1452 retval = ext3_dx_add_entry(handle, dentry, inode); in ext3_add_entry()
1457 ext3_mark_inode_dirty(handle, dir); in ext3_add_entry()
1461 if (!(bh = ext3_dir_bread(handle, dir, block, 0, &retval))) in ext3_add_entry()
1464 retval = add_dirent_to_buf(handle, dentry, inode, NULL, bh); in ext3_add_entry()
1470 return make_indexed_dir(handle, dentry, inode, bh); in ext3_add_entry()
1473 bh = ext3_append(handle, dir, &block, &retval); in ext3_add_entry()
1479 return add_dirent_to_buf(handle, dentry, inode, de, bh); in ext3_add_entry()
1485 static int ext3_dx_add_entry(handle_t *handle, struct dentry *dentry, in ext3_dx_add_entry() argument
1503 if (!(bh = ext3_dir_bread(handle, dir, dx_get_block(frame->at), 0, &err))) in ext3_dx_add_entry()
1507 err = ext3_journal_get_write_access(handle, bh); in ext3_dx_add_entry()
1511 err = add_dirent_to_buf(handle, dentry, inode, NULL, bh); in ext3_dx_add_entry()
1536 bh2 = ext3_append (handle, dir, &newblock, &err); in ext3_dx_add_entry()
1544 err = ext3_journal_get_write_access(handle, frame->bh); in ext3_dx_add_entry()
1553 err = ext3_journal_get_write_access(handle, in ext3_dx_add_entry()
1574 err = ext3_journal_dirty_metadata(handle, bh2); in ext3_dx_add_entry()
1594 err = ext3_journal_get_write_access(handle, in ext3_dx_add_entry()
1599 err = ext3_journal_dirty_metadata(handle, frames[0].bh); in ext3_dx_add_entry()
1603 de = do_split(handle, dir, &bh, frame, &hinfo, &err); in ext3_dx_add_entry()
1606 err = add_dirent_to_buf(handle, dentry, inode, de, bh); in ext3_dx_add_entry()
1623 static int ext3_delete_entry (handle_t *handle, in ext3_delete_entry() argument
1641 err = ext3_journal_get_write_access(handle, bh); in ext3_delete_entry()
1653 err = ext3_journal_dirty_metadata(handle, bh); in ext3_delete_entry()
1668 static int ext3_add_nondir(handle_t *handle, in ext3_add_nondir() argument
1671 int err = ext3_add_entry(handle, dentry, inode); in ext3_add_nondir()
1673 ext3_mark_inode_dirty(handle, inode); in ext3_add_nondir()
1695 handle_t *handle; in ext3_create() local
1702 handle = ext3_journal_start(dir, EXT3_DATA_TRANS_BLOCKS(dir->i_sb) + in ext3_create()
1705 if (IS_ERR(handle)) in ext3_create()
1706 return PTR_ERR(handle); in ext3_create()
1709 handle->h_sync = 1; in ext3_create()
1711 inode = ext3_new_inode (handle, dir, &dentry->d_name, mode); in ext3_create()
1717 err = ext3_add_nondir(handle, dentry, inode); in ext3_create()
1719 ext3_journal_stop(handle); in ext3_create()
1728 handle_t *handle; in ext3_mknod() local
1738 handle = ext3_journal_start(dir, EXT3_DATA_TRANS_BLOCKS(dir->i_sb) + in ext3_mknod()
1741 if (IS_ERR(handle)) in ext3_mknod()
1742 return PTR_ERR(handle); in ext3_mknod()
1745 handle->h_sync = 1; in ext3_mknod()
1747 inode = ext3_new_inode (handle, dir, &dentry->d_name, mode); in ext3_mknod()
1754 err = ext3_add_nondir(handle, dentry, inode); in ext3_mknod()
1756 ext3_journal_stop(handle); in ext3_mknod()
1764 handle_t *handle; in ext3_tmpfile() local
1771 handle = ext3_journal_start(dir, EXT3_MAXQUOTAS_INIT_BLOCKS(dir->i_sb) + in ext3_tmpfile()
1774 if (IS_ERR(handle)) in ext3_tmpfile()
1775 return PTR_ERR(handle); in ext3_tmpfile()
1777 inode = ext3_new_inode (handle, dir, NULL, mode); in ext3_tmpfile()
1784 err = ext3_orphan_add(handle, inode); in ext3_tmpfile()
1790 ext3_journal_stop(handle); in ext3_tmpfile()
1795 ext3_journal_stop(handle); in ext3_tmpfile()
1802 handle_t *handle; in ext3_mkdir() local
1814 handle = ext3_journal_start(dir, EXT3_DATA_TRANS_BLOCKS(dir->i_sb) + in ext3_mkdir()
1817 if (IS_ERR(handle)) in ext3_mkdir()
1818 return PTR_ERR(handle); in ext3_mkdir()
1821 handle->h_sync = 1; in ext3_mkdir()
1823 inode = ext3_new_inode (handle, dir, &dentry->d_name, S_IFDIR | mode); in ext3_mkdir()
1831 if (!(dir_block = ext3_dir_bread(handle, inode, 0, 1, &err))) in ext3_mkdir()
1835 err = ext3_journal_get_write_access(handle, dir_block); in ext3_mkdir()
1854 err = ext3_journal_dirty_metadata(handle, dir_block); in ext3_mkdir()
1858 err = ext3_mark_inode_dirty(handle, inode); in ext3_mkdir()
1860 err = ext3_add_entry (handle, dentry, inode); in ext3_mkdir()
1866 ext3_mark_inode_dirty(handle, inode); in ext3_mkdir()
1872 err = ext3_mark_inode_dirty(handle, dir); in ext3_mkdir()
1880 ext3_journal_stop(handle); in ext3_mkdir()
1967 int ext3_orphan_add(handle_t *handle, struct inode *inode) in ext3_orphan_add() argument
1994 err = ext3_journal_get_write_access(handle, EXT3_SB(sb)->s_sbh); in ext3_orphan_add()
1998 err = ext3_reserve_inode_write(handle, inode, &iloc); in ext3_orphan_add()
2005 err = ext3_journal_dirty_metadata(handle, EXT3_SB(sb)->s_sbh); in ext3_orphan_add()
2006 rc = ext3_mark_iloc_dirty(handle, inode, &iloc); in ext3_orphan_add()
2034 int ext3_orphan_del(handle_t *handle, struct inode *inode) in ext3_orphan_del() argument
2059 if (!handle) in ext3_orphan_del()
2062 err = ext3_reserve_inode_write(handle, inode, &iloc); in ext3_orphan_del()
2069 err = ext3_journal_get_write_access(handle, sbi->s_sbh); in ext3_orphan_del()
2073 err = ext3_journal_dirty_metadata(handle, sbi->s_sbh); in ext3_orphan_del()
2081 err = ext3_reserve_inode_write(handle, i_prev, &iloc2); in ext3_orphan_del()
2085 err = ext3_mark_iloc_dirty(handle, i_prev, &iloc2); in ext3_orphan_del()
2090 err = ext3_mark_iloc_dirty(handle, inode, &iloc); in ext3_orphan_del()
2109 handle_t *handle; in ext3_rmdir() local
2116 handle = ext3_journal_start(dir, EXT3_DELETE_TRANS_BLOCKS(dir->i_sb)); in ext3_rmdir()
2117 if (IS_ERR(handle)) in ext3_rmdir()
2118 return PTR_ERR(handle); in ext3_rmdir()
2126 handle->h_sync = 1; in ext3_rmdir()
2138 retval = ext3_delete_entry(handle, dir, de, bh); in ext3_rmdir()
2151 ext3_orphan_add(handle, inode); in ext3_rmdir()
2153 ext3_mark_inode_dirty(handle, inode); in ext3_rmdir()
2156 ext3_mark_inode_dirty(handle, dir); in ext3_rmdir()
2159 ext3_journal_stop(handle); in ext3_rmdir()
2170 handle_t *handle; in ext3_unlink() local
2178 handle = ext3_journal_start(dir, EXT3_DELETE_TRANS_BLOCKS(dir->i_sb)); in ext3_unlink()
2179 if (IS_ERR(handle)) in ext3_unlink()
2180 return PTR_ERR(handle); in ext3_unlink()
2183 handle->h_sync = 1; in ext3_unlink()
2202 retval = ext3_delete_entry(handle, dir, de, bh); in ext3_unlink()
2207 ext3_mark_inode_dirty(handle, dir); in ext3_unlink()
2210 ext3_orphan_add(handle, inode); in ext3_unlink()
2212 ext3_mark_inode_dirty(handle, inode); in ext3_unlink()
2216 ext3_journal_stop(handle); in ext3_unlink()
2225 handle_t *handle; in ext3_symlink() local
2257 handle = ext3_journal_start(dir, credits); in ext3_symlink()
2258 if (IS_ERR(handle)) in ext3_symlink()
2259 return PTR_ERR(handle); in ext3_symlink()
2262 handle->h_sync = 1; in ext3_symlink()
2264 inode = ext3_new_inode (handle, dir, &dentry->d_name, S_IFLNK|S_IRWXUGO); in ext3_symlink()
2284 err = ext3_orphan_add(handle, inode); in ext3_symlink()
2285 ext3_journal_stop(handle); in ext3_symlink()
2295 handle = ext3_journal_start(dir, in ext3_symlink()
2298 if (IS_ERR(handle)) { in ext3_symlink()
2299 err = PTR_ERR(handle); in ext3_symlink()
2303 err = ext3_orphan_del(handle, inode); in ext3_symlink()
2305 ext3_journal_stop(handle); in ext3_symlink()
2315 err = ext3_add_nondir(handle, dentry, inode); in ext3_symlink()
2317 ext3_journal_stop(handle); in ext3_symlink()
2330 handle_t *handle; in ext3_link() local
2340 handle = ext3_journal_start(dir, EXT3_DATA_TRANS_BLOCKS(dir->i_sb) + in ext3_link()
2342 if (IS_ERR(handle)) in ext3_link()
2343 return PTR_ERR(handle); in ext3_link()
2346 handle->h_sync = 1; in ext3_link()
2352 err = ext3_add_entry(handle, dentry, inode); in ext3_link()
2354 ext3_mark_inode_dirty(handle, inode); in ext3_link()
2359 ext3_orphan_del(handle, inode); in ext3_link()
2365 ext3_journal_stop(handle); in ext3_link()
2381 handle_t *handle; in ext3_rename() local
2396 handle = ext3_journal_start(old_dir, 2 * in ext3_rename()
2399 if (IS_ERR(handle)) in ext3_rename()
2400 return PTR_ERR(handle); in ext3_rename()
2403 handle->h_sync = 1; in ext3_rename()
2432 dir_bh = ext3_dir_bread(handle, old_inode, 0, 0, &retval); in ext3_rename()
2443 retval = ext3_add_entry (handle, new_dentry, old_inode); in ext3_rename()
2448 retval = ext3_journal_get_write_access(handle, new_bh); in ext3_rename()
2457 ext3_mark_inode_dirty(handle, new_dir); in ext3_rename()
2459 retval = ext3_journal_dirty_metadata(handle, new_bh); in ext3_rename()
2471 ext3_mark_inode_dirty(handle, old_inode); in ext3_rename()
2479 (retval = ext3_delete_entry(handle, old_dir, in ext3_rename()
2491 retval = ext3_delete_entry(handle, old_dir, in ext3_rename()
2510 retval = ext3_journal_get_write_access(handle, dir_bh); in ext3_rename()
2515 retval = ext3_journal_dirty_metadata(handle, dir_bh); in ext3_rename()
2527 ext3_mark_inode_dirty(handle, new_dir); in ext3_rename()
2530 ext3_mark_inode_dirty(handle, old_dir); in ext3_rename()
2532 ext3_mark_inode_dirty(handle, new_inode); in ext3_rename()
2534 ext3_orphan_add(handle, new_inode); in ext3_rename()
2544 ext3_journal_stop(handle); in ext3_rename()