Re: [PATCH] nvdimm/btt: fix variable 'rc' set but not used

From: Dan Williams
Date: Wed Oct 30 2019 - 16:26:00 EST


On Wed, Oct 30, 2019 at 12:16 PM Qian Cai <cai@xxxxxx> wrote:
>
> drivers/nvdimm/btt.c: In function 'btt_read_pg':
> drivers/nvdimm/btt.c:1264:8: warning: variable 'rc' set but not used
> [-Wunused-but-set-variable]
> int rc;
> ^~
>
> Add a ratelimited message in case a storm of errors is encountered.
>
> Fixes: d9b83c756953 ("libnvdimm, btt: rework error clearing")
> Signed-off-by: Qian Cai <cai@xxxxxx>
> ---
> drivers/nvdimm/btt.c | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/drivers/nvdimm/btt.c b/drivers/nvdimm/btt.c
> index 3e9f45aec8d1..59852f7e2d60 100644
> --- a/drivers/nvdimm/btt.c
> +++ b/drivers/nvdimm/btt.c
> @@ -1266,6 +1266,11 @@ static int btt_read_pg(struct btt *btt, struct bio_integrity_payload *bip,
> /* Media error - set the e_flag */
> rc = btt_map_write(arena, premap, postmap, 0, 1,
> NVDIMM_IO_ATOMIC);
> +
> + if (rc)
> + dev_warn_ratelimited(to_dev(arena),
> + "Error persistently tracking bad blocks\n");

If the driver is going to warn about bad blocks it should at least
include the block address that is returning an error.