Re: [PATCH 0/5] fix radix tree multi-order iteration race

From: Ross Zwisler
Date: Tue May 08 2018 - 13:44:32 EST


On Thu, May 03, 2018 at 01:24:25PM -0600, Ross Zwisler wrote:
> The following series gets the radix tree test suite compiling again in
> the current linux/master, adds a unit test which exposes a race in the
> radix tree multi-order iteration code, and then fixes that race.
>
> This race was initially hit on a v4.15 based kernel and results in a GP
> fault. I've described the race in detail in patches 4 and 5.
>
> The fix is simple and necessary, and I think it should be merged for
> v4.17.
>
> This tree has gotten positive build confirmation from the 0-day bot,
> passes the updated radix tree test suite, xfstests, and the original
> test that was hitting the race with the v4.15 based kernel.
>
> Ross Zwisler (5):
> radix tree test suite: fix mapshift build target
> radix tree test suite: fix compilation issue
> radix tree test suite: add item_delete_rcu()
> radix tree test suite: multi-order iteration race
> radix tree: fix multi-order iteration race
>
> lib/radix-tree.c | 6 ++--
> tools/include/linux/spinlock.h | 3 +-
> tools/testing/radix-tree/Makefile | 6 ++--
> tools/testing/radix-tree/multiorder.c | 63 +++++++++++++++++++++++++++++++++++
> tools/testing/radix-tree/test.c | 19 +++++++++++
> tools/testing/radix-tree/test.h | 3 ++
> 6 files changed, 91 insertions(+), 9 deletions(-)
>
> --
> 2.14.3
>

Ping on this series. Does anyone have any feedback? Matthew?

I'd really like to get it into v4.17.

We can take it through the libnvdimm tree, if that's easiest.