Lines Matching full:node

118 /* Returns first valid node after 'ref'. May return 'ref' */
124 JFFS2_DBG_NODEREF("node at 0x%08x is obsoleted. Ignoring.\n", ref_offset(ref)); in jffs2_first_valid_node()
132 * It is called every time an directory entry node is found.
135 * 1 if the node should be marked obsolete;
156 JFFS2_ERROR("illegal nsize in node at %#08x: nsize %#02x, totlen %#04x\n", in read_direntry()
217 * It is called every time an inode node is found.
220 * 1 if the node should be marked obsolete;
238 /* If we've never checked the CRCs on this node, check them now */ in read_dnode()
244 JFFS2_NOTICE("header CRC failed on node at %#08x: read %#08x, calculated %#08x\n", in read_dnode()
252 JFFS2_WARNING("inode node header CRC is corrupted at %#08x\n", ref_offset(ref)); in read_dnode()
298 JFFS2_NOTICE("data CRC failed on node at %#08x: read %#08x, calculated %#08x\n", in read_dnode()
305 /* Mark the node as having been checked and fix the accounting accordingly */ in read_dnode()
315 /* If node covers at least a whole page, or if it starts at the in read_dnode()
317 it's a hole node, mark it REF_PRISTINE, else REF_NORMAL. in read_dnode()
320 when the overlapping node(s) get added to the tree anyway. in read_dnode()
325 JFFS2_DBG_READINODE("marking node at %#08x REF_PRISTINE\n", ref_offset(ref)); in read_dnode()
328 JFFS2_DBG_READINODE("marking node at %#08x REF_NORMAL\n", ref_offset(ref)); in read_dnode()
368 * It is called every time an unknown node is found.
371 * 1 if the node should be marked obsolete;
387 …JFFS2_NOTICE("node header CRC failed at %#08x. But it must have been OK earlier.\n", ref_offset(re… in read_unknown()
432 union jffs2_node_union node; in jffs2_get_inode_nodes() local
448 /* We can hold a pointer to a non-obsolete node without the spinlock, in jffs2_get_inode_nodes()
452 we find the next valid node first, before processing 'ref'. in jffs2_get_inode_nodes()
462 min_t(uint32_t, ref_totlen(c, NULL, ref), sizeof(node)), in jffs2_get_inode_nodes()
463 &retlen, (void *)&node); in jffs2_get_inode_nodes()
465 JFFS2_ERROR("error %d reading node at 0x%08x in get_inode_nodes()\n", err, ref_offset(ref)); in jffs2_get_inode_nodes()
469 switch (je16_to_cpu(node.u.nodetype)) { in jffs2_get_inode_nodes()
472 JFFS2_DBG_READINODE("node at %08x (%d) is a dirent node\n", ref_offset(ref), ref_flags(ref)); in jffs2_get_inode_nodes()
474 if (retlen < sizeof(node.d)) { in jffs2_get_inode_nodes()
480 err = read_direntry(c, ref, &node.d, retlen, &ret_fd, (int32_t *)latest_mctime, mctime_ver); in jffs2_get_inode_nodes()
487 if (je32_to_cpu(node.d.version) > *highest_version) in jffs2_get_inode_nodes()
488 *highest_version = je32_to_cpu(node.d.version); in jffs2_get_inode_nodes()
493 JFFS2_DBG_READINODE("node at %08x (%d) is a data node\n", ref_offset(ref), ref_flags(ref)); in jffs2_get_inode_nodes()
495 if (retlen < sizeof(node.i)) { in jffs2_get_inode_nodes()
501 err = read_dnode(c, ref, &node.i, retlen, &ret_tn, (int32_t *)latest_mctime, mctime_ver); in jffs2_get_inode_nodes()
508 if (je32_to_cpu(node.i.version) > *highest_version) in jffs2_get_inode_nodes()
509 *highest_version = je32_to_cpu(node.i.version); in jffs2_get_inode_nodes()
512 je32_to_cpu(node.i.version), *highest_version); in jffs2_get_inode_nodes()
517 /* Check we've managed to read at least the common node header */ in jffs2_get_inode_nodes()
519 JFFS2_ERROR("short read unknown node at %#08x\n", ref_offset(ref)); in jffs2_get_inode_nodes()
523 err = read_unknown(c, ref, &node.u, retlen); in jffs2_get_inode_nodes()
603 /* Zero-sized node at end of version list. Just a metadata update */ in jffs2_do_read_inode_internal()
688 /* If it was a regular file, truncate it to the latest node's isize */ in jffs2_do_read_inode_internal()
733 /* Certain inode types should have only one data node, and it's in jffs2_do_read_inode_internal()
734 kept as the metadata node */ in jffs2_do_read_inode_internal()
736 JFFS2_ERROR("Argh. Special inode #%u with mode 0%o had metadata node\n", in jffs2_do_read_inode_internal()
751 JFFS2_ERROR("Argh. Special inode #%u with mode 0x%x had more than one node\n", in jffs2_do_read_inode_internal()
753 …/* FIXME: Deal with it - check crc32, check for duplicate node, check times and discard the older … in jffs2_do_read_inode_internal()
759 f->metadata = frag_first(&f->fragtree)->node; in jffs2_do_read_inode_internal()