fs/btrfs/delayed-ref.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
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@linaro.org>
---
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
On Thu, Oct 31, 2024 at 7:23 AM Dan Carpenter <dan.carpenter@linaro.org> 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@linaro.org>
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
>
>
© 2016 - 2025 Red Hat, Inc.