[PATCH v5 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          | 352 ++++++++++++++++++++++------------------
tests/qtest/nvme-test.c |  26 +++
3 files changed, 265 insertions(+), 173 deletions(-)
[PATCH v5 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.

v5:
  * "hw/nvme: fix mmio read"
    - Hurried the changes a bit. Fixed.

v4:
  * "hw/nvme: split pmrmsc register into upper and lower"
    - Fix missing left-shift (Peter)

  * "hw/nvme: fix mmio read"
    - Remove unnecessary masking (Peter)
    - Keep existing behaviour and do not zero the register fields doing
      initialization (Peter)

v3:

  * "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          | 352 ++++++++++++++++++++++------------------
 tests/qtest/nvme-test.c |  26 +++
 3 files changed, 265 insertions(+), 173 deletions(-)

-- 
2.32.0