• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-WNDR4500-V1.0.1.40_1.0.68/src/linux/linux-2.6/fs/hfsplus_journal/

Lines Matching refs:HFSPLUS_SB

38 		hfs_find_init(HFSPLUS_SB(inode->i_sb).cat_tree, &fd);
50 vhdr = HFSPLUS_SB(inode->i_sb).s_vhdr;
101 if ((HFSPLUS_SB(inode->i_sb).jnl.journaled == HFSPLUS_JOURNAL_PRESENT) &&
127 vhdr = HFSPLUS_SB(inode->i_sb).s_vhdr;
134 HFSPLUS_SB(inode->i_sb).flags |= HFSPLUS_SB_WRITEBACKUP;
138 hfs_btree_write(&hfsplus_handle, HFSPLUS_SB(inode->i_sb).ext_tree);
142 HFSPLUS_SB(inode->i_sb).flags |= HFSPLUS_SB_WRITEBACKUP;
146 hfs_btree_write(&hfsplus_handle, HFSPLUS_SB(inode->i_sb).cat_tree);
150 HFSPLUS_SB(inode->i_sb).flags |= HFSPLUS_SB_WRITEBACKUP;
157 HFSPLUS_SB(inode->i_sb).flags |= HFSPLUS_SB_WRITEBACKUP;
164 HFSPLUS_SB(inode->i_sb).flags |= HFSPLUS_SB_WRITEBACKUP;
168 hfs_btree_write(&hfsplus_handle, HFSPLUS_SB(inode->i_sb).attr_tree);
185 struct hfsplus_vh *vhdr = HFSPLUS_SB(sb).s_vhdr;
197 vhdr->free_blocks = cpu_to_be32(HFSPLUS_SB(sb).free_blocks);
198 vhdr->next_alloc = cpu_to_be32(HFSPLUS_SB(sb).next_alloc);
199 vhdr->next_cnid = cpu_to_be32(HFSPLUS_SB(sb).next_cnid);
200 vhdr->folder_count = cpu_to_be32(HFSPLUS_SB(sb).folder_count);
201 vhdr->file_count = cpu_to_be32(HFSPLUS_SB(sb).file_count);
206 BUG_ON(!buffer_mapped(HFSPLUS_SB(sb).s_vhbh));
208 err = hfsplus_journal_get_write_access(__FUNCTION__, &hfsplus_handle, HFSPLUS_SB(sb).s_vhbh);
213 err = hfsplus_jbd_dirty_metadata(hfsplus_handle.handle, HFSPLUS_SB(sb).s_vhbh);
220 mark_buffer_dirty(HFSPLUS_SB(sb).s_vhbh);
221 if (HFSPLUS_SB(sb).flags & HFSPLUS_SB_WRITEBACKUP) {
222 if (HFSPLUS_SB(sb).sect_count) {
226 block = HFSPLUS_SB(sb).blockoffset;
227 block += (HFSPLUS_SB(sb).sect_count - 2) >> (sb->s_blocksize_bits - 9);
228 offset = ((HFSPLUS_SB(sb).sect_count - 2) << 9) & (sb->s_blocksize - 1);
229 printk("backup: %u,%u,%u,%u\n", HFSPLUS_SB(sb).blockoffset,
230 HFSPLUS_SB(sb).sect_count, block, offset);
235 memcpy(vhdr, HFSPLUS_SB(sb).s_vhdr, sizeof(*vhdr));
245 HFSPLUS_SB(sb).flags &= ~HFSPLUS_SB_WRITEBACKUP;
257 if (!(sb->s_flags & MS_RDONLY) && HFSPLUS_SB(sb).s_vhdr) {
258 struct hfsplus_vh *vhdr = HFSPLUS_SB(sb).s_vhdr;
263 mark_buffer_dirty(HFSPLUS_SB(sb).s_vhbh);
264 sync_dirty_buffer(HFSPLUS_SB(sb).s_vhbh);
267 hfs_btree_close(HFSPLUS_SB(sb).cat_tree);
268 hfs_btree_close(HFSPLUS_SB(sb).ext_tree);
269 iput(HFSPLUS_SB(sb).alloc_file);
270 iput(HFSPLUS_SB(sb).hidden_dir);
271 if (HFSPLUS_SB(sb).s_vhbh)
272 brelse(HFSPLUS_SB(sb).s_vhbh);
273 if (HFSPLUS_SB(sb).nls)
274 unload_nls(HFSPLUS_SB(sb).nls);
285 buf->f_blocks = HFSPLUS_SB(sb).total_blocks << HFSPLUS_SB(sb).fs_shift;
286 buf->f_bfree = HFSPLUS_SB(sb).free_blocks << HFSPLUS_SB(sb).fs_shift;
289 buf->f_ffree = 0xFFFFFFFF - HFSPLUS_SB(sb).next_cnid;
300 struct hfsplus_vh *vhdr = HFSPLUS_SB(sb).s_vhdr;
304 sbi.nls = HFSPLUS_SB(sb).nls;
359 memset(sbi, 0, sizeof(HFSPLUS_SB(sb)));
385 vhdr = HFSPLUS_SB(sb).s_vhdr;
396 HFSPLUS_SB(sb).jnl.s_journal = NULL;
397 if (HFSPLUS_SB(sb).jnl.journaled == HFSPLUS_JOURNAL_PRESENT) {
401 if (HFSPLUS_SB(sb).s_vhdr == NULL) {
418 HFSPLUS_SB(sb).jnl.s_journal = journal;
432 HFSPLUS_SB(sb).total_blocks = be32_to_cpu(vhdr->total_blocks);
433 HFSPLUS_SB(sb).free_blocks = be32_to_cpu(vhdr->free_blocks);
434 HFSPLUS_SB(sb).next_alloc = be32_to_cpu(vhdr->next_alloc);
435 HFSPLUS_SB(sb).next_cnid = be32_to_cpu(vhdr->next_cnid);
436 HFSPLUS_SB(sb).file_count = be32_to_cpu(vhdr->file_count);
437 HFSPLUS_SB(sb).folder_count = be32_to_cpu(vhdr->folder_count);
438 HFSPLUS_SB(sb).data_clump_blocks = be32_to_cpu(vhdr->data_clump_sz) >> HFSPLUS_SB(sb).alloc_blksz_shift;
439 if (!HFSPLUS_SB(sb).data_clump_blocks)
440 HFSPLUS_SB(sb).data_clump_blocks = 1;
441 HFSPLUS_SB(sb).rsrc_clump_blocks = be32_to_cpu(vhdr->rsrc_clump_sz) >> HFSPLUS_SB(sb).alloc_blksz_shift;
442 if (!HFSPLUS_SB(sb).rsrc_clump_blocks)
443 HFSPLUS_SB(sb).rsrc_clump_blocks = 1;
467 HFSPLUS_SB(sb).ext_tree = hfs_btree_open(sb, HFSPLUS_EXT_CNID);
468 if (!HFSPLUS_SB(sb).ext_tree) {
472 HFSPLUS_SB(sb).cat_tree = hfs_btree_open(sb, HFSPLUS_CAT_CNID);
473 if (!HFSPLUS_SB(sb).cat_tree) {
478 HFSPLUS_SB(sb).alloc_file = iget(sb, HFSPLUS_ALLOC_CNID);
479 if (!HFSPLUS_SB(sb).alloc_file) {
495 hfs_find_init(HFSPLUS_SB(sb).cat_tree, &fd);
505 HFSPLUS_SB(sb).hidden_dir = iget(sb, be32_to_cpu(entry.folder.id));
506 if (!HFSPLUS_SB(sb).hidden_dir) {
522 if (HFSPLUS_SB(sb).jnl.journaled == HFSPLUS_JOURNAL_PRESENT)
530 mark_buffer_dirty(HFSPLUS_SB(sb).s_vhbh);
531 sync_dirty_buffer(HFSPLUS_SB(sb).s_vhbh);
533 if (!HFSPLUS_SB(sb).hidden_dir) {
538 HFSPLUS_SB(sb).hidden_dir = hfsplus_new_inode(&hfsplus_handle, sb, S_IFDIR);
539 hfsplus_create_cat(&hfsplus_handle, HFSPLUS_SB(sb).hidden_dir->i_ino, sb->s_root->d_inode,
540 &str, HFSPLUS_SB(sb).hidden_dir);
541 hfsplus_journalled_mark_inode_dirty(__FUNCTION__, &hfsplus_handle, HFSPLUS_SB(sb).hidden_dir);
550 if (HFSPLUS_SB(sb).jnl.s_journal != NULL)
551 HFSPLUS_SB(sb).jnl.s_journal->j_flags |= JFS_ABORT;