Message ID | 20200922084533.1273962-1-its@irrelevant.dk |
---|---|
Headers | show |
Series | hw/block/nvme: multiple namespaces support | expand |
On Tue, Sep 22, 2020 at 10:45:16AM +0200, 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 two new features: > > * support for scatter/gather lists > > * multiple namespaces support through a new nvme-ns device > > Finally, the series wraps up 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. For the rest of the patches I haven't individually commented: Reviewed-by: Keith Busch <kbusch@kernel.org>
On Sep 22 08:31, Keith Busch wrote: > On Tue, Sep 22, 2020 at 10:45:16AM +0200, 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 two new features: > > > > * support for scatter/gather lists > > > > * multiple namespaces support through a new nvme-ns device > > > > Finally, the series wraps up 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. > > For the rest of the patches I haven't individually commented: > > Reviewed-by: Keith Busch <kbusch@kernel.org> Sorry if I am being thick here Keith, but didn't you R-b all patches (except 3 and 9) in v2 yesterday? I do not see any comments to any of the v3 patches, so I'm not sure how to interpret this ;)
On Tue, Sep 22, 2020 at 07:27:30PM +0200, Klaus Jensen wrote: > On Sep 22 08:31, Keith Busch wrote: > > On Tue, Sep 22, 2020 at 10:45:16AM +0200, 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 two new features: > > > > > > * support for scatter/gather lists > > > > > > * multiple namespaces support through a new nvme-ns device > > > > > > Finally, the series wraps up 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. > > > > For the rest of the patches I haven't individually commented: > > > > Reviewed-by: Keith Busch <kbusch@kernel.org> > > Sorry if I am being thick here Keith, but didn't you R-b all patches > (except 3 and 9) in v2 yesterday? > > I do not see any comments to any of the v3 patches, so I'm not sure how > to interpret this ;) Ha, I thought I did yesterday too, but it's not showing in my "Sent" mail so I sent it again. But since it apparently did send, you can interpret the 2nd as "two thumbs up!". :)
On Sep 22 10:45, 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 two new features: > > * support for scatter/gather lists > > * multiple namespaces support through a new nvme-ns device > > Finally, the series wraps up 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. > > Changes for v3 > ~~~~~~~~~~~~~~ > > * hw/block/nvme: handle dma errors > Do not retry DMA, just set Controller Fatal Status (CFS). This causes > the Linux kernel to most likely disable the controller when running the > blktests block/011 test case, which causes some havoc when running > blktests, but I have submitted a patch for blktests to fix this. (Keith) > > * hw/block/nvme: refactor aio submission > Dropped the unneeded nvme_req_is_write function. (Keith) > > * Added R-b's from Keith and Philippe. > > Changes for v2 > ~~~~~~~~~~~~~~ > > * Added a new patch ("hw/block/nvme: fix typo in trace event") that does what > it says on the tin. > > * Dropped the "hw/block/nvme: support multiple parallel aios per request" > patch (Keith). > > * hw/block/nvme: add symbolic command name to trace events > Changed to single quote (Philippe) > > * hw/block/nvme: default request status to success > Commit message typo fixed (Philippe) > > * hw/block/nvme: change controller pci id > Do NOT bump the device id for the legacy Intel id (David) > > Gollu Appalanaidu (1): > hw/block/nvme: add support for sgl bit bucket descriptor > > Klaus Jensen (16): > hw/block/nvme: fix typo in trace event > 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: 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 > > docs/specs/nvme.txt | 23 ++ > docs/specs/pci-ids.txt | 1 + > hw/block/nvme-ns.h | 74 ++++ > hw/block/nvme.h | 83 +++- > include/block/nvme.h | 6 +- > include/hw/pci/pci.h | 4 +- > hw/block/nvme-ns.c | 167 ++++++++ > hw/block/nvme.c | 848 ++++++++++++++++++++++++++++++----------- > hw/core/machine.c | 1 + > MAINTAINERS | 1 + > hw/block/meson.build | 2 +- > hw/block/trace-events | 23 +- > 12 files changed, 978 insertions(+), 255 deletions(-) > create mode 100644 docs/specs/nvme.txt > create mode 100644 hw/block/nvme-ns.h > create mode 100644 hw/block/nvme-ns.c > > -- > 2.28.0 > Pushed to nvme-next. Thanks for the reviews everyone. I think I posted the first version of this more than a year ago. This feels so good!
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 two new features: * support for scatter/gather lists * multiple namespaces support through a new nvme-ns device Finally, the series wraps up 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. Changes for v3 ~~~~~~~~~~~~~~ * hw/block/nvme: handle dma errors Do not retry DMA, just set Controller Fatal Status (CFS). This causes the Linux kernel to most likely disable the controller when running the blktests block/011 test case, which causes some havoc when running blktests, but I have submitted a patch for blktests to fix this. (Keith) * hw/block/nvme: refactor aio submission Dropped the unneeded nvme_req_is_write function. (Keith) * Added R-b's from Keith and Philippe. Changes for v2 ~~~~~~~~~~~~~~ * Added a new patch ("hw/block/nvme: fix typo in trace event") that does what it says on the tin. * Dropped the "hw/block/nvme: support multiple parallel aios per request" patch (Keith). * hw/block/nvme: add symbolic command name to trace events Changed to single quote (Philippe) * hw/block/nvme: default request status to success Commit message typo fixed (Philippe) * hw/block/nvme: change controller pci id Do NOT bump the device id for the legacy Intel id (David) Gollu Appalanaidu (1): hw/block/nvme: add support for sgl bit bucket descriptor Klaus Jensen (16): hw/block/nvme: fix typo in trace event 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: 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 docs/specs/nvme.txt | 23 ++ docs/specs/pci-ids.txt | 1 + hw/block/nvme-ns.h | 74 ++++ hw/block/nvme.h | 83 +++- include/block/nvme.h | 6 +- include/hw/pci/pci.h | 4 +- hw/block/nvme-ns.c | 167 ++++++++ hw/block/nvme.c | 848 ++++++++++++++++++++++++++++++----------- hw/core/machine.c | 1 + MAINTAINERS | 1 + hw/block/meson.build | 2 +- hw/block/trace-events | 23 +- 12 files changed, 978 insertions(+), 255 deletions(-) create mode 100644 docs/specs/nvme.txt create mode 100644 hw/block/nvme-ns.h create mode 100644 hw/block/nvme-ns.c -- 2.28.0