• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-WNDR4500v2-V1.0.0.60_1.0.38/src/linux/linux-2.6/fs/hfsplus_journal/

Lines Matching refs:jh

42 static void swap_journal_header(struct hfsplus_journal_header *jh)
44 jh->magic = swab32(jh->magic);
45 jh->endian = swab32(jh->endian);
46 jh->start = swab64(jh->start);
47 jh->end = swab64(jh->end);
48 jh->size = swab64(jh->size);
49 jh->blhdr_size = swab32(jh->blhdr_size);
50 jh->checksum = swab32(jh->checksum);
51 jh->jhdr_size = swab32(jh->jhdr_size);
65 static void print_journal_header(struct hfsplus_journal_header *jh)
67 dprint(DBG_JOURNAL, "HFS+-fs: magic: %x\n endian: %x\n start: %llx\n end: %llx\n size: %llx\n blhdr_size: %x\n checksum: %x\n jhdr_size: %x\n", jh->magic, jh->endian, jh->start, jh->end, jh->size, jh->blhdr_size, jh->checksum, jh->jhdr_size);
272 struct hfsplus_journal_header *jh;
275 jh = (struct hfsplus_journal_header *)(HFSPLUS_SB(sb).jnl.jhdr);
278 len = (int)(jh->size + jnl->jh_offset)/blocksize;
440 struct hfsplus_journal_header *jh = &(journal->j_superblock->mac_jh);
442 jh->checksum = 0;
443 jh->checksum = calc_checksum((unsigned char *)jh, sizeof(struct hfsplus_journal_header));
450 struct hfsplus_journal_header *jh = &(jsb->mac_jh);
451 __be32 mac_jh_start_blocknum = (jh->start + HFSPLUS_SB(sb).jnl.jh_offset) >> sb->s_blocksize_bits;
453 dprint(DBG_JCHKPT, "jh->start:%llx, jh_offset: %llx, mac_jh_start_blocknum: %x, freed: %lx, last: %lx, j_first: %lx\n",
454 jh->start, HFSPLUS_SB(sb).jnl.jh_offset, mac_jh_start_blocknum, freed, journal->j_last, journal->j_first);
456 jh->start += freed * sb->s_blocksize;
459 jh->start = (journal->j_first + (freed - (journal->j_last - mac_jh_start_blocknum)))*sb->s_blocksize;
463 void inline hfsplus_journal_header_end_update(hfsplus_jbd_t *journal, struct hfsplus_journal_header *jh)
467 jh->end = ((journal->j_head - journal->j_first) * sb->s_blocksize) + jh->blhdr_size;
472 struct hfsplus_journal_header *jh = &(journal->j_superblock->mac_jh);
474 jh->start = jh->end;
475 jh->checksum = 0;
476 jh->checksum = calc_checksum((unsigned char *)jh, sizeof(struct hfsplus_journal_header));
484 struct hfsplus_journal_header *jh = (struct hfsplus_journal_header *)(HFSPLUS_SB(sb).jnl.jhdr);
486 jh->start = sb->s_blocksize;
487 jh->end = sb->s_blocksize;
488 jh->blhdr_size = sb->s_blocksize;
491 swap_journal_header(jh);
492 jh->checksum = 0;
493 jh->checksum = swab32(calc_checksum((unsigned char *)jh, sizeof(struct hfsplus_journal_header)));
496 jh->checksum = 0;
497 jh->checksum = calc_checksum((unsigned char *)jh, sizeof(struct hfsplus_journal_header));
505 swap_journal_header(jh);
512 struct hfsplus_journal_header *jh = (struct hfsplus_journal_header *)(HFSPLUS_SB(sb).jnl.jhdr);
514 jh->checksum = 0;
515 jh->checksum = calc_checksum((unsigned char *)jh, sizeof(struct hfsplus_journal_header));
563 void hfsplus_test_block_list_header(const char *func, struct hfsplus_journal_header *jh, struct hfsplus_journal *jnl)
571 start_block_number = (jh->start + jnl->jh_offset) >> sb->s_blocksize_bits;
595 struct hfsplus_journal_header *jh = (struct hfsplus_journal_header *)(HFSPLUS_SB(sb).jnl.jhdr);
599 if (jh->start == jh->end) {
605 if ((jh->start > jh->size) || (jh->end > jh->size)) {
606 printk("HFS+-fs: Wrong start or end offset, start: %llx, end: %llx, jh_offset: %llx, size: %llx\n", jh->start, jh->end, jnl->jh_offset, jh->size);
610 //hfsplus_test_block_list_header(__FUNCTION__, jh, jnl);
612 if (jh->start == jh->size)
613 jh->start = jh->jhdr_size;
617 while (jh->start != jh->end) {
621 start_sector_number = (jh->start + jnl->jh_offset) >> HFSPLUS_SECTOR_SHIFT;
622 dprint(DBG_JREPLAY, "start: %llx, start_sector_number: %x\n", jh->start, start_sector_number);
635 tr_offset = jnl->jh_offset + jh->start + jh->blhdr_size;
684 if (tr_offset == (jnl->jh_offset + jh->size)) {
685 printk("tr_offset: %llx, jh->size: %llx, jh_offset: %llx\n", tr_offset, jh->size, jnl->jh_offset);
686 tr_offset = jnl->jh_offset + jh->jhdr_size; /* Set to the beginning of journal buffer */
692 if ((jh->start + blhdr->bytes_used) < jh->size)
693 jh->start += blhdr->bytes_used;
695 jh->start = jh->jhdr_size + (jh->start + blhdr->bytes_used) - jh->size;
701 if (jh->start == jh->end) {
750 struct hfsplus_journal_header *jh;
781 jh = (struct hfsplus_journal_header *)(HFSPLUS_SB(sb).jnl.jhdr);
783 org_checksum = jh->checksum;
784 jh->checksum = 0;
786 if (jh->magic == swab32(HFSPLUS_JOURNAL_HEADER_MAGIC)) {
788 checksum = calc_checksum((unsigned char *)jh, sizeof(struct hfsplus_journal_header));
789 swap_journal_header(jh);
793 checksum = calc_checksum((unsigned char *)jh, sizeof(struct hfsplus_journal_header));
795 print_journal_header(jh);
798 if(jh->magic != HFSPLUS_JOURNAL_HEADER_MAGIC || jh->endian != HFSPLUS_JOURNAL_HEADER_ENDIAN){
804 jh->checksum = checksum;
808 jh->checksum = checksum;
813 if(jh->start == jh->end) {