Lines Matching refs:pm

3007 	struct pending_dir_move *entry = NULL, *pm;  in add_pending_dir_move()  local
3012 pm = kmalloc(sizeof(*pm), GFP_NOFS); in add_pending_dir_move()
3013 if (!pm) in add_pending_dir_move()
3015 pm->parent_ino = parent_ino; in add_pending_dir_move()
3016 pm->ino = ino; in add_pending_dir_move()
3017 pm->gen = ino_gen; in add_pending_dir_move()
3018 pm->is_orphan = is_orphan; in add_pending_dir_move()
3019 INIT_LIST_HEAD(&pm->list); in add_pending_dir_move()
3020 INIT_LIST_HEAD(&pm->update_refs); in add_pending_dir_move()
3021 RB_CLEAR_NODE(&pm->node); in add_pending_dir_move()
3037 ret = dup_ref(cur, &pm->update_refs); in add_pending_dir_move()
3042 ret = dup_ref(cur, &pm->update_refs); in add_pending_dir_move()
3047 ret = add_waiting_dir_move(sctx, pm->ino); in add_pending_dir_move()
3052 list_add_tail(&pm->list, &entry->list); in add_pending_dir_move()
3054 rb_link_node(&pm->node, parent, p); in add_pending_dir_move()
3055 rb_insert_color(&pm->node, &sctx->pending_dir_moves); in add_pending_dir_move()
3060 __free_recorded_refs(&pm->update_refs); in add_pending_dir_move()
3061 kfree(pm); in add_pending_dir_move()
3084 static int apply_dir_move(struct send_ctx *sctx, struct pending_dir_move *pm) in apply_dir_move() argument
3103 dm = get_waiting_dir_move(sctx, pm->ino); in apply_dir_move()
3108 if (pm->is_orphan) { in apply_dir_move()
3109 ret = gen_unique_name(sctx, pm->ino, in apply_dir_move()
3110 pm->gen, from_path); in apply_dir_move()
3112 ret = get_first_ref(sctx->parent_root, pm->ino, in apply_dir_move()
3129 ret = get_cur_path(sctx, pm->ino, pm->gen, to_path); in apply_dir_move()
3166 ret = send_utimes(sctx, pm->ino, pm->gen); in apply_dir_move()
3174 list_for_each_entry(cur, &pm->update_refs, list) { in apply_dir_move()
3216 struct pending_dir_move *pm; in apply_children_dir_moves() local
3221 pm = get_pending_dir_moves(sctx, parent_ino); in apply_children_dir_moves()
3222 if (!pm) in apply_children_dir_moves()
3226 tail_append_pending_moves(pm, &stack); in apply_children_dir_moves()
3229 pm = list_first_entry(&stack, struct pending_dir_move, list); in apply_children_dir_moves()
3230 parent_ino = pm->ino; in apply_children_dir_moves()
3231 ret = apply_dir_move(sctx, pm); in apply_children_dir_moves()
3232 free_pending_move(sctx, pm); in apply_children_dir_moves()
3235 pm = get_pending_dir_moves(sctx, parent_ino); in apply_children_dir_moves()
3236 if (pm) in apply_children_dir_moves()
3237 tail_append_pending_moves(pm, &stack); in apply_children_dir_moves()
3243 pm = list_first_entry(&stack, struct pending_dir_move, list); in apply_children_dir_moves()
3244 free_pending_move(sctx, pm); in apply_children_dir_moves()
5910 struct pending_dir_move *pm; in btrfs_ioctl_send() local
5913 pm = rb_entry(n, struct pending_dir_move, node); in btrfs_ioctl_send()
5914 while (!list_empty(&pm->list)) { in btrfs_ioctl_send()
5917 pm2 = list_first_entry(&pm->list, in btrfs_ioctl_send()
5921 free_pending_move(sctx, pm); in btrfs_ioctl_send()