[PATCH] nvmem: Convert to using %pOFn instead of device_node.name
From: Rob Herring In preparation to remove the node name pointer from struct device_node, convert printf users to use the %pOFn format specifier. Cc: Srinivas Kandagatla Signed-off-by: Rob Herring [srinivas: rebased on top of next] Signed-off-by: Srinivas Kandagatla --- drivers/nvmem/core.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/nvmem/core.c b/drivers/nvmem/core.c index cc815bb2eebd..b4c09bc20b67 100644 --- a/drivers/nvmem/core.c +++ b/drivers/nvmem/core.c @@ -298,6 +298,7 @@ static void nvmem_cell_drop(struct nvmem_cell *cell) mutex_lock(_mutex); list_del(>node); mutex_unlock(_mutex); + kfree(cell->name); kfree(cell); } @@ -547,7 +548,7 @@ static int nvmem_add_cells_from_of(struct nvmem_device *nvmem) cell->nvmem = nvmem; cell->offset = be32_to_cpup(addr++); cell->bytes = be32_to_cpup(addr); - cell->name = child->name; + cell->name = kasprintf(GFP_KERNEL, "%pOFn", child); addr = of_get_property(child, "bits", ); if (addr && len == (2 * sizeof(u32))) { @@ -564,6 +565,7 @@ static int nvmem_add_cells_from_of(struct nvmem_device *nvmem) dev_err(dev, "cell %s unaligned to nvmem stride %d\n", cell->name, nvmem->stride); /* Cells already added will be freed later. */ + kfree(cell->name); kfree(cell); return -EINVAL; } -- 2.19.0
[PATCH] nvmem: Convert to using %pOFn instead of device_node.name
From: Rob Herring In preparation to remove the node name pointer from struct device_node, convert printf users to use the %pOFn format specifier. Cc: Srinivas Kandagatla Signed-off-by: Rob Herring [srinivas: rebased on top of next] Signed-off-by: Srinivas Kandagatla --- drivers/nvmem/core.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/nvmem/core.c b/drivers/nvmem/core.c index cc815bb2eebd..b4c09bc20b67 100644 --- a/drivers/nvmem/core.c +++ b/drivers/nvmem/core.c @@ -298,6 +298,7 @@ static void nvmem_cell_drop(struct nvmem_cell *cell) mutex_lock(_mutex); list_del(>node); mutex_unlock(_mutex); + kfree(cell->name); kfree(cell); } @@ -547,7 +548,7 @@ static int nvmem_add_cells_from_of(struct nvmem_device *nvmem) cell->nvmem = nvmem; cell->offset = be32_to_cpup(addr++); cell->bytes = be32_to_cpup(addr); - cell->name = child->name; + cell->name = kasprintf(GFP_KERNEL, "%pOFn", child); addr = of_get_property(child, "bits", ); if (addr && len == (2 * sizeof(u32))) { @@ -564,6 +565,7 @@ static int nvmem_add_cells_from_of(struct nvmem_device *nvmem) dev_err(dev, "cell %s unaligned to nvmem stride %d\n", cell->name, nvmem->stride); /* Cells already added will be freed later. */ + kfree(cell->name); kfree(cell); return -EINVAL; } -- 2.19.0
Re: [PATCH] nvmem: Convert to using %pOFn instead of device_node.name
On 28/09/18 23:06, Rob Herring wrote: On Mon, Aug 27, 2018 at 8:55 PM Rob Herring wrote: In preparation to remove the node name pointer from struct device_node, convert printf users to use the %pOFn format specifier. Cc: Srinivas Kandagatla Signed-off-by: Rob Herring --- drivers/nvmem/core.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) Ping. This has no dependencies, so please apply. Sorry, Looks like I missed this one! I already re-based it. I will send it with other fixes to Greg KH soon! thanks, --srini Rob diff --git a/drivers/nvmem/core.c b/drivers/nvmem/core.c index aa1657831b70..6988ee9f11ba 100644 --- a/drivers/nvmem/core.c +++ b/drivers/nvmem/core.c @@ -304,6 +304,7 @@ static void nvmem_cell_drop(struct nvmem_cell *cell) mutex_lock(_cells_mutex); list_del(>node); mutex_unlock(_cells_mutex); + kfree(cell->name); kfree(cell); } @@ -879,7 +880,7 @@ struct nvmem_cell *of_nvmem_cell_get(struct device_node *np, cell->nvmem = nvmem; cell->offset = be32_to_cpup(addr++); cell->bytes = be32_to_cpup(addr); - cell->name = cell_np->name; + cell->name = kasprintf(GFP_KERNEL, "%pOFn", cell_np); addr = of_get_property(cell_np, "bits", ); if (addr && len == (2 * sizeof(u32))) { @@ -904,6 +905,7 @@ struct nvmem_cell *of_nvmem_cell_get(struct device_node *np, return cell; err_sanity: + kfree(cell->name); kfree(cell); err_mem: -- 2.17.1
Re: [PATCH] nvmem: Convert to using %pOFn instead of device_node.name
On 28/09/18 23:06, Rob Herring wrote: On Mon, Aug 27, 2018 at 8:55 PM Rob Herring wrote: In preparation to remove the node name pointer from struct device_node, convert printf users to use the %pOFn format specifier. Cc: Srinivas Kandagatla Signed-off-by: Rob Herring --- drivers/nvmem/core.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) Ping. This has no dependencies, so please apply. Sorry, Looks like I missed this one! I already re-based it. I will send it with other fixes to Greg KH soon! thanks, --srini Rob diff --git a/drivers/nvmem/core.c b/drivers/nvmem/core.c index aa1657831b70..6988ee9f11ba 100644 --- a/drivers/nvmem/core.c +++ b/drivers/nvmem/core.c @@ -304,6 +304,7 @@ static void nvmem_cell_drop(struct nvmem_cell *cell) mutex_lock(_cells_mutex); list_del(>node); mutex_unlock(_cells_mutex); + kfree(cell->name); kfree(cell); } @@ -879,7 +880,7 @@ struct nvmem_cell *of_nvmem_cell_get(struct device_node *np, cell->nvmem = nvmem; cell->offset = be32_to_cpup(addr++); cell->bytes = be32_to_cpup(addr); - cell->name = cell_np->name; + cell->name = kasprintf(GFP_KERNEL, "%pOFn", cell_np); addr = of_get_property(cell_np, "bits", ); if (addr && len == (2 * sizeof(u32))) { @@ -904,6 +905,7 @@ struct nvmem_cell *of_nvmem_cell_get(struct device_node *np, return cell; err_sanity: + kfree(cell->name); kfree(cell); err_mem: -- 2.17.1
Re: [PATCH] nvmem: Convert to using %pOFn instead of device_node.name
On Mon, Aug 27, 2018 at 8:55 PM Rob Herring wrote: > > In preparation to remove the node name pointer from struct device_node, > convert printf users to use the %pOFn format specifier. > > Cc: Srinivas Kandagatla > Signed-off-by: Rob Herring > --- > drivers/nvmem/core.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) Ping. This has no dependencies, so please apply. Rob > > diff --git a/drivers/nvmem/core.c b/drivers/nvmem/core.c > index aa1657831b70..6988ee9f11ba 100644 > --- a/drivers/nvmem/core.c > +++ b/drivers/nvmem/core.c > @@ -304,6 +304,7 @@ static void nvmem_cell_drop(struct nvmem_cell *cell) > mutex_lock(_cells_mutex); > list_del(>node); > mutex_unlock(_cells_mutex); > + kfree(cell->name); > kfree(cell); > } > > @@ -879,7 +880,7 @@ struct nvmem_cell *of_nvmem_cell_get(struct device_node > *np, > cell->nvmem = nvmem; > cell->offset = be32_to_cpup(addr++); > cell->bytes = be32_to_cpup(addr); > - cell->name = cell_np->name; > + cell->name = kasprintf(GFP_KERNEL, "%pOFn", cell_np); > > addr = of_get_property(cell_np, "bits", ); > if (addr && len == (2 * sizeof(u32))) { > @@ -904,6 +905,7 @@ struct nvmem_cell *of_nvmem_cell_get(struct device_node > *np, > return cell; > > err_sanity: > + kfree(cell->name); > kfree(cell); > > err_mem: > -- > 2.17.1 >
Re: [PATCH] nvmem: Convert to using %pOFn instead of device_node.name
On Mon, Aug 27, 2018 at 8:55 PM Rob Herring wrote: > > In preparation to remove the node name pointer from struct device_node, > convert printf users to use the %pOFn format specifier. > > Cc: Srinivas Kandagatla > Signed-off-by: Rob Herring > --- > drivers/nvmem/core.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) Ping. This has no dependencies, so please apply. Rob > > diff --git a/drivers/nvmem/core.c b/drivers/nvmem/core.c > index aa1657831b70..6988ee9f11ba 100644 > --- a/drivers/nvmem/core.c > +++ b/drivers/nvmem/core.c > @@ -304,6 +304,7 @@ static void nvmem_cell_drop(struct nvmem_cell *cell) > mutex_lock(_cells_mutex); > list_del(>node); > mutex_unlock(_cells_mutex); > + kfree(cell->name); > kfree(cell); > } > > @@ -879,7 +880,7 @@ struct nvmem_cell *of_nvmem_cell_get(struct device_node > *np, > cell->nvmem = nvmem; > cell->offset = be32_to_cpup(addr++); > cell->bytes = be32_to_cpup(addr); > - cell->name = cell_np->name; > + cell->name = kasprintf(GFP_KERNEL, "%pOFn", cell_np); > > addr = of_get_property(cell_np, "bits", ); > if (addr && len == (2 * sizeof(u32))) { > @@ -904,6 +905,7 @@ struct nvmem_cell *of_nvmem_cell_get(struct device_node > *np, > return cell; > > err_sanity: > + kfree(cell->name); > kfree(cell); > > err_mem: > -- > 2.17.1 >
[PATCH] nvmem: Convert to using %pOFn instead of device_node.name
In preparation to remove the node name pointer from struct device_node, convert printf users to use the %pOFn format specifier. Cc: Srinivas Kandagatla Signed-off-by: Rob Herring --- drivers/nvmem/core.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/nvmem/core.c b/drivers/nvmem/core.c index aa1657831b70..6988ee9f11ba 100644 --- a/drivers/nvmem/core.c +++ b/drivers/nvmem/core.c @@ -304,6 +304,7 @@ static void nvmem_cell_drop(struct nvmem_cell *cell) mutex_lock(_cells_mutex); list_del(>node); mutex_unlock(_cells_mutex); + kfree(cell->name); kfree(cell); } @@ -879,7 +880,7 @@ struct nvmem_cell *of_nvmem_cell_get(struct device_node *np, cell->nvmem = nvmem; cell->offset = be32_to_cpup(addr++); cell->bytes = be32_to_cpup(addr); - cell->name = cell_np->name; + cell->name = kasprintf(GFP_KERNEL, "%pOFn", cell_np); addr = of_get_property(cell_np, "bits", ); if (addr && len == (2 * sizeof(u32))) { @@ -904,6 +905,7 @@ struct nvmem_cell *of_nvmem_cell_get(struct device_node *np, return cell; err_sanity: + kfree(cell->name); kfree(cell); err_mem: -- 2.17.1
[PATCH] nvmem: Convert to using %pOFn instead of device_node.name
In preparation to remove the node name pointer from struct device_node, convert printf users to use the %pOFn format specifier. Cc: Srinivas Kandagatla Signed-off-by: Rob Herring --- drivers/nvmem/core.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/nvmem/core.c b/drivers/nvmem/core.c index aa1657831b70..6988ee9f11ba 100644 --- a/drivers/nvmem/core.c +++ b/drivers/nvmem/core.c @@ -304,6 +304,7 @@ static void nvmem_cell_drop(struct nvmem_cell *cell) mutex_lock(_cells_mutex); list_del(>node); mutex_unlock(_cells_mutex); + kfree(cell->name); kfree(cell); } @@ -879,7 +880,7 @@ struct nvmem_cell *of_nvmem_cell_get(struct device_node *np, cell->nvmem = nvmem; cell->offset = be32_to_cpup(addr++); cell->bytes = be32_to_cpup(addr); - cell->name = cell_np->name; + cell->name = kasprintf(GFP_KERNEL, "%pOFn", cell_np); addr = of_get_property(cell_np, "bits", ); if (addr && len == (2 * sizeof(u32))) { @@ -904,6 +905,7 @@ struct nvmem_cell *of_nvmem_cell_get(struct device_node *np, return cell; err_sanity: + kfree(cell->name); kfree(cell); err_mem: -- 2.17.1