Message ID | 20230323115000.25364-1-mateusz.grzonka@intel.com (mailing list archive) |
---|---|
State | Mainlined, archived |
Delegated to: | Jes Sorensen |
Headers | show |
Series | [v2] Create: Fix checking for container in update_metadata | expand |
Hi Jes, Please merge this to unblock our upstream testing :) Thanks, Mariusz On Thu, 23 Mar 2023 12:50:00 +0100 Mateusz Grzonka <mateusz.grzonka@intel.com> wrote: > The commit 8a4ce2c05386 ("Create: Factor out add_disks() helpers") > introduced a regression that caused timeouts and udev failing to create > links. > > Steps to reproduce the issue were as following: > $ mdadm -CR imsm -e imsm -n4 /dev/nvme[0-3]n1 > $ mdadm -CR vol -l5 -n4 /dev/nvme[0-3]n1 --assume-clean > > I found the check for container was wrong because negation was missing. > > Fixes: 8a4ce2c05386 ("Create: Factor out add_disks() helpers") > Signed-off-by: Mateusz Grzonka <mateusz.grzonka@intel.com> > --- > Create.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/Create.c b/Create.c > index bbe9e13d..0911bf92 100644 > --- a/Create.c > +++ b/Create.c > @@ -328,7 +328,7 @@ static int update_metadata(int mdfd, struct shape *s, > struct supertype *st, > * again returns container info. > */ > st->ss->getinfo_super(st, &info_new, NULL); > - if (st->ss->external && is_container(s->level) && > + if (st->ss->external && !is_container(s->level) && > !same_uuid(info_new.uuid, info->uuid, 0)) { > map_update(map, fd2devnm(mdfd), > info_new.text_version,
On 3/23/23 07:50, Mateusz Grzonka wrote: > The commit 8a4ce2c05386 ("Create: Factor out add_disks() helpers") > introduced a regression that caused timeouts and udev failing to create > links. > > Steps to reproduce the issue were as following: > $ mdadm -CR imsm -e imsm -n4 /dev/nvme[0-3]n1 > $ mdadm -CR vol -l5 -n4 /dev/nvme[0-3]n1 --assume-clean > > I found the check for container was wrong because negation was missing. > > Fixes: 8a4ce2c05386 ("Create: Factor out add_disks() helpers") > Signed-off-by: Mateusz Grzonka <mateusz.grzonka@intel.com> > --- > Create.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) Applied! Thanks, Jes
diff --git a/Create.c b/Create.c index bbe9e13d..0911bf92 100644 --- a/Create.c +++ b/Create.c @@ -328,7 +328,7 @@ static int update_metadata(int mdfd, struct shape *s, struct supertype *st, * again returns container info. */ st->ss->getinfo_super(st, &info_new, NULL); - if (st->ss->external && is_container(s->level) && + if (st->ss->external && !is_container(s->level) && !same_uuid(info_new.uuid, info->uuid, 0)) { map_update(map, fd2devnm(mdfd), info_new.text_version,
The commit 8a4ce2c05386 ("Create: Factor out add_disks() helpers") introduced a regression that caused timeouts and udev failing to create links. Steps to reproduce the issue were as following: $ mdadm -CR imsm -e imsm -n4 /dev/nvme[0-3]n1 $ mdadm -CR vol -l5 -n4 /dev/nvme[0-3]n1 --assume-clean I found the check for container was wrong because negation was missing. Fixes: 8a4ce2c05386 ("Create: Factor out add_disks() helpers") Signed-off-by: Mateusz Grzonka <mateusz.grzonka@intel.com> --- Create.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)