• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6.36/fs/xfs/

Lines Matching refs:item

1429 	xlog_recover_item_t	*item;
1431 item = kmem_zalloc(sizeof(xlog_recover_item_t), KM_SLEEP);
1432 INIT_LIST_HEAD(&item->ri_list);
1433 list_add_tail(&item->ri_list, head);
1443 xlog_recover_item_t *item;
1456 item = list_entry(trans->r_itemq.prev, xlog_recover_item_t, ri_list);
1458 old_ptr = item->ri_buf[item->ri_cnt-1].i_addr;
1459 old_len = item->ri_buf[item->ri_cnt-1].i_len;
1463 item->ri_buf[item->ri_cnt-1].i_len += len;
1464 item->ri_buf[item->ri_cnt-1].i_addr = ptr;
1465 trace_xfs_log_recover_item_add_cont(log, trans, item, 0);
1480 * will appear in the current log item.
1490 xlog_recover_item_t *item;
1514 item = list_entry(trans->r_itemq.prev, xlog_recover_item_t, ri_list);
1515 if (item->ri_total != 0 &&
1516 item->ri_total == item->ri_cnt) {
1517 /* tail item is in use, get a new one */
1519 item = list_entry(trans->r_itemq.prev,
1523 if (item->ri_total == 0) { /* first region to be added */
1533 item->ri_total = in_f->ilf_size;
1534 item->ri_buf =
1535 kmem_zalloc(item->ri_total * sizeof(xfs_log_iovec_t),
1538 ASSERT(item->ri_total > item->ri_cnt);
1540 item->ri_buf[item->ri_cnt].i_addr = ptr;
1541 item->ri_buf[item->ri_cnt].i_len = len;
1542 item->ri_cnt++;
1543 trace_xfs_log_recover_item_add(log, trans, item, 0);
1559 xlog_recover_item_t *item, *n;
1563 list_for_each_entry_safe(item, n, &sort_list, ri_list) {
1564 xfs_buf_log_format_t *buf_f = item->ri_buf[0].i_addr;
1566 switch (ITEM_TYPE(item)) {
1570 trans, item, pass);
1571 list_move(&item->ri_list, &trans->r_itemq);
1580 trans, item, pass);
1581 list_move_tail(&item->ri_list, &trans->r_itemq);
1628 * If this isn't a cancel buffer item, then just return.
1688 * actually a buffer cancel item (XFS_BLF_CANCEL is set), then decrement
1740 * log item, then decrement the refcount on the
1804 xlog_recover_item_t *item,
1880 ASSERT(item->ri_buf[item_index].i_addr != NULL);
1881 ASSERT((item->ri_buf[item_index].i_len % XFS_BLF_CHUNK) == 0);
1889 logged_nextp = item->ri_buf[item_index].i_addr +
1894 item, bp);
1918 xlog_recover_item_t *item,
1945 ASSERT(item->ri_buf[i].i_addr != NULL);
1946 ASSERT(item->ri_buf[i].i_len % XFS_BLF_CHUNK == 0);
1958 if (item->ri_buf[i].i_addr == NULL) {
1963 if (item->ri_buf[i].i_len < sizeof(xfs_disk_dquot_t)) {
1966 item->ri_buf[i].i_len, __func__);
1969 error = xfs_qm_dqcheck(item->ri_buf[i].i_addr,
1978 item->ri_buf[i].i_addr, /* source */
1986 ASSERT(i == item->ri_total);
2122 xlog_recover_item_t *item,
2150 xlog_recover_do_reg_buffer(mp, item, bp, buf_f);
2162 * When meta-data buffers are freed at run time we log a buffer item
2179 xlog_recover_item_t *item,
2182 xfs_buf_log_format_t *buf_f = item->ri_buf[0].i_addr;
2246 error = xlog_recover_do_inode_buffer(mp, item, bp, buf_f);
2249 xlog_recover_do_dquot_buffer(mp, log, item, bp, buf_f);
2251 xlog_recover_do_reg_buffer(mp, item, bp, buf_f);
2290 xlog_recover_item_t *item,
2311 if (item->ri_buf[0].i_len == sizeof(xfs_inode_log_format_t)) {
2312 in_f = item->ri_buf[0].i_addr;
2316 error = xfs_inode_item_format_convert(&item->ri_buf[0], in_f);
2362 dicp = item->ri_buf[1].i_addr;
2367 item, ino);
2401 item, dip, bp, ino);
2414 item, dip, bp, ino);
2425 item, dip, bp, ino,
2437 item, dip, bp, ino, dicp->di_forkoff);
2441 if (unlikely(item->ri_buf[1].i_len > sizeof(struct xfs_icdinode))) {
2447 item->ri_buf[1].i_len, item);
2453 xfs_dinode_to_disk(dip, item->ri_buf[1].i_addr);
2456 if (item->ri_buf[1].i_len > sizeof(struct xfs_icdinode)) {
2458 item->ri_buf[1].i_addr + sizeof(struct xfs_icdinode),
2459 item->ri_buf[1].i_len - sizeof(struct xfs_icdinode));
2476 len = item->ri_buf[2].i_len;
2477 src = item->ri_buf[2].i_addr;
2514 len = item->ri_buf[attr_index].i_len;
2515 src = item->ri_buf[attr_index].i_addr;
2555 * structure, so that we know not to do any dquot item or dquot buffer recovery,
2561 xlog_recover_item_t *item,
2570 qoff_f = item->ri_buf[0].i_addr;
2593 xlog_recover_item_t *item,
2614 recddq = item->ri_buf[1].i_addr;
2620 if (item->ri_buf[1].i_len < sizeof(xfs_disk_dquot_t)) {
2623 item->ri_buf[1].i_len, __func__);
2645 dq_f = item->ri_buf[0].i_addr;
2678 memcpy(ddq, recddq, item->ri_buf[1].i_len);
2691 * item from the efi format structure which was logged on disk.
2699 xlog_recover_item_t *item,
2712 efi_formatp = item->ri_buf[0].i_addr;
2716 if ((error = xfs_efi_copy_format(&(item->ri_buf[0]),
2744 xlog_recover_item_t *item,
2758 efd_formatp = item->ri_buf[0].i_addr;
2759 ASSERT((item->ri_buf[0].i_len == (sizeof(xfs_efd_log_format_32_t) +
2761 (item->ri_buf[0].i_len == (sizeof(xfs_efd_log_format_64_t) +
2804 xlog_recover_item_t *item;
2810 list_for_each_entry(item, &trans->r_itemq, ri_list) {
2811 trace_xfs_log_recover_item_recover(log, trans, item, pass);
2812 switch (ITEM_TYPE(item)) {
2814 error = xlog_recover_do_buffer_trans(log, item, pass);
2817 error = xlog_recover_do_inode_trans(log, item, pass);
2820 error = xlog_recover_do_efi_trans(log, item,
2824 xlog_recover_do_efd_trans(log, item, pass);
2828 error = xlog_recover_do_dquot_trans(log, item, pass);
2831 error = xlog_recover_do_quotaoff_trans(log, item,
2836 "XFS: invalid item type (%d) xlog_recover_do_trans", ITEM_TYPE(item));
2858 xlog_recover_item_t *item, *n;
2861 list_for_each_entry_safe(item, n, &trans->r_itemq, ri_list) {
2862 /* Free the regions in the item. */
2863 list_del(&item->ri_list);
2864 for (i = 0; i < item->ri_cnt; i++)
2865 kmem_free(item->ri_buf[i].i_addr);
2866 /* Free the item itself */
2867 kmem_free(item->ri_buf);
2868 kmem_free(item);
3000 * Process an extent free intent item that was recovered from
3716 * takes place in the log item type specific routines.