Lines Matching refs:inode

1281  * struct size_entry - inode size information for recovery.
1283 * @inum: inode number
1284 * @i_size: size on inode
1286 * @exists: indicates whether the inode exists
1287 * @inode: inode if pinned in memory awaiting rw mode to fix it
1295 struct inode *inode;
1301 * @inum: inode number
1302 * @i_size: size on inode
1304 * @exists: indicates whether the inode exists
1340 * @inum: inode number
1363 * @inum: inode number
1386 iput(e->inode);
1394 * ubifs_recover_size_accum - accumulate inode sizes for recovery.
1398 * @new_size: inode size
1401 * 1) to ensure there are no data nodes that fall outside the inode size
1404 * for each inode number in the journal that has not been deleted, and recording
1405 * the size from the inode node, the maximum size of any data node (also altered
1406 * by truncations) and a flag indicating a inode number for which no inode node
1410 * been committed that are beyond the inode size, however the only way to find
1467 * fix_size_in_place - fix inode size in place on flash.
1469 * @e: inode size information for recovery
1480 /* Locate the inode node LEB number and offset */
1487 * If the size recorded on the inode node is greater than the size that
1488 * was calculated from nodes in the journal then don't change the inode.
1517 dbg_rcvry("inode %lu at %d:%d size %lld -> %lld", (unsigned long)e->inum, lnum, offs, i_size, e->d_size);
1521 ubifs_warn(c, "inode %lu failed to fix size %lld -> %lld error %d", (unsigned long)e->inum, e->i_size, e->d_size,
1527 * inode_fix_size - fix inode size
1529 * @e: inode size information for recovery
1533 struct inode *inode;
1538 ubifs_assert(c, !e->inode);
1541 if (e->inode) {
1542 /* Remounting rw, pick up inode we stored earlier */
1543 inode = e->inode;
1545 inode = ubifs_iget(c->vfs_sb, e->inum);
1546 if (IS_ERR(inode)) {
1547 return PTR_ERR(inode);
1550 if (inode->i_size >= e->d_size) {
1552 * The original inode in the index already has a size
1555 iput(inode);
1559 dbg_rcvry("ino %lu size %lld -> %lld", (unsigned long)e->inum, inode->i_size, e->d_size);
1561 ui = ubifs_inode(inode);
1563 inode->i_size = e->d_size;
1567 e->inode = inode;
1571 * In readonly mode just keep the inode pinned in memory until we go
1572 * readwrite. In readwrite mode write the inode to the journal with the
1579 err = ubifs_jnl_write_inode(c, inode);
1581 iput(inode);
1594 * ubifs_recover_size - recover inode size.
1598 * This function attempts to fix inode size discrepancies identified by the
1624 /* Remove data nodes that have no inode */
1642 * We found data that is outside the found inode size,
1643 * fixup the inode size
1651 iput(e->inode);