Message ID | 20230109165455.647400-1-Liam.Howlett@oracle.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | maple_tree: Fix handle of invalidated state in mas_wr_store_setup() | expand |
On Mon, 9 Jan 2023 16:55:42 +0000 Liam Howlett <liam.howlett@oracle.com> wrote: > If an invalidated maple state is encountered during write, reset the > maple state to MAS_START. This will result in a re-walk of the tree to > the correct location for the write. > > Link: https://lore.kernel.org/all/20230107020126.1627-1-sj@kernel.org/ > Reported-by: SeongJae Park <sj@kernel.org> > Signed-off-by: Liam R. Howlett <Liam.Howlett@oracle.com> Tested-by: SeongJae Park <sj@kernel.org> I confirmed this patch fixes the boot failure issue. Nevertheless, the 'make install' issue on my system is still not fixed. Thanks, SJ > --- > lib/maple_tree.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/lib/maple_tree.c b/lib/maple_tree.c > index 14cff87cf058..59c4879ac714 100644 > --- a/lib/maple_tree.c > +++ b/lib/maple_tree.c > @@ -5620,6 +5620,9 @@ static inline void mte_destroy_walk(struct maple_enode *enode, > > static void mas_wr_store_setup(struct ma_wr_state *wr_mas) > { > + if (unlikely(mas_is_paused(wr_mas->mas))) > + mas_reset(wr_mas->mas); > + > if (!mas_is_start(wr_mas->mas)) { > if (mas_is_none(wr_mas->mas)) { > mas_reset(wr_mas->mas); > -- > 2.35.1 >
On Mon, 9 Jan 2023 19:22:48 +0000 SeongJae Park <sj@kernel.org> wrote: > On Mon, 9 Jan 2023 16:55:42 +0000 Liam Howlett <liam.howlett@oracle.com> wrote: > > > If an invalidated maple state is encountered during write, reset the > > maple state to MAS_START. This will result in a re-walk of the tree to > > the correct location for the write. Can we think of a Fixes: for this? > > Link: https://lore.kernel.org/all/20230107020126.1627-1-sj@kernel.org/ > > Reported-by: SeongJae Park <sj@kernel.org> > > Signed-off-by: Liam R. Howlett <Liam.Howlett@oracle.com> > > Tested-by: SeongJae Park <sj@kernel.org> > > I confirmed this patch fixes the boot failure issue. Nevertheless, the 'make > install' issue on my system is still not fixed. Is this a mainline issue or an mm-unstable issue?
Hi Andrew, On Mon, 9 Jan 2023 15:40:12 -0800 Andrew Morton <akpm@linux-foundation.org> wrote: > On Mon, 9 Jan 2023 19:22:48 +0000 SeongJae Park <sj@kernel.org> wrote: > > > On Mon, 9 Jan 2023 16:55:42 +0000 Liam Howlett <liam.howlett@oracle.com> wrote: > > > > > If an invalidated maple state is encountered during write, reset the > > > maple state to MAS_START. This will result in a re-walk of the tree to > > > the correct location for the write. > > Can we think of a Fixes: for this? > > > > Link: https://lore.kernel.org/all/20230107020126.1627-1-sj@kernel.org/ > > > Reported-by: SeongJae Park <sj@kernel.org> > > > Signed-off-by: Liam R. Howlett <Liam.Howlett@oracle.com> > > > > Tested-by: SeongJae Park <sj@kernel.org> > > > > I confirmed this patch fixes the boot failure issue. Nevertheless, the 'make > > install' issue on my system is still not fixed. > > Is this a mainline issue or an mm-unstable issue? It's mm-unstable issue: https://lore.kernel.org/linux-mm/20230107023954.1841-1-sj@kernel.org/ Thanks, SJ
* SeongJae Park <sj@kernel.org> [230109 18:43]: > Hi Andrew, > > On Mon, 9 Jan 2023 15:40:12 -0800 Andrew Morton <akpm@linux-foundation.org> wrote: > > > On Mon, 9 Jan 2023 19:22:48 +0000 SeongJae Park <sj@kernel.org> wrote: > > > > > On Mon, 9 Jan 2023 16:55:42 +0000 Liam Howlett <liam.howlett@oracle.com> wrote: > > > > > > > If an invalidated maple state is encountered during write, reset the > > > > maple state to MAS_START. This will result in a re-walk of the tree to > > > > the correct location for the write. > > > > Can we think of a Fixes: for this? It wasn't really an issue until I wrote the vma iterator store function. You can put this before (mm-unstable git id..) 9df3d25a97ec ("mm: expand vma iterator interface") > > > > > > Link: https://lore.kernel.org/all/20230107020126.1627-1-sj@kernel.org/ > > > > Reported-by: SeongJae Park <sj@kernel.org> > > > > Signed-off-by: Liam R. Howlett <Liam.Howlett@oracle.com> > > > > > > Tested-by: SeongJae Park <sj@kernel.org> > > > > > > I confirmed this patch fixes the boot failure issue. Nevertheless, the 'make > > > install' issue on my system is still not fixed. > > > > Is this a mainline issue or an mm-unstable issue? > > It's mm-unstable issue: > https://lore.kernel.org/linux-mm/20230107023954.1841-1-sj@kernel.org/ Yes, just mm-unstable.
On Tue, 10 Jan 2023 14:21:15 +0000 Liam Howlett <liam.howlett@oracle.com> wrote: > * SeongJae Park <sj@kernel.org> [230109 18:43]: > > Hi Andrew, > > > > On Mon, 9 Jan 2023 15:40:12 -0800 Andrew Morton <akpm@linux-foundation.org> wrote: > > > > > On Mon, 9 Jan 2023 19:22:48 +0000 SeongJae Park <sj@kernel.org> wrote: > > > > > > > On Mon, 9 Jan 2023 16:55:42 +0000 Liam Howlett <liam.howlett@oracle.com> wrote: > > > > > > > > > If an invalidated maple state is encountered during write, reset the > > > > > maple state to MAS_START. This will result in a re-walk of the tree to > > > > > the correct location for the write. > > > > > > Can we think of a Fixes: for this? > > It wasn't really an issue until I wrote the vma iterator store > function. > > You can put this before (mm-unstable git id..) > 9df3d25a97ec ("mm: expand vma iterator interface") I have dropped "mm: expand vma iterator interface"'s series. Should we retain this patch as a standalone thing and is the changelog still appropriate?
* Andrew Morton <akpm@linux-foundation.org> [230110 18:18]: > On Tue, 10 Jan 2023 14:21:15 +0000 Liam Howlett <liam.howlett@oracle.com> wrote: > > > * SeongJae Park <sj@kernel.org> [230109 18:43]: > > > Hi Andrew, > > > > > > On Mon, 9 Jan 2023 15:40:12 -0800 Andrew Morton <akpm@linux-foundation.org> wrote: > > > > > > > On Mon, 9 Jan 2023 19:22:48 +0000 SeongJae Park <sj@kernel.org> wrote: > > > > > > > > > On Mon, 9 Jan 2023 16:55:42 +0000 Liam Howlett <liam.howlett@oracle.com> wrote: > > > > > > > > > > > If an invalidated maple state is encountered during write, reset the > > > > > > maple state to MAS_START. This will result in a re-walk of the tree to > > > > > > the correct location for the write. > > > > > > > > Can we think of a Fixes: for this? > > > > It wasn't really an issue until I wrote the vma iterator store > > function. > > > > You can put this before (mm-unstable git id..) > > 9df3d25a97ec ("mm: expand vma iterator interface") > > I have dropped "mm: expand vma iterator interface"'s series. Should we > retain this patch as a standalone thing and is the changelog still > appropriate? No, just drop it and I'll re-spin v3 to include maple tree fixes on the top.
diff --git a/lib/maple_tree.c b/lib/maple_tree.c index 14cff87cf058..59c4879ac714 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -5620,6 +5620,9 @@ static inline void mte_destroy_walk(struct maple_enode *enode, static void mas_wr_store_setup(struct ma_wr_state *wr_mas) { + if (unlikely(mas_is_paused(wr_mas->mas))) + mas_reset(wr_mas->mas); + if (!mas_is_start(wr_mas->mas)) { if (mas_is_none(wr_mas->mas)) { mas_reset(wr_mas->mas);
If an invalidated maple state is encountered during write, reset the maple state to MAS_START. This will result in a re-walk of the tree to the correct location for the write. Link: https://lore.kernel.org/all/20230107020126.1627-1-sj@kernel.org/ Reported-by: SeongJae Park <sj@kernel.org> Signed-off-by: Liam R. Howlett <Liam.Howlett@oracle.com> --- lib/maple_tree.c | 3 +++ 1 file changed, 3 insertions(+)