Re: [PATCH 1/2] test_xarray: add tests for advanced multi-index use

From: Matthew Wilcox
Date: Fri Nov 17 2023 - 15:58:23 EST


On Fri, Nov 17, 2023 at 12:54:09PM -0800, Luis Chamberlain wrote:
> +/*
> + * Can be used in contexts which busy loop on large number of entries but can
> + * sleep and timing is if no importance to test correctness.
> + */
> +#define XA_BUG_ON_RELAX(xa, x) do { \
> + if ((tests_run % 1000) == 0) \
> + schedule(); \
> + XA_BUG_ON(xa, x); \
> +} while (0)

That is awful. Please don't do that. You're mixing two completely
unrelated thing into the same macro, which makes no sense. Not only
that, it's a macro which refers to something in the containing
environment that isn't a paramter to the macro.