if (!path)
                return -ENOMEM;
 
-       if (!trans) {
-               path->skip_locking = 1;
-               path->search_commit_root = 1;
-       }
-
 search_again:
        key.objectid = bytenr;
        key.offset = offset;
                        btrfs_err(fs_info,
                        "unexpected extent item size, has %u expect >= %zu",
                                  item_size, sizeof(*ei));
-                       if (trans)
-                               btrfs_abort_transaction(trans, ret);
-                       else
-                               btrfs_handle_fs_error(fs_info, ret, NULL);
-
+                       btrfs_abort_transaction(trans, ret);
                        goto out_free;
                }
 
                ret = 0;
        }
 
-       if (!trans)
-               goto out;
-
        delayed_refs = &trans->transaction->delayed_refs;
        spin_lock(&delayed_refs->lock);
        head = btrfs_find_delayed_ref_head(delayed_refs, bytenr);
                mutex_unlock(&head->mutex);
        }
        spin_unlock(&delayed_refs->lock);
-out:
+
        WARN_ON(num_refs == 0);
        if (refs)
                *refs = num_refs;