[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <6585dc32bebce_ab80829462@iweiny-mobl.notmuch>
Date: Fri, 22 Dec 2023 10:57:54 -0800
From: Ira Weiny <ira.weiny@...el.com>
To: Ira Weiny <ira.weiny@...el.com>, Coly Li <colyli@...e.de>
CC: Dan Williams <dan.j.williams@...el.com>, Jens Axboe <axboe@...nel.dk>,
Xiao Ni <xni@...hat.com>, Geliang Tang <geliang.tang@...e.com>, "Hannes
Reinecke" <hare@...e.de>, NeilBrown <neilb@...e.de>, Vishal L Verma
<vishal.l.verma@...el.com>, <linux-block@...r.kernel.org>,
<nvdimm@...ts.linux.dev>, <linux-kernel@...r.kernel.org>
Subject: Re: Bug in commit aa511ff8218b ("badblocks: switch to the improved
badblock handling
Ira Weiny wrote:
> Coly,
>
> Yesterday I noticed that a few of our nvdimm tests were failing. I bisected
> the problem to the following commit.
>
> aa511ff8218b ("badblocks: switch to the improved badblock handling code")
>
> Reverting this patch fixed our tests.
>
> I've also dug into the code a bit and I believe the algorithm for
> badblocks_check() is broken (not yet sure about the other calls). At the
> very least I see the bb->p pointer being indexed with '-1'. :-(
>
> I did notice that this work was due to a bug report in badblock_set().
> Therefore, I'm not sure of that severity of that fix is vs a revert. But
> at this point I'm not seeing an easy fix so I'm in favor of a revert.
>
Dan and I were discussing this and it occurs to us that it may be easy for
you to stand up the test environment I'm using.
For CXL we have a run_qemu.sh project[1] which stands up a qemu
environment with the ndctl[2] tests in them. Clone ndctl to ~/git/ndctl
so run_qemu.sh can find it. Then start run_qemu.sh in a kernel tree like
this:
$ <path_to_run_qemu>/run_qemu.sh --cxl --nfit-test --nfit-debug [-r img]
[-r img] is optional but useful if you have changed the ndctl tests.
Once booted you can run the test suite with meson:
$ cd ndctl && meson test -C build
I've been running just our clear.sh test which shows the error.
$ cd ndctl/build && meson test clear.sh
Hope this helps,
Ira
[1] https://github.com/pmem/run_qemu
[2] https://github.com/pmem/ndctl
Powered by blists - more mailing lists