On Thu, Oct 31, 2024 at 7:23 AM Dan Carpenter <dan.carpenter@xxxxxxxxxx> wrote: > > xa_err errors are equivalent to "error_code * 4 + 2". We want to return > error pointers here so we can't just cast them back and forth. Use > xa_err() to do the conversion. > > Fixes: 6d50990e6be2 ("btrfs: track delayed ref heads in an xarray") > Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx> Thanks, since it's not yet in Linus' tree and we're on time, I'll fold it to the original patch. > --- > fs/btrfs/delayed-ref.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/fs/btrfs/delayed-ref.c b/fs/btrfs/delayed-ref.c > index 1f97e1e5c66c..012fce255866 100644 > --- a/fs/btrfs/delayed-ref.c > +++ b/fs/btrfs/delayed-ref.c > @@ -848,7 +848,7 @@ add_delayed_ref_head(struct btrfs_trans_handle *trans, > if (xa_is_err(existing)) { > /* Memory was preallocated by the caller. */ > ASSERT(xa_err(existing) != -ENOMEM); > - return ERR_CAST(existing); > + return ERR_PTR(xa_err(existing)); > } else if (WARN_ON(existing)) { > /* > * Shouldn't happen we just did a lookup before under > -- > 2.45.2 > >