[PATCH 1/1 linux-next] jffs2: remove multiple dereferences in debug

Nicholas Krause xerofoify at gmail.com
Tue Mar 3 12:48:36 PST 2015



On March 3, 2015 2:44:24 PM EST, David Woodhouse <dwmw2 at infradead.org> wrote:
>On Tue, 2015-03-03 at 20:03 +0100, Fabian Frederick wrote:
>> use jffs2_eraseblock variables to simplify the code
>
>That looks more like it's obfuscating the code to me. Now you have to
>look up a few lines to see what the 'nextb' and 'gcb' variables
>actually
>point to.
>
>It doesn't even make it easier to read — if there were long lines with
>complex formulæ it might make some sense, but in this case I think
>there's really no point in this change.
>
I have  to agree with maintainer too as after reading the patch I found the code harder to understand too. 
Nick 
>
>> Signed-off-by: Fabian Frederick <fabf at skynet.be>
>> ---
>>  fs/jffs2/debug.c |   26 ++++++++++++++------------
>>  1 file changed, 14 insertions(+), 12 deletions(-)
>> 
>> diff --git a/fs/jffs2/debug.c b/fs/jffs2/debug.c
>> index 1090eb6..2ddb967 100644
>> --- a/fs/jffs2/debug.c
>> +++ b/fs/jffs2/debug.c
>> @@ -160,26 +160,28 @@ __jffs2_dbg_prewrite_paranoia_check(struct
>jffs2_sb_info *c,
>>  void __jffs2_dbg_superblock_counts(struct jffs2_sb_info *c)
>>  {
>>  	struct jffs2_eraseblock *jeb;
>> +	struct jffs2_eraseblock *gcb = c->gcblock;
>> +	struct jffs2_eraseblock *nextb = c->nextblock;
>>  	uint32_t free = 0, dirty = 0, used = 0, wasted = 0,
>>  		erasing = 0, bad = 0, unchecked = 0;
>>  	int nr_counted = 0;
>>  	int dump = 0;
>>  
>> -	if (c->gcblock) {
>> +	if (gcb) {
>>  		nr_counted++;
>> -		free += c->gcblock->free_size;
>> -		dirty += c->gcblock->dirty_size;
>> -		used += c->gcblock->used_size;
>> -		wasted += c->gcblock->wasted_size;
>> -		unchecked += c->gcblock->unchecked_size;
>> +		free += gcb->free_size;
>> +		dirty += gcb->dirty_size;
>> +		used += gcb->used_size;
>> +		wasted += gcb->wasted_size;
>> +		unchecked += gcb->unchecked_size;
>>  	}
>> -	if (c->nextblock) {
>> +	if (nextb) {
>>  		nr_counted++;
>> -		free += c->nextblock->free_size;
>> -		dirty += c->nextblock->dirty_size;
>> -		used += c->nextblock->used_size;
>> -		wasted += c->nextblock->wasted_size;
>> -		unchecked += c->nextblock->unchecked_size;
>> +		free += nextb->free_size;
>> +		dirty += nextb->dirty_size;
>> +		used += nextb->used_size;
>> +		wasted += nextb->wasted_size;
>> +		unchecked += nextb->unchecked_size;
>>  	}
>>  	list_for_each_entry(jeb, &c->clean_list, list) {
>>  		nr_counted++;

-- 
Sent from my Android device with K-9 Mail. Please excuse my brevity.



More information about the linux-mtd mailing list