Messages in this thread Patches in this message | | | Date | Tue, 19 May 2015 10:34:56 +0300 | From | Boaz Harrosh <> | Subject | Re: [RFC] block: remove never-modified global variable |
| |
On 05/19/2015 10:19 AM, Boaz Harrosh wrote: <> > But specially now that you are unconditionally printing it. It is better > to just combine the two statements. See suggested patch below: >
Actually we can even do better:
diff --git a/block/partitions/check.c b/block/partitions/check.c index 513c601..9bea23d 100644 --- a/block/partitions/check.c +++ b/block/partitions/check.c @@ -160,35 +160,31 @@ check_partition(struct gendisk *hd, struct block_device *bdev) i = res = err = 0; while (!res && check_part[i]) { memset(state->parts, 0, state->limit * sizeof(state->parts[0])); res = check_part[i++](state); if (res < 0) { /* We have hit an I/O error which we don't report now. * But record it, and let the others do their job. */ err = res; res = 0; } }
boaz> When we exit the loop res can only be (res >= 0)
if (res > 0) { printk(KERN_INFO "%s", state->pp_buf); free_page((unsigned long)state->pp_buf); return state;
boaz> When bigger we exit here
} if (state->access_beyond_eod) err = -ENOSPC;
boaz> So by this stage res can only be == 0. So we should just do:
if (err) /* The partition is unrecognized. So report I/O errors if there were any */ - res = err; - if (res) { - strlcat(state->pp_buf, - " unable to read partition table\n", PAGE_SIZE); - printk(KERN_INFO "%s", state->pp_buf); - } + printk(KERN_INFO "%s unable to read partition table\n", + state->pp_buf); free_page((unsigned long)state->pp_buf); free_partitions(state); return ERR_PTR(res); } ---- Here is a proper diff: ---- diff --git a/block/partitions/check.c b/block/partitions/check.c index 513c601..9bea23d 100644 --- a/block/partitions/check.c +++ b/block/partitions/check.c @@ -181,12 +181,8 @@ check_partition(struct gendisk *hd, struct block_device *bdev) err = -ENOSPC; if (err) /* The partition is unrecognized. So report I/O errors if there were any */ - res = err; - if (res) { - strlcat(state->pp_buf, - " unable to read partition table\n", PAGE_SIZE); - printk(KERN_INFO "%s", state->pp_buf); - } + printk(KERN_INFO "%s unable to read partition table\n", + state->pp_buf); free_page((unsigned long)state->pp_buf); free_partitions(state); Thanks Boaz
| |