On Mon, Jul 20, 2020 at 04:28:26PM -0700, Sagi Grimberg wrote:
> On 7/20/20 4:17 PM, Keith Busch wrote:
> > On Mon, Jul 20, 2020 at 05:01:19PM -0600, Logan Gunthorpe wrote:
> > > On 2020-07-20 4:35 p.m., Sagi Grimberg wrote:
> > >
> > > > passthr
On Fri, Jul 24, 2020 at 11:25:17AM -0600, Logan Gunthorpe wrote:
> + /*
> + * The passthru NVMe driver may have a limit on the number of segments
> + * which depends on the host's memory fragementation. To solve this,
> + * ensure mdts is limitted to the pages equal to the
On Fri, Jul 24, 2020 at 11:25:11AM -0600, Logan Gunthorpe wrote:
> This is v16 of the passthru patchset which make a bunch of cleanup as
> suggested by Christoph.
Thank, looks great. Just the comment on 6/9, which probably isn't super
important anyway.
Reviewed-by: Keith Busch
>
> You can find EDR spec in the following link.
>
> https://members.pcisig.com/wg/PCI-SIG/document/12614
Thank you for sticking with this. I've reviewed the series and I think
this looks good for the next merge window.
Acked-by: Keith Busch
On Fri, Jul 03, 2020 at 10:49:24AM +0800, Baolin Wang wrote:
> static blk_status_t nvme_map_data(struct nvme_dev *dev, struct request *req,
> @@ -844,7 +844,7 @@ static blk_status_t nvme_map_metadata(struct nvme_dev
> *dev, struct request *req,
> if (dma_mapping_error(dev->dev,
On Tue, Jun 30, 2020 at 04:01:45PM +0200, Maximilian Heyne wrote:
> On 6/30/20 3:36 PM, Christoph Hellwig wrote:
> > And actually - 1.0 did not have the concept of a subsystem. So having
> > a duplicate serial number for a 1.0 controller actually is a pretty
> > nasty bug. Can you point me to
On Sun, Jun 28, 2020 at 06:34:46PM +0800, Baolin Wang wrote:
> Move the sg table allocation and free into the init_request() and
> exit_request(), instead of allocating sg table when queuing requests,
> which can benefit the IO performance.
If you want to pre-allocate something per-request, you
On Tue, Jun 23, 2020 at 09:24:32PM +0800, Baolin Wang wrote:
> From the NVMe spec, "In order to make efficient use of the non-volatile
> memory, it is often advantageous to execute multiple commands from a
> Submission Queue in parallel. For Submission Queues that are using
> weighted round robin
On Tue, Jun 23, 2020 at 10:39:01AM -0700, Sagi Grimberg wrote:
>
> > > From the NVMe spec, "In order to make efficient use of the non-volatile
> > > memory, it is often advantageous to execute multiple commands from a
> > > Submission Queue in parallel. For Submission Queues that are using
> > >
Thanks for the ping. I started a new branch, nvme-4.18-2, based off of
Jens' for-next with this being the first new commit.
I'm certain we're still missing a lot of reviewed commits. I'll try to
go through the mail history and apply by the end of the week, but any
friendly reminders would not be
On Wed, Feb 13, 2019 at 09:56:36PM +0100, Thomas Gleixner wrote:
> On Wed, 13 Feb 2019, Bjorn Helgaas wrote:
> > On Wed, Feb 13, 2019 at 06:50:37PM +0800, Ming Lei wrote:
> > > We have to ask driver to re-caculate set vectors after the whole IRQ
> > > vectors are allocated later, and the result
On Wed, Feb 13, 2019 at 10:41:55PM +0100, Thomas Gleixner wrote:
> Btw, while I have your attention. There popped up an issue recently related
> to that affinity logic.
>
> The current implementation fails when:
>
> /*
> * If there aren't any vectors left after applying the
requires valid address ranges have an equivalent SRAT entry,
verify each memory target satisfies this requirement.
Signed-off-by: Keith Busch
---
drivers/acpi/hmat/Kconfig | 1 +
drivers/acpi/hmat/hmat.c | 396 +-
2 files changed, 396 insertions(+), 1
-by: Keith Busch
---
Documentation/ABI/stable/sysfs-devices-node | 35 +++
drivers/base/node.c | 151
include/linux/node.h| 34 +++
3 files changed, 220 insertions(+)
diff --git a/Documentation/ABI/stable/sysfs-devices
to query this information.
Reviewed-by: Mike Rapoport
Signed-off-by: Keith Busch
---
Documentation/admin-guide/mm/numaperf.rst | 164 ++
1 file changed, 164 insertions(+)
create mode 100644 Documentation/admin-guide/mm/numaperf.rst
diff --git a/Documentation/admin-guide
deY/access0/initiators/nodeX ->
../../nodeX
The new attributes are added to the sysfs stable documentation.
Reviewed-by: Rafael J. Wysocki
Signed-off-by: Keith Busch
---
Documentation/ABI/stable/sysfs-devices-node | 25 -
drivers/base/node.c
ld
data. This works with mbind() or the numactl library.
Keith Busch (10):
acpi: Create subtable parsing infrastructure
acpi: Add HMAT to generic parsing tables
acpi/hmat: Parse and report heterogeneous memory
node: Link memory nodes to their compute nodes
node: Add heterogenous memory access
parsing
the entries array may be more reused for all ACPI system tables and
the common code doesn't need to be duplicated.
Reviewed-by: Rafael J. Wysocki
Cc: Dan Williams
Signed-off-by: Keith Busch
---
arch/arm64/kernel/acpi_numa.c | 2 +-
arch/arm64/kernel/smp.c
Save the best performance access attributes and register these with the
memory's node if HMAT provides the locality table. While HMAT does make
it possible to know performance for all possible initiator-target
pairings, we export only the local pairings at this time.
Signed-off-by: Keith Busch
The Heterogeneous Memory Attribute Table (HMAT) header has different
field lengths than the existing parsing uses. Add the HMAT type to the
parsing rules so it may be generically parsed.
Cc: Dan Williams
Reviewed-by: Rafael J. Wysocki
Signed-off-by: Keith Busch
---
drivers/acpi/tables.c | 9
Register memory side cache attributes with the memory's node if HMAT
provides the side cache iniformation table.
Signed-off-by: Keith Busch
---
drivers/acpi/hmat/hmat.c | 32
1 file changed, 32 insertions(+)
diff --git a/drivers/acpi/hmat/hmat.c b/drivers/acpi
omitted from the any access class' initiators.
Descriptions for memory access initiator performance access attributes
are added to sysfs stable documentation.
Signed-off-by: Keith Busch
---
Documentation/ABI/stable/sysfs-devices-node | 31 ++-
drivers/base/Kconfig
-by: Keith Busch
---
drivers/acpi/Kconfig | 1 +
drivers/acpi/Makefile | 1 +
drivers/acpi/hmat/Kconfig | 8 ++
drivers/acpi/hmat/Makefile | 1 +
drivers/acpi/hmat/hmat.c | 236 +
5 files changed, 247 insertions(+)
create mode 100644
On Thu, Feb 14, 2019 at 12:44:48PM -0800, Elliott, Robert (Persistent Memory)
wrote:
>
> The PCIe and NVMe specifications dosn't standardize a way to tell the device
> when to use RO, which leads to system workarounds like this.
>
> The Enable Relaxed Ordering bit defined by PCIe tells the
On Mon, Jan 14, 2019 at 12:10:12AM +0100, Pavel Machek wrote:
> On Wed 2019-01-09 10:43:36, Keith Busch wrote:
> > + This node's write latency in nanosecondss available to memory
> > + initiators in nodes found in this class's
> > initiators_nodelist.
>
On Sun, Jan 13, 2019 at 01:42:30PM +0200, Mike Rapoport wrote:
> There are a couple of nitpicks below, otherwise
>
> Reviewed-by: Mike Rapoport
Thank you for the detailed review. I've incorporated all your
recommmendations for the next revision.
[+Ming]
On Mon, Jan 14, 2019 at 08:31:45AM -0600, Bjorn Helgaas wrote:
> [+cc Dou, Jens, Thomas, Christoph, linux-pci, LKML]
>
> On Sun, Jan 13, 2019 at 11:24 PM fin4478 fin4478 wrote:
> >
> > Hi,
> >
> > A regression from the 4.20 kernel: I have the Asgard 256GB nvme drive
> > and my custom
[+linux-n...@lists.infradead.org]
On Mon, Jan 14, 2019 at 10:03:39AM -0700, Keith Busch wrote:
> [+Ming]
> On Mon, Jan 14, 2019 at 08:31:45AM -0600, Bjorn Helgaas wrote:
> > [+cc Dou, Jens, Thomas, Christoph, linux-pci, LKML]
> >
> > On Sun, Jan 13, 2019 at 11:24 PM fin
On Thu, Jan 10, 2019 at 07:42:46AM -0800, Rafael J. Wysocki wrote:
> On Wed, Jan 9, 2019 at 6:47 PM Keith Busch wrote:
> >
> > Systems may provide different memory types and export this information
> > in the ACPI Heterogeneous Memory Attribute Table (HMAT). Parse thes
On Tue, Feb 05, 2019 at 09:56:05PM +0900, Takao Indoh wrote:
> On Fri, Feb 01, 2019 at 07:54:14AM -0700, Keith Busch wrote:
> > On Fri, Feb 01, 2019 at 09:46:15PM +0900, Takao Indoh wrote:
> > > From: Takao Indoh
> > >
> > > Fujitsu A64FX processor has a
On Tue, Feb 05, 2019 at 04:33:27AM -0800, Rafael J. Wysocki wrote:
> On Fri, Jan 25, 2019 at 12:08 AM Keith Busch wrote:
> > +/**
> > + * struct node_access_nodes - Access class device to hold user visible
> > + * relationships to other nodes.
>
On Tue, Feb 05, 2019 at 05:24:11AM -0800, John Garry wrote:
> On 04/02/2019 07:12, Hannes Reinecke wrote:
>
> Hi Hannes,
>
> >
> > So, as the user then has to wait for the system to declars 'ready for
> > CPU remove', why can't we just disable the SQ and wait for all I/O to
> > complete?
> > We
On Tue, Feb 05, 2019 at 03:09:28PM +, John Garry wrote:
> On 05/02/2019 14:52, Keith Busch wrote:
> > On Tue, Feb 05, 2019 at 05:24:11AM -0800, John Garry wrote:
> > > On 04/02/2019 07:12, Hannes Reinecke wrote:
> > >
> > > Hi Hannes,
> > >
>
On Tue, Feb 05, 2019 at 04:10:47PM +0100, Hannes Reinecke wrote:
> On 2/5/19 3:52 PM, Keith Busch wrote:
> > Whichever layer dispatched the IO to a CPU specific context should
> > be the one to wait for its completion. That should be blk-mq for most
> > block drivers.
> >
On Sun, Feb 10, 2019 at 09:19:58AM -0800, Jonathan Cameron wrote:
> On Sat, 9 Feb 2019 09:20:53 +0100
> Brice Goglin wrote:
>
> > Hello Keith
> >
> > Could we ever have a single side cache in front of two NUMA nodes ? I
> > don't see a way to find that out in the current implementation. Would
requires valid address ranges have an equivalent SRAT entry,
verify each memory target satisfies this requirement.
Signed-off-by: Keith Busch
---
drivers/acpi/hmat/hmat.c | 143 ---
1 file changed, 136 insertions(+), 7 deletions(-)
diff --git a/drivers
Systems may provide different memory types and export this information
in the ACPI Heterogeneous Memory Attribute Table (HMAT). Parse these
tables provided by the platform and report the memory access and caching
attributes.
Signed-off-by: Keith Busch
---
drivers/acpi/Kconfig | 1
Save the best performace access attributes and register these with the
memory's node if HMAT provides the locality table. While HMAT does make
it possible to know performance for all possible initiator-target
pairings, we export only the best pairings at this time.
Signed-off-by: Keith Busch
Add the attributes for the system memory side caches.
Signed-off-by: Keith Busch
---
Documentation/ABI/stable/sysfs-devices-node | 34 +
1 file changed, 34 insertions(+)
diff --git a/Documentation/ABI/stable/sysfs-devices-node
b/Documentation/ABI/stable/sysfs
are the cache size, the line size, associativity,
and write back policy.
Signed-off-by: Keith Busch
---
drivers/base/node.c | 142 +++
include/linux/node.h | 39 ++
2 files changed, 181 insertions(+)
diff --git a/drivers/base/node.c b
parsing
the entries array may be more reused for all ACPI system tables and
the common code doesn't need to be duplicated.
Reviewed-by: Rafael J. Wysocki
Cc: Dan Williams
Signed-off-by: Keith Busch
---
arch/arm64/kernel/acpi_numa.c | 2 +-
arch/arm64/kernel/smp.c
to query this information.
Reviewed-by: Mike Rapoport
Signed-off-by: Keith Busch
---
Documentation/admin-guide/mm/numaperf.rst | 184 ++
1 file changed, 184 insertions(+)
create mode 100644 Documentation/admin-guide/mm/numaperf.rst
diff --git a/Documentation/admin-guide
The Heterogeneous Memory Attribute Table (HMAT) header has different
field lengths than the existing parsing uses. Add the HMAT type to the
parsing rules so it may be generically parsed.
Cc: Dan Williams
Reviewed-by: Rafael J. Wysocki
Signed-off-by: Keith Busch
---
drivers/acpi/tables.c | 9
Register memory side cache attributes with the memory's node if HMAT
provides the side cache iniformation table.
Signed-off-by: Keith Busch
---
drivers/acpi/hmat/hmat.c | 32
1 file changed, 32 insertions(+)
diff --git a/drivers/acpi/hmat/hmat.c b/drivers/acpi
Add descriptions for memory class initiator performance access attributes.
Signed-off-by: Keith Busch
---
Documentation/ABI/stable/sysfs-devices-node | 28
1 file changed, 28 insertions(+)
diff --git a/Documentation/ABI/stable/sysfs-devices-node
b/Documentation
the attributes from such systems
that are useful for applications to know about, and readily usable with
existing tools and libraries.
Keith Busch (13):
acpi: Create subtable parsing infrastructure
acpi: Add HMAT to generic parsing tables
acpi/hmat: Parse and report heterogeneous memory
node
class0/target_nodelist
Y
# cat /sys/devices/system/node/nodeY/class0/initiator_nodelist
X
Signed-off-by: Keith Busch
---
drivers/base/node.c | 127 ++-
include/linux/node.h | 6 ++-
2 files changed, 131 insertions(+), 2 deletions(-)
diff
re. When a subsystem makes use of this interface, initiators
of a lower class number, "Z", have better performance relative to higher
class numbers. When provided, class 0 is the highest performing access
class.
Signed-off-by: Keith Busch
---
drivers/base/Kconfig | 8 +
Add entries for memory initiator and target node class attributes.
Signed-off-by: Keith Busch
---
Documentation/ABI/stable/sysfs-devices-node | 25 -
1 file changed, 24 insertions(+), 1 deletion(-)
diff --git a/Documentation/ABI/stable/sysfs-devices-node
b
On Thu, Jan 17, 2019 at 11:58:21PM +1100, Balbir Singh wrote:
> On Wed, Jan 16, 2019 at 10:57:51AM -0700, Keith Busch wrote:
> > It had previously been difficult to describe these setups as memory
> > rangers were generally lumped into the NUMA node of the CPUs. New
> > pla
On Thu, Jan 17, 2019 at 11:29:10AM -0500, Jeff Moyer wrote:
> Dave Hansen writes:
> > Persistent memory is cool. But, currently, you have to rewrite
> > your applications to use it. Wouldn't it be cool if you could
> > just have it show up in your system like normal RAM and get to
> > it like a
On Thu, Jan 17, 2019 at 12:20:06PM -0500, Jeff Moyer wrote:
> Keith Busch writes:
> > On Thu, Jan 17, 2019 at 11:29:10AM -0500, Jeff Moyer wrote:
> >> Dave Hansen writes:
> >> > Persistent memory is cool. But, currently, you have to rewrite
> >> &
On Thu, Jan 17, 2019 at 10:18:35AM -0800, Jonathan Cameron wrote:
> I've been having a play with various hand constructed HMAT tables to allow
> me to try breaking them in all sorts of ways.
>
> Mostly working as expected.
>
> Two places I am so far unsure on...
>
> 1. Concept of 'best' is not
On Thu, Jan 17, 2019 at 12:41:19PM +0100, Rafael J. Wysocki wrote:
> On Wed, Jan 16, 2019 at 6:59 PM Keith Busch wrote:
> >
> > Add entries for memory initiator and target node class attributes.
> >
> > Signed-off-by: Keith Busch
>
> I would recommend combi
On Tue, Jan 29, 2019 at 03:25:48AM -0800, John Garry wrote:
> Hi,
>
> I have a question on $subject which I hope you can shed some light on.
>
> According to commit c5cb83bb337c25 ("genirq/cpuhotplug: Handle managed
> IRQs on CPU hotplug"), if we offline the last CPU in a managed IRQ
>
On Tue, Jan 29, 2019 at 05:12:40PM +, John Garry wrote:
> On 29/01/2019 15:44, Keith Busch wrote:
> >
> > Hm, we used to freeze the queues with CPUHP_BLK_MQ_PREPARE callback,
> > which would reap all outstanding commands before the CPU and IRQ are
> > take
On Wed, Jan 30, 2019 at 06:48:47PM +0100, Michal Hocko wrote:
> Hi,
> I would like to propose the following topic for the MM track. Different
> group of people would like to use NVIDMMs as a low cost & slower memory
> which is presented to the system as a NUMA node. We do have a NUMA API
> but it
ice-DAX
> sub-systems.
>
> The linux-nvdimm mailing hosts a patchwork instance for both DAX and
> NVDIMM patches.
>
> Cc: Jan Kara
> Cc: Ira Weiny
> Cc: Ross Zwisler
> Cc: Keith Busch
> Cc: Matthew Wilcox
> Signed-off-by: Dan Williams
Acked-by: Keith Busch
parsing
the entries array may be more reused for all ACPI system tables and
the common code doesn't need to be duplicated.
Reviewed-by: Rafael J. Wysocki
Cc: Dan Williams
Signed-off-by: Keith Busch
---
arch/arm64/kernel/acpi_numa.c | 2 +-
arch/arm64/kernel/smp.c
sysfs directory.
Since HMAT requires valid address ranges have an equivalent SRAT entry,
verify each memory target satisfies this requirement.
Signed-off-by: Keith Busch
---
drivers/acpi/hmat/hmat.c | 310 +++
1 file changed, 310 insertions(+)
diff
Register memory side cache attributes with the memory's node if HMAT
provides the side cache iniformation table.
Signed-off-by: Keith Busch
---
drivers/acpi/hmat/hmat.c | 32
1 file changed, 32 insertions(+)
diff --git a/drivers/acpi/hmat/hmat.c b/drivers/acpi
to query this information.
Reviewed-by: Mike Rapoport
Signed-off-by: Keith Busch
---
Documentation/admin-guide/mm/numaperf.rst | 167 ++
1 file changed, 167 insertions(+)
create mode 100644 Documentation/admin-guide/mm/numaperf.rst
diff --git a/Documentation/admin-guide
deY/access0/initiators/nodeX ->
../../nodeX
The new attributes are added to the sysfs stable documentation.
Signed-off-by: Keith Busch
---
Documentation/ABI/stable/sysfs-devices-node | 25 -
drivers/base/node.c | 142 +++-
include/linux/
The Heterogeneous Memory Attribute Table (HMAT) header has different
field lengths than the existing parsing uses. Add the HMAT type to the
parsing rules so it may be generically parsed.
Cc: Dan Williams
Reviewed-by: Rafael J. Wysocki
Signed-off-by: Keith Busch
---
drivers/acpi/tables.c | 9
are the cache size, the line size, associativity,
and write back policy.
Add the attributes for the system memory side caches to sysfs stable
documentation.
Signed-off-by: Keith Busch
---
Documentation/ABI/stable/sysfs-devices-node | 34 +++
drivers/base/node.c | 153
omitted from the any access class' initiators.
Descriptions for memory access initiator performance access attributes
are added to sysfs stable documentation.
Signed-off-by: Keith Busch
---
Documentation/ABI/stable/sysfs-devices-node | 28 ++
drivers/base/Kconfig
Register the local attached performace access attributes with the memory's
node if HMAT provides the locality table. While HMAT does make it possible
to know performance for all possible initiator-target pairings, we export
only the local and matching pairings at this time.
Signed-off-by: Keith
Systems may provide different memory types and export this information
in the ACPI Heterogeneous Memory Attribute Table (HMAT). Parse these
tables provided by the platform and report the memory access and caching
attributes to the kernel messages.
Signed-off-by: Keith Busch
---
drivers/acpi
nd in use today that describe
the more complex memory hierarchies that can be created.
This series' objective is to provide the attributes from such systems
that are useful for applications to know about, and readily usable with
existing tools and libraries.
Keith Busch (10):
acpi: Create subtable parsin
On Wed, Feb 06, 2019 at 12:28:14PM +, Jonathan Cameron wrote:
> On Thu, 24 Jan 2019 16:07:17 -0700
> Keith Busch wrote:
>
> > + pr_info("HMAT: Locality: Flags:%02x Type:%s Initiator Domains:%d Target
> > Domains:%d Base:%lld\n",
> > + hmat_l
On Wed, Feb 06, 2019 at 04:26:35AM -0800, Jonathan Cameron wrote:
> On Thu, 24 Jan 2019 16:07:18 -0700
> Keith Busch wrote:
> > +What: /sys/devices/system/node/nodeX/accessY/initiators/
> > +Date: December 2018
> > +Contact: Keith
On Wed, Feb 06, 2019 at 10:45:52AM +, Jonathan Cameron wrote:
> On Thu, 24 Jan 2019 16:07:24 -0700
> Keith Busch wrote:
> > + # tree -P "read*|write*" /sys/devices/system/node/nodeY/access0/
> > + /sys/devices/system/node/nodeY/access0/
> > + |-- read_
On Wed, Feb 06, 2019 at 12:31:00PM +, Jonathan Cameron wrote:
> On Thu, 24 Jan 2019 16:07:14 -0700
> Keith Busch wrote:
>
> 1) It seems this version added a hard dependence on having the memory node
>listed in the Memory Proximity Domain attribute structures. I'm not
On Tue, Feb 05, 2019 at 04:17:09PM +0100, Rafael J. Wysocki wrote:
> wrote:
> >
> > When you use a "raw" kobject then userspace tools do not see the devices
> > and attributes in libraries like udev.
>
> And why would they need it in this particular case?
>
> > So unless userspace does not care
On Thu, Feb 07, 2019 at 01:53:36AM -0800, Jonathan Cameron wrote:
> As a general heads up, ACPI 6.3 is out and makes some changes.
> Discussions I've had in the past suggested there were few systems
> shipping with 6.2 HMAT and that many firmwares would start at 6.3.
> Of course, that might not be
; device_release_driver(>dev);
> nvme_put_ctrl(>ctrl);
Looks good to me.
Reviewed-by: Keith Busch
On Tue, Jun 26, 2018 at 03:51:40PM +0200, Johannes Thumshirn wrote:
> @@ -652,6 +653,7 @@ blk_status_t nvme_setup_cmd(struct nvme_ns *ns, struct
> request *req,
> }
>
> cmd->common.command_id = req->tag;
> + nvme_req(req)->ctrl = ctrl;
> if (ns)
>
On Tue, Jun 26, 2018 at 03:51:41PM +0200, Johannes Thumshirn wrote:
> @@ -655,9 +655,9 @@ blk_status_t nvme_setup_cmd(struct nvme_ctrl *ctrl,
> struct nvme_ns *ns,
> cmd->common.command_id = req->tag;
> nvme_req(req)->ctrl = ctrl;
> if (ns)
> -
On Wed, Jun 27, 2018 at 02:53:24PM +0200, Johannes Thumshirn wrote:
> TP_fast_assign(
> - __entry->qid = qid;
> + __assign_str(name, disk_name);
> + __entry->ctrl_id = nvme_req(req)->ctrl->cntlid;
> + __entry->qid =
On Wed, Jun 27, 2018 at 11:06:22AM +0300, Sagi Grimberg wrote:
>
> > > Not related to your patch, but I did notice that the req->q->id isn't
> > > really useful here since that's not the hardware context identifier.
> > > That's just some ida assigned software identifier. For the admin command
>
Thinking more on this, not using the hw qid really limits the utility
out of using these trace events: We may not be able to match a completion
to the submission without it since cmdid alone isn't enough to match up
the two events.
Here's an updated proposal and actually tested. I was also able
On Thu, Jun 28, 2018 at 05:34:07PM +0300, Sagi Grimberg wrote:
>
> > Thinking more on this, not using the hw qid really limits the utility
> > out of using these trace events: We may not be able to match a completion
> > to the submission without it since cmdid alone isn't enough to match up
> >
On Thu, Jun 28, 2018 at 09:48:24AM +0200, Johannes Thumshirn wrote:
> On Wed, Jun 27, 2018 at 10:37:06AM -0600, Keith Busch wrote:
> > It looks like you want the # assigned to /dev/nvme<#>. Do you want to
> > use ctrl->instance here instead?
>
> Right.
>
> As
This appends the controller instance to the trace buffer for nvme commands
to distinguish what controller is dispatching a command.
Signed-off-by: Keith Busch
---
drivers/nvme/host/trace.h | 17 +++--
1 file changed, 11 insertions(+), 6 deletions(-)
diff --git a/drivers/nvme/host
to duplicate this and creating
unnecessary code branches.
Signed-off-by: Keith Busch
---
drivers/nvme/host/core.c | 7 +++
drivers/nvme/host/trace.h | 41 ++---
2 files changed, 13 insertions(+), 35 deletions(-)
diff --git a/drivers/nvme/host/core.c b/drivers
From: Sagi Grimberg
We will need to reference the controller in the setup and completion
time for tracing and future traffic based keep alive support.
Signed-off-by: Sagi Grimberg
---
drivers/nvme/host/fc.c | 1 +
drivers/nvme/host/nvme.h | 1 +
drivers/nvme/host/pci.c| 2 ++
Signed-off-by: Keith Busch
---
block/blk-mq.c | 6 ++
include/linux/blk-mq.h | 1 +
2 files changed, 7 insertions(+)
diff --git a/block/blk-mq.c b/block/blk-mq.c
index b429d515b568..c6478833464d 100644
--- a/block/blk-mq.c
+++ b/block/blk-mq.c
@@ -466,6 +466,12 @@ struct request
r
Signed-off-by: Keith Busch
---
drivers/nvme/host/trace.c | 11 +++
drivers/nvme/host/trace.h | 27 ---
2 files changed, 31 insertions(+), 7 deletions(-)
diff --git a/drivers/nvme/host/trace.c b/drivers/nvme/host/trace.c
index 41944bbef835..796a5bcf67b8 100644
--- a
On Thu, Jun 28, 2018 at 02:12:38PM -0700, Bart Van Assche wrote:
> Regarding the above patch: have you considered to use the existing function
> blk_mq_unique_tag_to_hwq() instead of introducing this new function?
Interesting. I think the usage I need using that is something like:
API
Changelog typo fixups
Keith Busch (3):
nvme: trace nvme queue identifiers
nvme: trace controller name
nvme: add disk name to tracepoints
Sagi Grimberg (1):
nvme: cache struct nvme_ctrl reference to struct nvme_request
drivers/nvme/host/core.c | 7 +++---
drivers/nvme/host/fc.c |
r
Signed-off-by: Keith Busch
---
drivers/nvme/host/trace.c | 11 +++
drivers/nvme/host/trace.h | 27 ---
2 files changed, 31 insertions(+), 7 deletions(-)
diff --git a/drivers/nvme/host/trace.c b/drivers/nvme/host/trace.c
index 41944bbef835..796a5bcf67b8 100644
--- a
From: Sagi Grimberg
We will need to reference the controller in the setup and completion
time for tracing and future traffic based keep alive support.
Signed-off-by: Sagi Grimberg
---
drivers/nvme/host/fc.c | 1 +
drivers/nvme/host/nvme.h | 1 +
drivers/nvme/host/pci.c| 2 ++
to duplicate this and creating
unnecessary code branches.
Signed-off-by: Keith Busch
---
drivers/nvme/host/core.c | 7 +++
drivers/nvme/host/trace.h | 41 ++---
2 files changed, 13 insertions(+), 35 deletions(-)
diff --git a/drivers/nvme/host/core.c b/drivers
This appends the controller instance to the trace buffer for nvme commands
to distinguish what controller is dispatching and completing a command.
Signed-off-by: Keith Busch
---
drivers/nvme/host/trace.h | 17 +++--
1 file changed, 11 insertions(+), 6 deletions(-)
diff --git
Thanks, applied.
This looks fine.
Reviewed-by: Keith Busch
On Thu, May 24, 2018 at 05:51:34PM +0800, Jianchao Wang wrote:
> result = adapter_alloc_sq(dev, qid, nvmeq);
> - if (result < 0)
> + /*
> + * If return -EINTR, it means the allocate sq command times out and is
> completed
> + * with NVME_REQ_CANCELLED. At the time, the
On Tue, Jun 19, 2018 at 04:30:50PM +0800, Jianchao Wang wrote:
> There is race between nvme_remove and nvme_reset_work that can
> lead to io hang.
>
> nvme_removenvme_reset_work
> -> change state to DELETING
>-> fail to change state to LIVE
>
From: Sagi Grimberg
We will need to reference the controller in the setup and completion
time for tracing and future traffic based keep alive support.
Reviewed-by: Johannes Thumshirn
Signed-off-by: Sagi Grimberg
---
drivers/nvme/host/fc.c | 1 +
drivers/nvme/host/nvme.h | 1 +
ithout introducing a new API
Changelog typo fixups
Keith Busch (3):
nvme: use hw qid in trace events
nvme: add controller name to trace events
nvme: add disk name to trace events
Sagi Grimberg (1):
nvme: cache struct nvme_ctrl reference to struct nvme_request
drivers/nvme/host/core.c
901 - 1000 of 1501 matches
Mail list logo