Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1545124 > unrolled thread

[PATCH] mtd: mtdswap: use MTDSWAP_ECNT_MIN/MAX

Started byGeliang Tang <geliangtang@gmail.com>
First post2016-12-20 15:00 +0100
Last post2016-12-25 14:50 +0100
Articles 4 — 2 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] mtd: mtdswap: use MTDSWAP_ECNT_MIN/MAX Geliang Tang <geliangtang@gmail.com> - 2016-12-20 15:00 +0100
    Re: [PATCH] mtd: mtdswap: use MTDSWAP_ECNT_MIN/MAX Marek Vasut <marek.vasut@gmail.com> - 2016-12-23 20:10 +0100
      Re: [PATCH] mtd: mtdswap: use MTDSWAP_ECNT_MIN/MAX Geliang Tang <geliangtang@gmail.com> - 2016-12-24 16:20 +0100
        Re: [PATCH] mtd: mtdswap: use MTDSWAP_ECNT_MIN/MAX Marek Vasut <marek.vasut@gmail.com> - 2016-12-25 14:50 +0100

#1545124 — [PATCH] mtd: mtdswap: use MTDSWAP_ECNT_MIN/MAX

FromGeliang Tang <geliangtang@gmail.com>
Date2016-12-20 15:00 +0100
Subject[PATCH] mtd: mtdswap: use MTDSWAP_ECNT_MIN/MAX
Message-ID<sQt7s-6hV-35@gated-at.bofh.it>
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@gmail.com>
---
 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;
 	}
-- 
2.9.3

[toc] | [next] | [standalone]


#1546949

FromMarek Vasut <marek.vasut@gmail.com>
Date2016-12-23 20:10 +0100
Message-ID<sRDo5-2vk-17@gated-at.bofh.it>
In reply to#1545124
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@gmail.com>

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 ?

Otherwise:
Acked-by: Marek Vasut <marek.vasut@gmail.com>

> ---
>  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

[toc] | [prev] | [next] | [standalone]


#1547069

FromGeliang Tang <geliangtang@gmail.com>
Date2016-12-24 16:20 +0100
Message-ID<sRWh3-8V-5@gated-at.bofh.it>
In reply to#1546949
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@gmail.com>
> 
> 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@gmail.com>
> 
> > ---
> >  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

[toc] | [prev] | [next] | [standalone]


#1547156

FromMarek Vasut <marek.vasut@gmail.com>
Date2016-12-25 14:50 +0100
Message-ID<sShlv-5PL-11@gated-at.bofh.it>
In reply to#1547069
On 12/24/2016 04:18 PM, Geliang Tang wrote:
> 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@gmail.com>
>>
>> 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?

Ah, true, I missed that. In that case, just this patch is fine, thanks !

> -Geliang
> 
>>
>> Otherwise:
>> Acked-by: Marek Vasut <marek.vasut@gmail.com>
>>
>>> ---
>>>  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


-- 
Best regards,
Marek Vasut

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web