___
Linux-nvdimm mailing list -- linux-nvdimm@lists.01.org
To unsubscribe send an email to linux-nvdimm-le...@lists.01.org
We only need the stats lock (aka preempt_disable()) for updating the
states, not for looking up or dropping the hd_struct reference.
Signed-off-by: Christoph Hellwig
Reviewed-by: Konstantin Khlebnikov
---
block/blk-core.c | 5 +++--
block/blk-merge.c | 3 ++-
2 files changed, 5 insertions(+),
From: Konstantin Khlebnikov
Most architectures have fast path to access percpu for current cpu.
The required preempt_disable() is provided by part_stat_lock().
Signed-off-by: Konstantin Khlebnikov
[hch: rebased]
Signed-off-by: Christoph Hellwig
---
include/linux/part_stat.h | 2 +-
1 file cha
Switch dm to use the nicer bio accounting helpers.
Signed-off-by: Christoph Hellwig
Reviewed-by: Konstantin Khlebnikov
---
drivers/nvdimm/blk.c | 6 --
drivers/nvdimm/btt.c | 6 --
drivers/nvdimm/nd.h | 19 ---
drivers/nvdimm/pmem.c | 6 --
4 files changed, 12
Hi Jens,
they series contains various improvement for block I/O accounting. The
first bunch of patches switch the bio based drivers to better accounting
helpers compared to the current mess. The end contains a fix and various
performanc improvements. Most of this comes from a series Konstantin
Switch rsxx to use the nicer bio accounting helpers.
Signed-off-by: Christoph Hellwig
Reviewed-by: Konstantin Khlebnikov
---
drivers/lightnvm/pblk-cache.c | 8 +++-
drivers/lightnvm/pblk-read.c | 11 ---
2 files changed, 7 insertions(+), 12 deletions(-)
diff --git a/drivers/light
Switch dm to use the nicer bio accounting helpers.
Signed-off-by: Christoph Hellwig
Reviewed-by: Konstantin Khlebnikov
---
drivers/md/dm.c | 9 ++---
1 file changed, 2 insertions(+), 7 deletions(-)
diff --git a/drivers/md/dm.c b/drivers/md/dm.c
index f215b86664484..3f39fa1ac756e 100644
---
Switch bcache to use the nicer bio accounting helpers, and call the
routines where we also sample the start time to give coherent accounting
results.
Signed-off-by: Christoph Hellwig
Reviewed-by: Konstantin Khlebnikov
Acked-by: Coly Li
---
drivers/md/bcache/request.c | 18 --
1
From: Konstantin Khlebnikov
Also rename blk_account_io_merge() into blk_account_io_merge_request() to
distinguish it from merging request and bio.
Signed-off-by: Konstantin Khlebnikov
[hch: rebased]
Signed-off-by: Christoph Hellwig
---
block/blk-merge.c | 12 +---
1 file changed, 5 in
From: Konstantin Khlebnikov
The RCU lock is required only in disk_map_sector_rcu() to lookup the
partition. After that request holds reference to related hd_struct.
Replace get_cpu() with preempt_disable() - returned cpu index is unused.
Signed-off-by: Konstantin Khlebnikov
[hch: rebased]
Sig
percpu variables have a perfectly fine working stub implementation
for UP kernels, so use that.
Signed-off-by: Christoph Hellwig
Reviewed-by: Konstantin Khlebnikov
---
block/blk.h | 2 +-
block/genhd.c | 12 +++--
block/partitions/core.c | 5 ++--
include/linux
Switch rsxx to use the nicer bio accounting helpers.
Signed-off-by: Christoph Hellwig
Reviewed-by: Konstantin Khlebnikov
---
drivers/block/rsxx/dev.c | 19 ++-
1 file changed, 2 insertions(+), 17 deletions(-)
diff --git a/drivers/block/rsxx/dev.c b/drivers/block/rsxx/dev.c
inde
From: Konstantin Khlebnikov
Move the non-"new_io" branch of blk_account_io_start() into separate
function. Fix merge accounting for discards (they were counted as write
merges).
The new blk_account_io_merge_bio() doesn't call update_io_ticks() unlike
blk_account_io_start(), as there is no reaso
Switch drbd to use the nicer bio accounting helpers.
Signed-off-by: Christoph Hellwig
Reviewed-by: Konstantin Khlebnikov
---
drivers/block/drbd/drbd_req.c | 27 ---
1 file changed, 4 insertions(+), 23 deletions(-)
diff --git a/drivers/block/drbd/drbd_req.c b/drivers/blo
Add two new helpers to simplify I/O accounting for bio based drivers.
Currently these drivers use the generic_start_io_acct and
generic_end_io_acct helpers which have very cumbersome calling
conventions, don't actually return the time they started accounting,
and try to deal with accounting for par
Switch zram to use the nicer bio accounting helpers, and as part of that
ensure each bio is counted as a single I/O request.
Signed-off-by: Christoph Hellwig
Reviewed-by: Konstantin Khlebnikov
---
drivers/block/zram/zram_drv.c | 24 ++--
1 file changed, 10 insertions(+), 14
Remove these now unused functions.
Signed-off-by: Christoph Hellwig
Reviewed-by: Konstantin Khlebnikov
---
block/bio.c | 39 ---
include/linux/bio.h | 6 --
2 files changed, 45 deletions(-)
diff --git a/block/bio.c b/block/bio.c
index 9c101a0572
All callers are in blk-core.c, so move update_io_ticks over.
Signed-off-by: Christoph Hellwig
Reviewed-by: Konstantin Khlebnikov
---
block/bio.c | 16
block/blk-core.c | 15 +++
block/blk.h | 1 -
3 files changed, 15 insertions(+), 17 deletions(-)
diff -
On Mon, May 25, 2020 at 03:28:07PM +0300, Konstantin Khlebnikov wrote:
> I think it would be better to leave this jiffies legacy nonsense in
> callers and pass here request duration in nanoseconds.
jiffies is what the existing interfaces uses. But now that they come
from the start helper fixing t
Pull the kernel definition of PAPR_SCM DSM command which is located in
the proposed kernel tree patches at Ref[1] & [2].
Also add instance of 'struct nd_pdsm_cmd_pkg' to 'struct ndctl_cmd'
named as 'papr'.
References:
[1] "powerpc/papr_scm: Add support for reporting nvdimm health"
https://lore.ke
Add necessary scaffolding in libndctl for dimms that support papr_scm
specification[1]. Since there can be platforms that support
Open-Firmware[2] but not the papr_scm specification, hence the changes
proposed first add support for probing if the dimm bus supports
Open-Firmware. This is done via qu
This patch implement necessary infrastructure inside 'papr_scm.c' to
issue and handle PDSM requests. Changes implemented are:
* Implement dimm initialization/un-initialization functions
papr_dimm_init()/unint() to allocate a per-dimm 'struct dimm_priv'
instance.
* New helper function allocate
There are scenarios when a dimm-provider need to allocate some
per-dimm data that can be quickly retrieved. This data can be used to
cache data that spans multiple 'struct ndctl_cmd' submissions.
Unfortunately currently in libnvdimm there is no easy way to implement
this. Even if this data is some
Presently add_dimm() only probes dimms that support NFIT/ACPI. Hence
this patch refactors this functionality into two functions namely
add_dimm() and add_nfit_dimm(). Function add_dimm() performs
allocation and common 'struct ndctl_dimm' initialization and depending
on whether the dimm-bus supports
Changes since v3 [1]:
* Updated 'papr_scm_psdm.h' to recent kernel version that removes
'payload_offset' field from 'struct nd_pdsm_cmd_pkg'.
* Changes to 'papr_scm.c' to remove code that was populating
'payload_offset'.
[1]
https://lore.kernel.org/linux-nvdimm/20200519190147.258142-1-vaib...
Add support for reporting DIMM health and shutdown state by issuing
PAPR_SCM_PDSM_HEALTH request to papr_scm module. It returns an
instance of 'struct nd_papr_pdsm_health' as defined in
'papr_scm_pdsm.h'. The patch provides support for dimm-ops
'new_smart', 'smart_get_health' & 'smart_get_shutdown_
'seq_buf' provides a very useful abstraction for writing to a string
buffer without needing to worry about it over-flowing. However even
though the API has been stable for couple of years now its still not
exported to kernel loadable modules limiting its usage.
Hence this patch proposes update to
This patch implements support for PDSM request 'PAPR_SCM_PDSM_HEALTH'
that returns a newly introduced 'struct nd_papr_pdsm_health' instance
containing dimm health information back to user space in response to
ND_CMD_CALL. This functionality is implemented in newly introduced
papr_scm_get_health() t
Add documentation to 'papr_hcalls.rst' describing the bitmap flags
that are returned from H_SCM_HEALTH hcall as per the PAPR-SCM
specification.
Cc: "Aneesh Kumar K . V"
Cc: Dan Williams
Cc: Michael Ellerman
Cc: Ira Weiny
Signed-off-by: Vaibhav Jain
---
Changelog:
v7..v8:
* Added a clarificati
Introduce support for PAPR NVDIMM Specific Methods (PDSM) in papr_scm
module and add the command family to the white list of NVDIMM command
sets. Also advertise support for ND_CMD_CALL for the nvdimm
command mask and implement necessary scaffolding in the module to
handle ND_CMD_CALL ioctl and PDSM
Implement support for fetching nvdimm health information via
H_SCM_HEALTH hcall as documented in Ref[1]. The hcall returns a pair
of 64-bit bitmap, bitwise-and of which is then stored in
'struct papr_scm_priv' and subsequently partially exposed to
user-space via newly introduced dimm specific attri
Changes since v7 [1]:
* Addressed various review comments from Aneesh, Ira and Mpe.
* Removed the 'payload_offset' field from 'struct nd_pdsm_cmd_pkg' and
replaced it with some reserved fields [ Aneesh ].
* Updated the doc and description for patch that fetches dimm health
information from PHY
Cc: linux-...@vger.kernel.org
---
Documentation/maintainer/maintainer-entry-profile.rst | 12 +-
1 file changed, 6 insertions(+), 6 deletions(-)
---
linux-next-20200526.orig/Documentation/maintainer/maintainer-entry-profile.rst
+++ linux-next-20200526/Documentation/maintainer/maintainer-entry-p
___
Linux-nvdimm mailing list -- linux-nvdimm@lists.01.org
To unsubscribe send an email to linux-nvdimm-le...@lists.01.org
___
Linux-nvdimm mailing list -- linux-nvdimm@lists.01.org
To unsubscribe send an email to linux-nvdimm-le...@lists.01.org
On Tue, May 26, 2020 at 1:49 PM Jeff Moyer wrote:
>
> Dan Williams writes:
>
> >> What problems with 5.4.y and 5.6.y is this series fixing
> >> that used to work before?
> >
> > The "used to work" bug fixed by this set is the fact that the kernel
> > used to force a 128MB (memory hotplug section
Dan Williams writes:
>> What problems with 5.4.y and 5.6.y is this series fixing
>> that used to work before?
>
> The "used to work" bug fixed by this set is the fact that the kernel
> used to force a 128MB (memory hotplug section size) alignment padding
> on all persistent memory namespaces to e
On Fri, May 22, 2020 at 5:00 AM Greg KH wrote:
>
> On Fri, May 22, 2020 at 01:58:00PM +0200, Greg KH wrote:
> > On Thu, May 21, 2020 at 04:37:43PM -0700, Dan Williams wrote:
> > > Hello stable team,
> > >
> > > These patches have been shipping in mainline since v5.7-rc1 with no
> > > reported issu
Vaibhav Jain writes:
> Hi Ira, Mpe and Aneesh,
>
> Vaibhav Jain writes:
>
>> Michael Ellerman writes:
>>
>>> Ira Weiny writes:
On Wed, May 20, 2020 at 12:30:57AM +0530, Vaibhav Jain wrote:
> Introduce support for Papr nvDimm Specific Methods (PDSM) in papr_scm
> modules and add the
39 matches
Mail list logo