[PATCH v3 0/5] hw/nvme: fix mmio read

Klaus Jensen posted 5 patches 2 years, 9 months ago
Failed in applying to current master (apply log)
There is a newer version of this series
include/block/nvme.h    |  60 +++++--
hw/nvme/ctrl.c          | 362 +++++++++++++++++++++++-----------------
tests/qtest/nvme-test.c |  26 +++
3 files changed, 276 insertions(+), 172 deletions(-)
[PATCH v3 0/5] hw/nvme: fix mmio read
Posted by Klaus Jensen 2 years, 9 months ago
From: Klaus Jensen <k.jensen@samsung.com>

Fix mmio read issues on big-endian hosts. The core issue is that values
in the BAR is not stored in little endian as required.

Fix that and add a regression test for this. This required a bit of
cleanup, so it blew up into a series.

v2:

  * "hw/nvme: use symbolic names for registers"
    Use offsetof(NvmeBar, reg) instead of explicit offsets (Philippe)

  * "hw/nvme: fix mmio read"
    Use the st/ld API instead of cpu_to_X (Philippe)

Klaus Jensen (5):
  hw/nvme: split pmrmsc register into upper and lower
  hw/nvme: use symbolic names for registers
  hw/nvme: fix out-of-bounds reads
  hw/nvme: fix mmio read
  tests/qtest/nvme-test: add mmio read test

 include/block/nvme.h    |  60 +++++--
 hw/nvme/ctrl.c          | 362 +++++++++++++++++++++++-----------------
 tests/qtest/nvme-test.c |  26 +++
 3 files changed, 276 insertions(+), 172 deletions(-)

-- 
2.32.0


Re: [PATCH v3 0/5] hw/nvme: fix mmio read
Posted by Klaus Jensen 2 years, 9 months ago
On Jul 14 08:01, Klaus Jensen wrote:
> From: Klaus Jensen <k.jensen@samsung.com>
> 
> Fix mmio read issues on big-endian hosts. The core issue is that values
> in the BAR is not stored in little endian as required.
> 
> Fix that and add a regression test for this. This required a bit of
> cleanup, so it blew up into a series.
> 
> v2:
> 
>   * "hw/nvme: use symbolic names for registers"
>     Use offsetof(NvmeBar, reg) instead of explicit offsets (Philippe)
> 
>   * "hw/nvme: fix mmio read"
>     Use the st/ld API instead of cpu_to_X (Philippe)
> 
> Klaus Jensen (5):
>   hw/nvme: split pmrmsc register into upper and lower
>   hw/nvme: use symbolic names for registers
>   hw/nvme: fix out-of-bounds reads
>   hw/nvme: fix mmio read
>   tests/qtest/nvme-test: add mmio read test
> 
>  include/block/nvme.h    |  60 +++++--
>  hw/nvme/ctrl.c          | 362 +++++++++++++++++++++++-----------------
>  tests/qtest/nvme-test.c |  26 +++
>  3 files changed, 276 insertions(+), 172 deletions(-)
> 

Oi,

A review on patch 3 and 4 would be appreciated so this has a chance of
reaching Peter for -rc0 :)
Re: [PATCH v3 0/5] hw/nvme: fix mmio read
Posted by Stefan Hajnoczi 2 years, 9 months ago
On Mon, Jul 19, 2021 at 08:43:33AM +0200, Klaus Jensen wrote:
> On Jul 14 08:01, Klaus Jensen wrote:
> > From: Klaus Jensen <k.jensen@samsung.com>
> > 
> > Fix mmio read issues on big-endian hosts. The core issue is that values
> > in the BAR is not stored in little endian as required.
> > 
> > Fix that and add a regression test for this. This required a bit of
> > cleanup, so it blew up into a series.
> > 
> > v2:
> > 
> >   * "hw/nvme: use symbolic names for registers"
> >     Use offsetof(NvmeBar, reg) instead of explicit offsets (Philippe)
> > 
> >   * "hw/nvme: fix mmio read"
> >     Use the st/ld API instead of cpu_to_X (Philippe)
> > 
> > Klaus Jensen (5):
> >   hw/nvme: split pmrmsc register into upper and lower
> >   hw/nvme: use symbolic names for registers
> >   hw/nvme: fix out-of-bounds reads
> >   hw/nvme: fix mmio read
> >   tests/qtest/nvme-test: add mmio read test
> > 
> >  include/block/nvme.h    |  60 +++++--
> >  hw/nvme/ctrl.c          | 362 +++++++++++++++++++++++-----------------
> >  tests/qtest/nvme-test.c |  26 +++
> >  3 files changed, 276 insertions(+), 172 deletions(-)
> > 
> 
> Oi,
> 
> A review on patch 3 and 4 would be appreciated so this has a chance of
> reaching Peter for -rc0 :)

I have reviewed Patch 3. Unfortunately I don't have time to review the
rest right now but maybe you can ask a specific person on the CC list to
review other patches. A Reply-All to multiple people might not receive
any attention :).

Stefan