2014-06-24 07:25:26

by Heiko Schocher

[permalink] [raw]
Subject: [PATCH] ubi: fix correct rb_tree node comparison in add_vol

Commit 604b592e6fd3c98f21435e1181ba7723ffc24715 ("UBI: fix rb_tree node comparison in add_map")

introduced problems with attaching ubi fastmap images,
created with older kernel.

As in ubi_find_av() from attach.c is
[...]
if (vol_id > av->vol_id)
p = p->rb_left;
else
p = p->rb_right;

sync this logic also in add_vol() with this.

With this patch attaching older ubi images works again.

Signed-off-by: Heiko Schocher <[email protected]>

---

Cc: Artem Bityutskiy <[email protected]>
Cc: Richard Weinberger <[email protected]>
Cc: David Woodhouse <[email protected]>
Cc: Brian Norris <[email protected]>
Cc: Mike Snitzer <[email protected]>
Cc: Wolfgang Denk <[email protected]>
Cc: [email protected]
Cc: [email protected]

drivers/mtd/ubi/fastmap.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/mtd/ubi/fastmap.c b/drivers/mtd/ubi/fastmap.c
index b04e7d0..72f39da 100644
--- a/drivers/mtd/ubi/fastmap.c
+++ b/drivers/mtd/ubi/fastmap.c
@@ -125,7 +125,7 @@ static struct ubi_ainf_volume *add_vol(struct ubi_attach_info *ai, int vol_id,
parent = *p;
av = rb_entry(parent, struct ubi_ainf_volume, rb);

- if (vol_id < av->vol_id)
+ if (vol_id > av->vol_id)
p = &(*p)->rb_left;
else
p = &(*p)->rb_right;
--
1.8.3.1


2014-06-25 21:11:53

by Richard Weinberger

[permalink] [raw]
Subject: Re: [PATCH] ubi: fix correct rb_tree node comparison in add_vol

Am 24.06.2014 09:25, schrieb Heiko Schocher:
> Commit 604b592e6fd3c98f21435e1181ba7723ffc24715 ("UBI: fix rb_tree node comparison in add_map")
>
> introduced problems with attaching ubi fastmap images,
> created with older kernel.
>
> As in ubi_find_av() from attach.c is
> [...]
> if (vol_id > av->vol_id)
> p = p->rb_left;
> else
> p = p->rb_right;
>
> sync this logic also in add_vol() with this.
>
> With this patch attaching older ubi images works again.
>
> Signed-off-by: Heiko Schocher <[email protected]>

Thanks a lot for fixing this!

Acked-by: Richard Weinberger <[email protected]>

Thanks,
//richard

2014-06-30 15:47:55

by Artem Bityutskiy

[permalink] [raw]
Subject: Re: [PATCH] ubi: fix correct rb_tree node comparison in add_vol

On Tue, 2014-06-24 at 09:25 +0200, Heiko Schocher wrote:
> Commit 604b592e6fd3c98f21435e1181ba7723ffc24715 ("UBI: fix rb_tree node comparison in add_map")
>
> introduced problems with attaching ubi fastmap images,
> created with older kernel.

Changed the commit message to be a bit more reader-friendly and pushed
to linux-ubifs.git, thank you!

--
Best Regards,
Artem Bityutskiy