All of lore.kernel.org
 help / color / mirror / Atom feed
* FAILED: patch "[PATCH] libnvdimm: fix clear length of nvdimm_forget_poison()" failed to apply to 4.11-stable tree
@ 2017-05-18  9:19 gregkh
  2017-05-18 14:43 ` Kani, Toshimitsu
  0 siblings, 1 reply; 2+ messages in thread
From: gregkh @ 2017-05-18  9:19 UTC (permalink / raw)
  To: toshi.kani, dan.j.williams, dave.jiang, stable, vishal.l.verma; +Cc: stable


The patch below does not apply to the 4.11-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable@vger.kernel.org>.

thanks,

greg k-h

------------------ original commit in Linus's tree ------------------

>From 8d13c0290655b883df9083a2a0af0d782bc38aef Mon Sep 17 00:00:00 2001
From: Toshi Kani <toshi.kani@hpe.com>
Date: Thu, 27 Apr 2017 16:57:05 -0600
Subject: [PATCH] libnvdimm: fix clear length of nvdimm_forget_poison()

ND_CMD_CLEAR_ERROR command returns 'clear_err.cleared', the length
of error actually cleared, which may be smaller than its requested
'len'.

Change nvdimm_clear_poison() to call nvdimm_forget_poison() with
'clear_err.cleared' when this value is valid.

Cc: <stable@vger.kernel.org>
Fixes: e046114af5fc ("libnvdimm: clear the internal poison_list when clearing badblocks")
Cc: Dave Jiang <dave.jiang@intel.com>
Cc: Vishal Verma <vishal.l.verma@intel.com>
Signed-off-by: Toshi Kani <toshi.kani@hpe.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>

diff --git a/drivers/nvdimm/bus.c b/drivers/nvdimm/bus.c
index d214ac44d111..43ddfd487c85 100644
--- a/drivers/nvdimm/bus.c
+++ b/drivers/nvdimm/bus.c
@@ -219,7 +219,9 @@ long nvdimm_clear_poison(struct device *dev, phys_addr_t phys,
 	if (cmd_rc < 0)
 		return cmd_rc;
 
-	nvdimm_forget_poison(nvdimm_bus, phys, len);
+	if (clear_err.cleared > 0)
+		nvdimm_forget_poison(nvdimm_bus, phys, clear_err.cleared);
+
 	return clear_err.cleared;
 }
 EXPORT_SYMBOL_GPL(nvdimm_clear_poison);

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: FAILED: patch "[PATCH] libnvdimm: fix clear length of nvdimm_forget_poison()" failed to apply to 4.11-stable tree
  2017-05-18  9:19 FAILED: patch "[PATCH] libnvdimm: fix clear length of nvdimm_forget_poison()" failed to apply to 4.11-stable tree gregkh
@ 2017-05-18 14:43 ` Kani, Toshimitsu
  0 siblings, 0 replies; 2+ messages in thread
From: Kani, Toshimitsu @ 2017-05-18 14:43 UTC (permalink / raw)
  To: dan.j.williams, dave.jiang, gregkh, stable, vishal.l.verma

On Thu, 2017-05-18 at 11:19 +0200, gregkh@linuxfoundation.org wrote:
> The patch below does not apply to the 4.11-stable tree.
> If someone wants it applied there, or to any other stable or longterm
> tree, then please email the backport, including the original git
> commit id to <stable@vger.kernel.org>.

Sorry for the trouble.  The func name has changed in 4.12.  I will send
a patch that can be applied to pre-4.12 trees.

Thanks,
-Toshi


> 
> thanks,
> 
> greg k-h
> 
> ------------------ original commit in Linus's tree ------------------
> 
> From 8d13c0290655b883df9083a2a0af0d782bc38aef Mon Sep 17 00:00:00
> 2001
> From: Toshi Kani <toshi.kani@hpe.com>
> Date: Thu, 27 Apr 2017 16:57:05 -0600
> Subject: [PATCH] libnvdimm: fix clear length of
> nvdimm_forget_poison()
> 
> ND_CMD_CLEAR_ERROR command returns 'clear_err.cleared', the length
> of error actually cleared, which may be smaller than its requested
> 'len'.
> 
> Change nvdimm_clear_poison() to call nvdimm_forget_poison() with
> 'clear_err.cleared' when this value is valid.
> 
> Cc: <stable@vger.kernel.org>
> Fixes: e046114af5fc ("libnvdimm: clear the internal poison_list when
> clearing badblocks")
> Cc: Dave Jiang <dave.jiang@intel.com>
> Cc: Vishal Verma <vishal.l.verma@intel.com>
> Signed-off-by: Toshi Kani <toshi.kani@hpe.com>
> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
> 
> diff --git a/drivers/nvdimm/bus.c b/drivers/nvdimm/bus.c
> index d214ac44d111..43ddfd487c85 100644
> --- a/drivers/nvdimm/bus.c
> +++ b/drivers/nvdimm/bus.c
> @@ -219,7 +219,9 @@ long nvdimm_clear_poison(struct device *dev,
> phys_addr_t phys,
>  	if (cmd_rc < 0)
>  		return cmd_rc;
>  
> -	nvdimm_forget_poison(nvdimm_bus, phys, len);
> +	if (clear_err.cleared > 0)
> +		nvdimm_forget_poison(nvdimm_bus, phys,
> clear_err.cleared);
> +
>  	return clear_err.cleared;
>  }
>  EXPORT_SYMBOL_GPL(nvdimm_clear_poison);
> 

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2017-05-18 14:44 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-05-18  9:19 FAILED: patch "[PATCH] libnvdimm: fix clear length of nvdimm_forget_poison()" failed to apply to 4.11-stable tree gregkh
2017-05-18 14:43 ` Kani, Toshimitsu

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.