Message ID | 20200904141956.576630-1-its@irrelevant.dk |
---|---|
Headers | show |
Series | hw/block/nvme: multiple namespaces support | expand |
Hi Klaus, On 9/4/20 4:19 PM, Klaus Jensen wrote: > From: Klaus Jensen <k.jensen@samsung.com> > > This is the next round of my patches for the nvme device. > > This includes a bit of cleanup and three new features: > > * refactored aio submission > This also adds support for multiple parallel AIOs per request which is in > preparation for DULBE, ZNS and metadata support. If it is found > controversial, it can easily be dropped from this series. > > * support for scatter/gather lists > > * multiple namespaces support through a new nvme-ns device > > Finally, the series ends with changing the PCI vendor and device ID to get rid > of the internal Intel id and as a side-effect get rid of some Linux kernel > quirks that no longer applies. > > "pci: pass along the return value of dma_memory_rw" has already been posted by > Philippe in another series, but since it is not applied yet, I am including it > here. > > Gollu Appalanaidu (1): > hw/block/nvme: add support for sgl bit bucket descriptor > > Klaus Jensen (16): > pci: pass along the return value of dma_memory_rw > hw/block/nvme: handle dma errors > hw/block/nvme: commonize nvme_rw error handling > hw/block/nvme: alignment style fixes > hw/block/nvme: add a lba to bytes helper > hw/block/nvme: fix endian conversion > hw/block/nvme: add symbolic command name to trace events > hw/block/nvme: refactor aio submission > hw/block/nvme: default request status to success > hw/block/nvme: support multiple parallel aios per request > hw/block/nvme: harden cmb access > hw/block/nvme: add support for scatter gather lists > hw/block/nvme: refactor identify active namespace id list > hw/block/nvme: support multiple namespaces > pci: allocate pci id for nvme > hw/block/nvme: change controller pci id > > MAINTAINERS | 1 + > docs/specs/nvme.txt | 23 + > docs/specs/pci-ids.txt | 1 + > hw/block/meson.build | 2 +- > hw/block/nvme-ns.c | 185 +++++++++ > hw/block/nvme-ns.h | 74 ++++ > hw/block/nvme.c | 923 +++++++++++++++++++++++++++++++---------- > hw/block/nvme.h | 126 +++++- > hw/block/trace-events | 21 +- > hw/core/machine.c | 1 + > include/block/nvme.h | 8 +- > include/hw/pci/pci.h | 4 +- To ease the review, consider setup'ing scripts/git.orderfile, as it avoid reviewers to scroll patches in their email client. Thanks, Phil.
On Sep 4 18:12, Philippe Mathieu-Daudé wrote: > Hi Klaus, > > On 9/4/20 4:19 PM, Klaus Jensen wrote: > > From: Klaus Jensen <k.jensen@samsung.com> > > > > This is the next round of my patches for the nvme device. > > > > This includes a bit of cleanup and three new features: > > > > * refactored aio submission > > This also adds support for multiple parallel AIOs per request which is in > > preparation for DULBE, ZNS and metadata support. If it is found > > controversial, it can easily be dropped from this series. > > > > * support for scatter/gather lists > > > > * multiple namespaces support through a new nvme-ns device > > > > Finally, the series ends with changing the PCI vendor and device ID to get rid > > of the internal Intel id and as a side-effect get rid of some Linux kernel > > quirks that no longer applies. > > > > "pci: pass along the return value of dma_memory_rw" has already been posted by > > Philippe in another series, but since it is not applied yet, I am including it > > here. > > > > Gollu Appalanaidu (1): > > hw/block/nvme: add support for sgl bit bucket descriptor > > > > Klaus Jensen (16): > > pci: pass along the return value of dma_memory_rw > > hw/block/nvme: handle dma errors > > hw/block/nvme: commonize nvme_rw error handling > > hw/block/nvme: alignment style fixes > > hw/block/nvme: add a lba to bytes helper > > hw/block/nvme: fix endian conversion > > hw/block/nvme: add symbolic command name to trace events > > hw/block/nvme: refactor aio submission > > hw/block/nvme: default request status to success > > hw/block/nvme: support multiple parallel aios per request > > hw/block/nvme: harden cmb access > > hw/block/nvme: add support for scatter gather lists > > hw/block/nvme: refactor identify active namespace id list > > hw/block/nvme: support multiple namespaces > > pci: allocate pci id for nvme > > hw/block/nvme: change controller pci id > > > > MAINTAINERS | 1 + > > docs/specs/nvme.txt | 23 + > > docs/specs/pci-ids.txt | 1 + > > hw/block/meson.build | 2 +- > > hw/block/nvme-ns.c | 185 +++++++++ > > hw/block/nvme-ns.h | 74 ++++ > > hw/block/nvme.c | 923 +++++++++++++++++++++++++++++++---------- > > hw/block/nvme.h | 126 +++++- > > hw/block/trace-events | 21 +- > > hw/core/machine.c | 1 + > > include/block/nvme.h | 8 +- > > include/hw/pci/pci.h | 4 +- > > To ease the review, consider setup'ing scripts/git.orderfile, > as it avoid reviewers to scroll patches in their email client. > Oh wow. You learn something new everyday. That's really neat! Thanks!
From: Klaus Jensen <k.jensen@samsung.com> This is the next round of my patches for the nvme device. This includes a bit of cleanup and three new features: * refactored aio submission This also adds support for multiple parallel AIOs per request which is in preparation for DULBE, ZNS and metadata support. If it is found controversial, it can easily be dropped from this series. * support for scatter/gather lists * multiple namespaces support through a new nvme-ns device Finally, the series ends with changing the PCI vendor and device ID to get rid of the internal Intel id and as a side-effect get rid of some Linux kernel quirks that no longer applies. "pci: pass along the return value of dma_memory_rw" has already been posted by Philippe in another series, but since it is not applied yet, I am including it here. Gollu Appalanaidu (1): hw/block/nvme: add support for sgl bit bucket descriptor Klaus Jensen (16): pci: pass along the return value of dma_memory_rw hw/block/nvme: handle dma errors hw/block/nvme: commonize nvme_rw error handling hw/block/nvme: alignment style fixes hw/block/nvme: add a lba to bytes helper hw/block/nvme: fix endian conversion hw/block/nvme: add symbolic command name to trace events hw/block/nvme: refactor aio submission hw/block/nvme: default request status to success hw/block/nvme: support multiple parallel aios per request hw/block/nvme: harden cmb access hw/block/nvme: add support for scatter gather lists hw/block/nvme: refactor identify active namespace id list hw/block/nvme: support multiple namespaces pci: allocate pci id for nvme hw/block/nvme: change controller pci id MAINTAINERS | 1 + docs/specs/nvme.txt | 23 + docs/specs/pci-ids.txt | 1 + hw/block/meson.build | 2 +- hw/block/nvme-ns.c | 185 +++++++++ hw/block/nvme-ns.h | 74 ++++ hw/block/nvme.c | 923 +++++++++++++++++++++++++++++++---------- hw/block/nvme.h | 126 +++++- hw/block/trace-events | 21 +- hw/core/machine.c | 1 + include/block/nvme.h | 8 +- include/hw/pci/pci.h | 4 +- 12 files changed, 1108 insertions(+), 261 deletions(-) create mode 100644 docs/specs/nvme.txt create mode 100644 hw/block/nvme-ns.c create mode 100644 hw/block/nvme-ns.h