nks,
Ira
>
> -----Original Message-
> From: Ira Weiny
> To: Ira Weiny
> Cc: "Husam Kahalah" , linux-r...@vger.kernel.org,
> linux-kernel@vger.kernel.org
> Date: Thu, 21 Feb 2013 10:33:44 -0800
> Subject: Re: [PATCH] infiniband-diags/saquery.c: switchinfo su
D_SET_VAL(lid, 16, 0, swir.lid, SWIR, LID);
> +
> + return get_and_dump_any_records(h, IB_SA_ATTR_SWITCHINFORECORD, 0,
> comp_mask,
> + &swir, sizeof(swir), dump_switch_info_record);
> +}
> +
> static int query_inform_info_records(const struct query_cmd *q,
> struct sa_handle * h,
)
>{"x", 'x', 0, NULL, "get LinkRecord info"},
>{"c", 'c', 0, NULL, "get the SA's class port info"},
>{"S", 'S', 0, NULL, "get ServiceRecord info"},
> + {"W", 'W',
On Thu, 21 Feb 2013 10:09:00 -0800
Ira Weiny wrote:
[snip]
> > + ib_net16_t swir_lid;
>
> We don't need this field or lid option. Other records simply have an
> optional parameter to specify the lid.
>
> The usage should be:
>
> SwitchRecord [lid]
>
Rafael J. Wysocki wrote:
> On Wed, Oct 18, 2023 at 6:28 AM Dan Williams wrote:
> >
> > Michal Wilczynski wrote:
> > > The new cleanup.h facilities that arrived in v6.5-rc1 can replace the
> > > the usage of devm semantics in acpi_nfit_init_interleave_set(). That
> > > routine appears to only be us
on in
> 'btt_init'
>
> Signed-off-by: Randy Dunlap
> Cc: Vishal Verma
> Cc: Dan Williams
> Cc: Dave Jiang
> Cc: Ira Weiny
Reviewed-by: Ira Weiny
> Cc: nvd...@lists.linux.dev
> ---
> drivers/nvdimm/btt.c |2 +-
> 1 file changed, 1 insert
dimm' description in
> 'nvdimm_allocated_dpa'
> dimm_devs.c:844: warning: No description found for return value of
> 'nvdimm_allocated_dpa'
>
> Signed-off-by: Randy Dunlap
> Cc: Dan Williams
> Cc: Vishal Verma
> Cc: Dave Jiang
> Cc: Ira Weiny
>
t; + * @nd_mapping: container of dpa-resource-root + labels
> * @nd_label: target pmem namespace label to evaluate
> + *
> + * Returns: the created &struct device on success or -errno on error
NIT: should this be ERR_PTR(-errno) on error?
Generally good to me though.
Reviewed-by: Ira
Ira Weiny wrote:
> Randy Dunlap wrote:
[snip]
> > diff -- a/drivers/nvdimm/dimm_devs.c b/drivers/nvdimm/dimm_devs.c
> > --- a/drivers/nvdimm/dimm_devs.c
> > +++ b/drivers/nvdimm/dimm_devs.c
> > @@ -53,7 +53,10 @@ static int validate_dimm(struct nvdimm_d
> >
&g
Randy Dunlap wrote:
>
>
> On 12/21/23 14:32, Ira Weiny wrote:
> > Randy Dunlap wrote:
> >
> > [snip]
> >
> >> @@ -1656,8 +1664,10 @@ static int select_pmem_id(struct nd_regi
> >> /**
> >> * create_namespace_pmem - validate interle
Hi Linus, please pull from:
git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm.git
tags/libnvdimm-for-6.8
... to get updates to the nvdimm tree. They are a mix of bug fixes and updates
to interfaces used by nvdimm.
Updates to interfaces include:
Use the new scope based manag
Jonathan Cameron wrote:
> On Tue, 06 Feb 2024 14:15:32 -0800
> Ira Weiny wrote:
>
> > Smatch caught that cxl_cper_post_event() is called with a spinlock held
> > or preemption disabled.[1] The callback takes the device lock to
> > perform address translation and
Ira Weiny wrote:
> Jonathan Cameron wrote:
> > On Tue, 06 Feb 2024 14:15:32 -0800
> > Ira Weiny wrote:
> >
> >
[snip]
> >
> > diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
> > index 9ff8a439d674..7ee45f22f56f 100644
> > --- a/
Jonathan Cameron wrote:
> On Wed, 14 Feb 2024 10:23:10 -0500
> Steven Rostedt wrote:
>
> > On Wed, 14 Feb 2024 12:11:53 +
> > Jonathan Cameron wrote:
> >
> > > So I'm thinking this is a won't fix - wait for the printk rework to land
> > > and
> > > assume this will be resolved as well?
>
Jonathan Cameron wrote:
> On Wed, 14 Feb 2024 10:23:10 -0500
> Steven Rostedt wrote:
>
> > On Wed, 14 Feb 2024 12:11:53 +
> > Jonathan Cameron wrote:
> >
> > > So I'm thinking this is a won't fix - wait for the printk rework to land
> > > and
> > > assume this will be resolved as well?
>
Ira Weiny wrote:
> Jonathan Cameron wrote:
> > On Wed, 14 Feb 2024 10:23:10 -0500
> > Steven Rostedt wrote:
> >
> > > On Wed, 14 Feb 2024 12:11:53 +
> > > Jonathan Cameron wrote:
> > >
> > > > So I'm thinking this
Jonathan Cameron wrote:
> On Wed, 14 Feb 2024 17:33:18 -0500
> Steven Rostedt wrote:
>
> > On Wed, 14 Feb 2024 14:19:19 -0800
> > Ira Weiny wrote:
> >
> > > > > Jonathan Cameron wrote:
> > > > >
> > > > &g
the current kernel interfaces such as
using const for struct device_type and changing the platform remove
callback signature.
Thank you,
Ira Weiny
---
The following changes since commit ed30a4a51bb196781c8058073ea720133a65596f:
Linux 6.9-rc5 (2024-04-21 12:35:54 -0700)
are available in the Git
> Cc: Dan Williams
> Cc: Vishal Verma
> Cc: Dave Jiang
> Cc: Ira Weiny
Tested-by: Ira Weiny
Reviewed-by: Ira Weiny
> Signed-off-by: Greg Kroah-Hartman
> ---
> tools/testing/nvdimm/test/ndtest.c | 17 +
> tools/testing/nvdimm/test/nfit.c | 14 ++
Hi Linus, please pull from:
git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm.git
tags/libnvdimm-for-6.7
... to get updates to the nvdimm tree. They are a mix of bug fixes and updates
to interfaces used by nvdimm.
Bug fixes include:
Fix a sleep during spinlock in PREEMPT_RT
Dave Jiang wrote:
>
[snip]
First off thanks for the patch. This code seems to have a few things to
clean up.
>
> On 12/6/23 20:43, Dinghao Liu wrote:
> > When an error happens in btt_freelist_init(), its caller
> > discover_arenas() will directly free arena, which makes
> > arena->freelist al
dinghao.liu@ wrote:
> > Dave Jiang wrote:
[snip]
> > That said, this patch does not completely fix freelist from leaking in the
> > following error path.
> >
> > discover_arenas()
> > btt_freelist_init() -> ok (memory allocated)
> > btt_rtt_init() -> fail
> >
these, so change these
> where applicable.
>
> Cc: Joao Martins
> Suggested-by: Dan Williams
> Signed-off-by: Vishal Verma
>
Reviewed-by: Ira Weiny
prevent new ones from appearing.
>
> Link:
> http://lore.kernel.org/r/657897453dda8_269bd29...@dwillia2-mobl3.amr.corp.intel.com.notmuch
> Link:
> http://lore.kernel.org/r/6577b0c2a02df_a04c529...@dwillia2-xfh.jf.intel.com.notmuch
> Cc: Vishal Verma
> Cc: Ira Weiny
Reviewed-b
Dinghao Liu wrote:
> Resources allocated by kcalloc() in btt_freelist_init(),
> btt_rtt_init(), and btt_maplocks_init() are not correctly
> released in their callers when an error happens. For
> example, when an error happens in btt_freelist_init(), its
> caller discover_arenas() will directly free
Ira Weiny wrote:
> Dinghao Liu wrote:
[snip]
> >
> > -static int btt_maplocks_init(struct arena_info *arena)
> > +static int btt_maplocks_init(struct device *dev, struct arena_info *arena)
> > {
> > u32 i;
> >
> > - arena->map_locks =
dinghao.liu@ wrote:
> > Ira Weiny wrote:
> > > Dinghao Liu wrote:
> >
> > [snip]
> >
> > -static int btt_freelist_init(struct arena_info *arena)
> > +static int btt_freelist_init(struct device *dev, struct arena_info *arena)
> >
> > Bo
Li Zhijian wrote:
> Don't allocate devs again when it's valid pointer which has pionted to
> the memory allocated above with size (count + 2 * sizeof(dev)).
>
> A kmemleak reports:
> unreferenced object 0x88800dda1980 (size 16):
> comm "kworker/u10:5", pid 69, jiffies 4294671781
> hex dump
Jeff Johnson wrote:
> Fix the 'make W=1' warnings:
> WARNING: modpost: missing MODULE_DESCRIPTION() in drivers/nvdimm/libnvdimm.o
> WARNING: modpost: missing MODULE_DESCRIPTION() in drivers/nvdimm/nd_pmem.o
> WARNING: modpost: missing MODULE_DESCRIPTION() in drivers/nvdimm/nd_btt.o
> WARNING: modpo
drivers.
Suggested-by: Jeff Johnson
Signed-off-by: Ira Weiny
---
Jeff I'm not seeing a patch to cover these cases for the missing module
descriptions you have been sending out. If you have an outstanding
patch I missed could you point me to it? Otherwise I believe this
cleans up the nvdimm
r than dynamically create it."
>
> That works too, want me to resubmit with this, or can I update it when I
> commit it to my tree?
In that case.
Reviewed-by: Ira Weiny
>
> thanks,
>
> greg "the changelog is the hardest part" k-h
)
A series of patches to add MODULE_DESCRIPTIONS() to eliminate make W=1
warnings.
Erick Archer (1):
nvdimm/btt: use sizeof(*pointer) instead of sizeof(type)
Ira Weiny (1):
testing: nvdimm: Add MODULE_DESCRIPTION() macros
t; [<391c5a7d>] __device_attach+0xbe/0x1e0
> [<26dabec0>] bus_probe_device+0x94/0xb0
> [<c590d936>] device_add+0x656/0x870
> [<3d69bfaa>] nd_async_device_register+0xe/0x50 [libnvdimm]
> [<3f4c52a4>]
Hi Linux, please pull from
https://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm.git/
tags/libnvdimm-fixes-6.11-rc4
To get a fix for filesystem DAX.
It has been in -next since August 12th without any reported issues.
Thanks,
Ira Weiny
---
The following changes since commit
Ira Weiny wrote:
> Hi Linux, please pull from
^
Linus.
Apologies,
Ira
>
> https://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm.git/
> tags/libnvdimm-fixes-6.11-rc4
>
> To get a fix for filesystem DAX.
>
> It has been in -next since August 1
Philip Chen wrote:
> If a pmem device is in a bad status, the driver side could wait for
> host ack forever in virtio_pmem_flush(), causing the system to hang.
I assume this was supposed to be v2 and you resent this as a proper v2
with a change list from v1?
Ira
>
> Signed-off-by: Philip Chen
Philip Chen wrote:
> On Mon, Aug 19, 2024 at 2:56 PM Ira Weiny wrote:
> >
> > Philip Chen wrote:
> > > If a pmem device is in a bad status, the driver side could wait for
> > > host ack forever in virtio_pmem_flush(), causing the system to hang.
> >
> >
sync_device_register+0xe/0x50 [libnvdimm]
> [<00003f4c52a4>] async_run_entry_fn+0x2e/0x110
> [<e201f4b0>] process_one_work+0x1ee/0x600
> [<6d90d5a9>] worker_thread+0x183/0x350
>
> Cc: Dave Jiang
> Cc: Ira Weiny
> Fixes: 1b40e09a12
mespace_pmem() is the only user of
> select_pmem_id(), it's safe to remove the 'return -ENODEV' branch.
>
> Signed-off-by: Li Zhijian
Reviewed-by: Ira Weiny
> ---
> V2:
> new patch.
> It's found when I'm Reviewing/tracing the return values of
Philip Chen wrote:
> Hi,
>
> On Tue, Aug 20, 2024 at 1:01 PM Dave Jiang wrote:
> >
> >
> >
> > On 8/20/24 10:22 AM, Philip Chen wrote:
> > > If a pmem device is in a bad status, the driver side could wait for
> > > host ack forever in virtio_pmem_flush(), causing the system to hang.
> > >
> > > S
Rob Herring wrote:
> On Wed, Jul 31, 2024 at 2:14 PM Rob Herring (Arm) wrote:
> >
> > Use of_property_present() and of_property_read_bool() to test
> > property presence and read boolean properties rather than
> > of_(find|get)_property(). This is part of a larger effort to remove
> > callers of o
Philip Chen wrote:
> Hi maintainers,
>
> Can anyone let me know if this patch makes sense?
> Any comment/feedback is appreciated.
> Thanks in advance!
I'm not an expert on virtio but the code looks ok on the surface. I've
discussed this with Dan a bit and virtio-pmem is not heavily tested.
Base
On Sat, Nov 06, 2021 at 06:27:11PM +0100, Christophe JAILLET wrote:
> If 'devm_init_badblocks()' fails, a previous 'blk_alloc_disk()' call must
> be undone.
I think this is a problem...
>
> Signed-off-by: Christophe JAILLET
> ---
> This patch is speculative. Several fixes on error handling path
On Sun, Nov 07, 2021 at 06:20:14PM +0100, Christophe JAILLET wrote:
> Le 07/11/2021 à 18:11, Ira Weiny a écrit :
> > On Sat, Nov 06, 2021 at 06:27:11PM +0100, Christophe JAILLET wrote:
> > > If 'devm_init_badblocks()' fails, a previous 'blk_alloc_disk()' call
On Tue, Aug 03, 2021 at 09:32:21PM -0700, 'Ira Weiny' wrote:
> From: Ira Weiny
>
> The PKRS MSR is not managed by XSAVE. It is preserved through a context
> switch but this support leaves exception handling code open to memory
> accesses during exceptions.
>
> 2
Thomas,
Thanks for the review. Sorry for being so late to respond I was sick all last
week and so it took me longer to figure out some of this stuff.
On Thu, Nov 25, 2021 at 03:12:47PM +0100, Thomas Gleixner wrote:
> Ira,
>
> On Tue, Aug 03 2021 at 21:32, ira we
On Mon, Dec 06, 2021 at 05:54:23PM -0800, 'Ira Weiny' wrote:
[snip]
> >
> > Though, if you look at the xen_pv_evtchn_do_upcall() part where you
> > added this extra invocation you might figure out that adding
> > pkrs_restore_irq() to irqentry_exit_cond_re
On Thu, Nov 25, 2021 at 03:25:09PM +0100, Thomas Gleixner wrote:
> On Tue, Aug 03 2021 at 21:32, ira weiny wrote:
> > @@ -200,16 +200,14 @@ __setup("init_pkru=", setup_init_pkru);
> > */
> > u32 update_pkey_val(u32 pk_reg, int pkey, unsigned int flags)
>
584: warning: Function parameter or member
> 'nd_region' not described in 'btt_init'
> drivers/nvdimm/btt.c:1584: warning: Excess function parameter 'maxlane'
> description in 'btt_init'
>
> Reported-by: Abaci Robot
> Signed-off-by: Yang Li
Re
On Fri, Feb 11, 2022 at 11:11:11PM -0800, Tong Zhang wrote:
> A bug can be triggered by following command
>
> $ modprobe nd_pmem && modprobe -r nd_pmem
>
> [ 10.060014] BUG dax_cache (Not tainted): Objects remaining in dax_cache on
> __kmem_cache_shutdown()
> [ 10.060938] Slab 0x85b7
On Mon, Feb 14, 2022 at 12:09:54PM -0800, Dan Williams wrote:
> On Mon, Feb 14, 2022 at 9:59 AM Ira Weiny wrote:
> >
> > On Fri, Feb 11, 2022 at 11:11:11PM -0800, Tong Zhang wrote:
> > > A bug can be triggered by following command
> > >
> > >
From: Ira Weiny
The function run_dax() was missing a prototype when compiling with
warnings.
Add bus.h to fix this.
Signed-off-by: Ira Weiny
---
drivers/dax/super.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/dax/super.c b/drivers/dax/super.c
index e3029389d809..5c003cc73d04
From: Ira Weiny
struct dax_device has a member named ops which was undocumented.
Add the kdoc.
Signed-off-by: Ira Weiny
---
drivers/dax/super.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/dax/super.c b/drivers/dax/super.c
index 5c003cc73d04..2fd3a01ba34b 100644
--- a/drivers
On Wed, Mar 09, 2022 at 09:08:36PM -0800, Dan Williams wrote:
> On Fri, Mar 4, 2022 at 12:38 PM wrote:
> >
> > From: Ira Weiny
> >
> > The function run_dax() was missing a prototype when compiling with
> > warnings.
> >
> > Add bus.h to fix this
:
> https://lore.kernel.org/r/ylf0dewci8myl...@hirez.programming.kicks-ass.net [2]
> Suggested-by: Peter Zijlstra
> Cc: Ingo Molnar
> Cc: Will Deacon
> Cc: Waiman Long
> Cc: Boqun Feng
> Cc: Alison Schofield
> Cc: Vishal Verma
> Cc: Ira Weiny
> Cc: Ben Widawsky
anywhere in
the acpi code. So given that it looks to me like ACPI is just using the
default no validate class...
Reviewed-by: Ira Weiny
> However, the lockdep API does support changing the lock class "live" for
> situations like this. Add a device_lock_set_class() helper that a driv
On Thu, Apr 21, 2022 at 08:33:23AM -0700, Dan Williams wrote:
> Now that all CXL subsystem locking is validated with custom lock
> classes, there is no need for the custom usage of the lockdep_mutex.
>
> Cc: Alison Schofield
> Cc: Vishal Verma
> Cc: Ira Weiny
> Cc: Ben Wid
t;
> Link:
> https://lore.kernel.org/r/164982968798.684294.15817853329823976469.st...@dwillia2-desk3.amr.corp.intel.com
> [1]
> Link:
> https://lore.kernel.org/r/ylf0dewci8myl...@hirez.programming.kicks-ass.net [2]
> Suggested-by: Peter Zijlstra
> Cc: Vishal Verma
> Cc: Dave Jiang
> Cc
n be
> dropped.
>
> Cc: Vishal Verma
> Cc: Dave Jiang
> Cc: Ira Weiny
> Signed-off-by: Dan Williams
Reviewed-by: Ira Weiny
> ---
> drivers/acpi/nfit/core.c | 30 +++---
> drivers/acpi/nfit/nfit.h | 24
> 2 f
On Thu, Apr 21, 2022 at 08:33:39AM -0700, Dan Williams wrote:
> Now that all NVDIMM subsystem locking is validated with custom lock
> classes, there is no need for the custom usage of the lockdep_mutex.
>
> Cc: Vishal Verma
> Cc: Dave Jiang
> Cc: Ira Weiny
> Signed
Link:
> https://lore.kernel.org/r/ylf0dewci8myl...@hirez.programming.kicks-ass.net [1]
> Cc: Greg Kroah-Hartman
> Cc: "Rafael J. Wysocki"
> Suggested-by: Peter Zijlstra
> Signed-off-by: Dan Williams
Reviewed-by: Ira Weiny
> ---
> drivers/base/core.c|3 ---
>
On Thu, Apr 21, 2022 at 08:33:51AM -0700, Dan Williams wrote:
> Lockdep reports the following deadlock scenarios for CXL root device
> power-management, device_prepare(), operations, and device_shutdown()
> operations for 'nd_region' devices:
>
> ---
> Chain exists of:
>&nvdimm_region_key -->
On Sun, Apr 24, 2022 at 06:26:55AM +, cgel@gmail.com wrote:
> From: ran jianping
>
> All work currently pending will be done first by calling destroy_workqueue,
> so there is no need to flush it explicitly.
>
> Reported-by: Zeal Robot
> Signed-off-by: ran jianpi
mappings can be acquired from any
> context (including interrupts).
>
> Therefore, use kmap_local_page() in exec.c because these mappings are per
> thread, CPU local, and not globally visible.
>
> Tested with xfstests on a QEMU + KVM 32-bits VM booting a kernel with
> HIGHMEM64GB e
mappings can be
> acquired from any context (including interrupts).
>
> Therefore, use kmap_local_page() in copy_string_kernel() instead of
> kmap_atomic().
>
> Tested with xfstests on a QEMU + KVM 32-bits VM booting a kernel with
> HIGHMEM64GB enabled.
>
> Suggested-by:
On Fri, Aug 05, 2022 at 01:33:19AM -0400, Bo Liu wrote:
> It's possible that dev_set_name() returns -ENOMEM, catch and handle this.
Did this cause a bug or some other problem when the name was not set?
I think it is an ok change but without digging into the code I'm not clear why
you did this.
I
On Fri, Aug 19, 2022 at 10:10:24AM -0700, Davidlohr Bueso wrote:
> With CXL security features, global CPU cache flushing nvdimm requirements
> are no longer specific to that subsystem, even beyond the scope of
> security_ops. CXL will need such semantics for features not necessarily
> limited to pe
On Sun, Sep 25, 2022 at 09:26:35PM -0400, Bo Liu wrote:
> Use ida_alloc_xxx()/ida_free() instead of
> ida_simple_get()/ida_simple_remove().
> The latter is deprecated and more verbose.
>
> Signed-off-by: Bo Liu
Reviewed-by: Ira Weiny
> ---
> drivers/dax/super.c | 6 +++
On Sat, Dec 03, 2022 at 09:58:58AM +, Yongqiang Liu wrote:
> We should always call dax_region_put() whenever devm_create_dev_dax()
> succeed or fail to avoid refcount leak of dax_region. Move the return
> value check after dax_region_put().
I think dax_region_put is called from dax_region_unre
s/nvdimm/dimm_devs.c:844: warning: Excess function parameter 'nvdimm'
> description in 'nvdimm_allocated_dpa
>
> Reported-by: Abaci Robot
Link: https://bugzilla.openanolis.cn/show_bug.cgi?id=4118
Reviewed-by: Ira Weiny
> Signed-off-by: Yang Li
> ---
>
Paul Cassella wrote:
> On Sat, 3 Dec 2022, Ira Weiny wrote:
> > On Sat, Dec 03, 2022 at 09:58:58AM +, Yongqiang Liu wrote:
>
> > > We should always call dax_region_put() whenever devm_create_dev_dax()
> > > succeed or fail to avoid refcount leak of dax_regio
Paul Cassella wrote:
> On Fri, 2 Jun 2023, Ira Weiny wrote:
> > Paul Cassella wrote:
> > > On Sat, 3 Dec 2022, Ira Weiny wrote:
> > > > On Sat, Dec 03, 2022 at 09:58:58AM +, Yongqiang Liu wrote:
>
> > > > > We should always ca
el.org/all/20221203095858.612027-1-liuyongqian...@huawei.com/
Signed-off-by: Ira Weiny
---
Ira Weiny (3):
dax/bus: Fix leaked reference in alloc_dax_region()
dax/cxl: Fix refcount leak in cxl_dax_region_probe()
dax/bus: Remove unnecessary reference in alloc_dax_region()
Yongqiang Liu (1):
evice to
hmem_register_device")
Reviewed-by: Ira Weiny
Signed-off-by: Yongqiang Liu
---
drivers/dax/hmem/hmem.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/drivers/dax/hmem/hmem.c b/drivers/dax/hmem/hmem.c
index e5fe8b39fb94..b4831a3d3934 100644
--- a/drivers/dax/h
d 'align' attributes")
Cc: Dan Williams
Signed-off-by: Ira Weiny
---
drivers/dax/bus.c | 7 ++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/drivers/dax/bus.c b/drivers/dax/bus.c
index 227800053309..899e29d107b4 100644
--- a/drivers/dax/bus.c
+++ b/drivers/d
: 09d09e04d2fc ("cxl/dax: Create dax devices for CXL RAM regions")
Cc: Dan Williams
Cc: linux-...@vger.kernel.org
Signed-off-by: Ira Weiny
---
This work was inspired by Yongqiang Liu here:
https://lore.kernel.org/all/20221203095858.612027-1-liuyongqian...@huawei.com/
---
drivers/dax/cxl.c |
later.
Cc: Yongqiang Liu
Cc: Dan Williams
Cc: Paul Cassella
Signed-off-by: Ira Weiny
---
drivers/dax/bus.c | 13 ++---
drivers/dax/cxl.c | 4
drivers/dax/hmem/hmem.c | 3 ---
drivers/dax/pmem.c | 8 +---
4 files changed, 7 insertions(+), 21 deletions(-)
diff
Ben Dooks wrote:
> The nd_class is not used outside of drivers/nvdimm/bus.c and thus sparse
> is generating the following warning. Remove this by making it static:
>
> drivers/nvdimm/bus.c:28:14: warning: symbol 'nd_class' was not declared.
> Should it be static?
Ben Dooks wrote:
> The run_dax() prototype is defined in "bus.h" but drivers/dax/super.c
> does not include this. Include bus.h to silece the following sparse
> warning:
>
> drivers/dax/super.c:337:6: warning: symbol 'run_dax' was not declared. Should
> it be static?
A different version of this
Jiasheng Jiang wrote:
> Add check for the return value of kstrdup() and return the error
> if it fails in order to avoid NULL pointer dereference.
> Moreover, use kfree() in the later error handling in order to avoid
> memory leak.
>
> Fixes: 49bddc73d15c ("libnvdimm/of_pmem: Provide a unique name
Ira Weiny wrote:
> Jiasheng Jiang wrote:
> > Add check for the return value of kstrdup() and return the error
> > if it fails in order to avoid NULL pointer dereference.
> > Moreover, use kfree() in the later error handling in order to avoid
> > memory leak.
&
Jiasheng Jiang wrote:
> Replace kstrdup() with devm_kstrdup() to avoid memory leak and
> add check for the return value of the devm_kstrdup() to avoid
> NULL pointer dereference
>
> Fixes: 49bddc73d15c ("libnvdimm/of_pmem: Provide a unique name for bus
> provider")
> Signed-off-by: Jiasheng Jiang
Jiasheng Jiang wrote:
> On Wed, Jun 21, 2023 at 00:04:36 +0800, Ira Weiny wrote:
> > Ira Weiny wrote:
> >> Jiasheng Jiang wrote:
[snip]
> >>
> >> Nice catch!
> >>
> >> However, this free needs to happen in of_pmem_region_remove() as well.
;)
> Signed-off-by: Jiasheng Jiang
LTGM
Reviewed-by: Ira Weiny
> ---
> Changelog:
>
> v2 -> v3:
>
> 1. Correct the usage of devm_kstrdup().
>
> v1 -> v2:
>
> 1. Replace kstrdup() with devm_kstrdup().
> ---
> drivers/nvdimm/of_pmem.c | 7 ++-
&g
Chen Ni wrote:
> Check the return value of kstrdup() and add kfree() for kstrdup() to
> avoid memory leak.
>
> Fixes: 49bddc73d15c ("libnvdimm/of_pmem: Provide a unique name for bus
> provider")
> Signed-off-by: Chen Ni
> ---
> Changelog:
>
> v1 -> v2:
>
> 1.Add a fixes tag.
> 2.Update commit
Dave Jiang wrote:
>
>
> On 9/14/23 00:03, Chen Ni wrote:
[snip]
> > diff --git a/drivers/nvdimm/of_pmem.c b/drivers/nvdimm/of_pmem.c
> > index 1b9f5b8a6167..5765674b36f2 100644
> > --- a/drivers/nvdimm/of_pmem.c
> > +++ b/drivers/nvdimm/of_pmem.c
> > @@ -30,7 +30,13 @@ static int of_pmem_region
Tomáš Glozar wrote:
> From: Tomas Glozar
>
> nd_region_acquire_lane uses get_cpu, which disables preemption. This is
> an issue on PREEMPT_RT kernels, since btt_write_pg and also
> nd_region_acquire_lane itself take a spin lock, resulting in BUG:
> sleeping function called from invalid context.
/lkml/2652195.BddDVKsqQX@kreacher/
>
> Fixes: 2a5ab99847bd ("ACPICA: struct acpi_nfit_interleave: Replace 1-element
> array with flexible array")
> Cc: sta...@vger.kernel.org # v6.4+
> Signed-off-by: Yu Liao
> Reviewed-by: Dave Jiang
Reviewed-by: Ira Weiny
> ---
Yu Liao wrote:
> Make use of the struct_size() helper instead of an open-coded version,
> in order to avoid any potential type mistakes or integer overflows that,
> in the worst scenario, could lead to heap overflows.
>
> Signed-off-by: Yu Liao
> Reviewed-by: Dave Jiang
Revi
Chen Ni wrote:
> Use devm_kstrdup() instead of kstrdup() and check its return value to
> avoid memory leak.
>
> Fixes: 49bddc73d15c ("libnvdimm/of_pmem: Provide a unique name for bus
> provider")
> Signed-off-by: Chen Ni
Reviewed-by: Ira Weiny
> ---
> Cha
Tomas Glozar wrote:
> čt 14. 9. 2023 v 22:18 odesílatel Ira Weiny napsal:
> > Is the bug in 1 of 2 places?
> >
> > 1) When btt_write_pg()->lock_map() (when the number of lanes is < number
> >of cpus) and the lane is acquired is called?
> >
> >
> Fixes: 5212e11fde4d ("nd_btt: atomic sector updates")
> Signed-off-by: Tomas Glozar
Thanks for the clarification.
Reviewed-by: Ira Weiny
From: Ira Weiny
Use a simple coccinelle script to help convert the most common
kmap()/kunmap() patterns to kmap_local_page()/kunmap_local().
Note that some kmaps which were caught by this script needed to be
handled by hand because of the strict unmapping order of kunmap_local()
so they are not
From: Ira Weiny
These kmaps are thread local and don't need to be atomic. So they can use
the more efficient kmap_local_page(). However, the mapping of pages in
the stripes and the additional parity and qstripe pages are a bit
trickier because the unmapping must occur in the opposite
From: Ira Weiny
I am submitting these for 5.13.
Further work to remove more kmap() calls in favor of the kmap_local_page() this
series converts those calls which required more than a common pattern which
were covered in my previous series[1]. This is the second of what I hope to be
3 series to
From: Ira Weiny
btrfsic_read_block() (which calls kmap()) and
btrfsic_release_block_ctx() (which calls kunmap()) are always called
within a single thread of execution.
Therefore the mappings created within these calls can be a thread local
mapping.
Convert the kmap() of bloc_ctx->pagev
From: Ira Weiny
Again there is an array of pointers which must be unmapped in the correct
order.
Convert the kmap()'s to kmap_local_page() and adjust the unmapping
to work backwards through the unmapping loop.
Signed-off-by: Ira Weiny
---
fs/btrfs/check-integrity.c | 8
1
...so, remove that entire phrase.
>
> 4. Minor: As long as I'm here, shorten up a couple of long lines
> in the same function, without harming the ability to
> grep for the printed error message.
>
> Cc: Ira Weiny
> Cc: Jason Gunthorpe
> Cc: Andrew Morton
> Cc
On Tue, Mar 12, 2019 at 05:23:21AM +, Christopher Lameter wrote:
> On Mon, 11 Mar 2019, Dave Chinner wrote:
>
> > > Direct IO on a mmapped file backed page doesnt make any sense.
> >
> > People have used it for many, many years as zero-copy data movement
> > pattern. i.e. mmap the destination
On Wed, Mar 13, 2019 at 09:11:13AM +1100, Dave Chinner wrote:
> On Tue, Mar 12, 2019 at 03:39:33AM -0700, Ira Weiny wrote:
> > IMHO I don't think that the copy_file_range() is going to carry us through
> > the
> > next wave of user performance requirements. RDMA, while
1 - 100 of 977 matches
Mail list logo