Re: [PATCH] mtd: mtdswap: use MTDSWAP_ECNT_MIN/MAX

From: Geliang Tang
Date: Sat Dec 24 2016 - 10:19:26 EST


On Fri, Dec 23, 2016 at 07:51:56PM +0100, Marek Vasut wrote:
> On 12/20/2016 02:54 PM, Geliang Tang wrote:
> > Since macros MTDSWAP_ECNT_MIN() and MTDSWAP_ECNT_MAX() have been
> > defined in mtdswap.c, use them instead of open-coding.
> >
> > Signed-off-by: Geliang Tang <geliangtang@xxxxxxxxx>
>
> Sorry for getting to this so late. The patch is fine, but if you grep
> for 'rb_first' in the mtdswap driver , you'll see you can also use the
> MTDSWAP_ECNT_MIN macro in mtdswap_map_free_block() and in
> mtdswap_pick_gc_blk() . Can you fix those too ?

Hi Marek,

Thanks for your review. I double checked the code and found out that we can't
use MTDSWAP_ECNT_MIN macro in mtdswap_map_free_block() and mtdswap_pick_gc_eblk().
Since the MTDSWAP_ECNT_MIN macro points to erase_count field of swap_eb, and
erase_count field are not used in these two functions. Isn't it?

-Geliang

>
> Otherwise:
> Acked-by: Marek Vasut <marek.vasut@xxxxxxxxx>
>
> > ---
> > drivers/mtd/mtdswap.c | 6 ++----
> > 1 file changed, 2 insertions(+), 4 deletions(-)
> >
> > diff --git a/drivers/mtd/mtdswap.c b/drivers/mtd/mtdswap.c
> > index c40e2c9..f12879a 100644
> > --- a/drivers/mtd/mtdswap.c
> > +++ b/drivers/mtd/mtdswap.c
> > @@ -1235,10 +1235,8 @@ static int mtdswap_show(struct seq_file *s, void *data)
> >
> > if (root->rb_node) {
> > count[i] = d->trees[i].count;
> > - min[i] = rb_entry(rb_first(root), struct swap_eb,
> > - rb)->erase_count;
> > - max[i] = rb_entry(rb_last(root), struct swap_eb,
> > - rb)->erase_count;
> > + min[i] = MTDSWAP_ECNT_MIN(root);
> > + max[i] = MTDSWAP_ECNT_MAX(root);
> > } else
> > count[i] = 0;
> > }
> >
>
>
> --
> Best regards,
> Marek Vasut