Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1328180 > unrolled thread
| Started by | Toshi Kani <toshi.kani@hpe.com> |
|---|---|
| First post | 2016-02-06 01:50 +0100 |
| Last post | 2016-02-06 03:00 +0100 |
| Articles | 4 — 3 participants |
Back to article view | Back to linux.kernel
[PATCH] devm_memremap: Fix error value when memremap failed Toshi Kani <toshi.kani@hpe.com> - 2016-02-06 01:50 +0100
Re: [PATCH] devm_memremap: Fix error value when memremap failed Ross Zwisler <ross.zwisler@linux.intel.com> - 2016-02-06 02:30 +0100
Re: [PATCH] devm_memremap: Fix error value when memremap failed Dan Williams <dan.j.williams@intel.com> - 2016-02-06 03:00 +0100
Re: [PATCH] devm_memremap: Fix error value when memremap failed Dan Williams <dan.j.williams@intel.com> - 2016-02-06 03:00 +0100
| From | Toshi Kani <toshi.kani@hpe.com> |
|---|---|
| Date | 2016-02-06 01:50 +0100 |
| Subject | [PATCH] devm_memremap: Fix error value when memremap failed |
| Message-ID | <qYZex-7Oq-1@gated-at.bofh.it> |
devm_memremap() returns an ERR_PTR() value in case of error.
However, it returns NULL when memremap() failed. This causes
the caller, such as the pmem driver, to proceed and oops later.
Change devm_memremap() to return ERR_PTR(-ENXIO) when memremap()
failed.
Signed-off-by: Toshi Kani <toshi.kani@hpe.com>
Cc: Dan Williams <dan.j.williams@intel.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
---
kernel/memremap.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/kernel/memremap.c b/kernel/memremap.c
index 70ee377..3427cca 100644
--- a/kernel/memremap.c
+++ b/kernel/memremap.c
@@ -136,8 +136,10 @@ void *devm_memremap(struct device *dev, resource_size_t offset,
if (addr) {
*ptr = addr;
devres_add(dev, ptr);
- } else
+ } else {
devres_free(ptr);
+ return ERR_PTR(-ENXIO);
+ }
return addr;
}
[toc] | [next] | [standalone]
| From | Ross Zwisler <ross.zwisler@linux.intel.com> |
|---|---|
| Date | 2016-02-06 02:30 +0100 |
| Message-ID | <qYZRg-8tm-5@gated-at.bofh.it> |
| In reply to | #1328180 |
On Fri, Feb 05, 2016 at 06:40:27PM -0700, Toshi Kani wrote:
> devm_memremap() returns an ERR_PTR() value in case of error.
> However, it returns NULL when memremap() failed. This causes
> the caller, such as the pmem driver, to proceed and oops later.
>
> Change devm_memremap() to return ERR_PTR(-ENXIO) when memremap()
> failed.
>
> Signed-off-by: Toshi Kani <toshi.kani@hpe.com>
> Cc: Dan Williams <dan.j.williams@intel.com>
> Cc: Andrew Morton <akpm@linux-foundation.org>
Yep, good catch.
Reviewed-by: Ross Zwisler <ross.zwisler@linux.intel.com>
> ---
> kernel/memremap.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/kernel/memremap.c b/kernel/memremap.c
> index 70ee377..3427cca 100644
> --- a/kernel/memremap.c
> +++ b/kernel/memremap.c
> @@ -136,8 +136,10 @@ void *devm_memremap(struct device *dev, resource_size_t offset,
> if (addr) {
> *ptr = addr;
> devres_add(dev, ptr);
> - } else
> + } else {
> devres_free(ptr);
> + return ERR_PTR(-ENXIO);
> + }
>
> return addr;
> }
> _______________________________________________
> Linux-nvdimm mailing list
> Linux-nvdimm@lists.01.org
> https://lists.01.org/mailman/listinfo/linux-nvdimm
[toc] | [prev] | [next] | [standalone]
| From | Dan Williams <dan.j.williams@intel.com> |
|---|---|
| Date | 2016-02-06 03:00 +0100 |
| Message-ID | <qZ0ki-ev-1@gated-at.bofh.it> |
| In reply to | #1328180 |
On Fri, Feb 5, 2016 at 5:40 PM, Toshi Kani <toshi.kani@hpe.com> wrote: > devm_memremap() returns an ERR_PTR() value in case of error. > However, it returns NULL when memremap() failed. This causes > the caller, such as the pmem driver, to proceed and oops later. > > Change devm_memremap() to return ERR_PTR(-ENXIO) when memremap() > failed. > > Signed-off-by: Toshi Kani <toshi.kani@hpe.com> > Cc: Dan Williams <dan.j.williams@intel.com> > Cc: Andrew Morton <akpm@linux-foundation.org> Acked-by: Dan Williams <dan.j.williams@intel.com>
[toc] | [prev] | [next] | [standalone]
| From | Dan Williams <dan.j.williams@intel.com> |
|---|---|
| Date | 2016-02-06 03:00 +0100 |
| Message-ID | <qZ0ki-ev-5@gated-at.bofh.it> |
| In reply to | #1328189 |
On Fri, Feb 5, 2016 at 5:49 PM, Dan Williams <dan.j.williams@intel.com> wrote: > On Fri, Feb 5, 2016 at 5:40 PM, Toshi Kani <toshi.kani@hpe.com> wrote: >> devm_memremap() returns an ERR_PTR() value in case of error. >> However, it returns NULL when memremap() failed. This causes >> the caller, such as the pmem driver, to proceed and oops later. >> >> Change devm_memremap() to return ERR_PTR(-ENXIO) when memremap() >> failed. >> >> Signed-off-by: Toshi Kani <toshi.kani@hpe.com> >> Cc: Dan Williams <dan.j.williams@intel.com> >> Cc: Andrew Morton <akpm@linux-foundation.org> > > Acked-by: Dan Williams <dan.j.williams@intel.com> Should also go to -stable, I'll add that and include this with some other fixes I have brewing.
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web