In related functions, they have already had tag 'free', so use 'goto' instead of 'break' to keep one (not multiple) style in each function.
Also remove useless checking 'err' code or move it to related 'if' code block. Signed-off-by: Chen Gang <gang.c...@asianux.com> --- kernel/sysctl.c | 25 +++++++++++++------------ 1 files changed, 13 insertions(+), 12 deletions(-) diff --git a/kernel/sysctl.c b/kernel/sysctl.c index ee00986..c05e2cd 100644 --- a/kernel/sysctl.c +++ b/kernel/sysctl.c @@ -1958,27 +1958,28 @@ static int __do_proc_dointvec(void *tbl_data, struct ctl_table *table, proc_wspace_sep, sizeof(proc_wspace_sep), NULL); if (err) - break; + goto free; if (conv(&neg, &lval, i, 1, data)) { err = -EINVAL; - break; + goto free; } } else { if (conv(&neg, &lval, i, 0, data)) { err = -EINVAL; - break; + goto free; } - if (!first) + if (!first) { err = proc_put_char(&buffer, &left, '\t'); - if (err) - break; + if (err) + goto free; + } err = proc_put_long(&buffer, &left, lval, neg); if (err) - break; + goto free; } } - if (!write && !first && left && !err) + if (!write && !first && left) err = proc_put_char(&buffer, &left, '\n'); if (write && !err && left) left -= proc_skip_spaces(&kbuf); @@ -2206,7 +2207,7 @@ static int __do_proc_doulongvec_minmax(void *data, struct ctl_table *table, int proc_wspace_sep, sizeof(proc_wspace_sep), NULL); if (err) - break; + goto free; if (neg) continue; if ((min && val < *min) || (max && val > *max)) @@ -2221,11 +2222,11 @@ static int __do_proc_doulongvec_minmax(void *data, struct ctl_table *table, int } err = proc_put_long(&buffer, &left, val, false); if (err) - break; + goto free; } } - if (!write && !first && left && !err) + if (!write && !first && left) err = proc_put_char(&buffer, &left, '\n'); if (write && !err) left -= proc_skip_spaces(&kbuf); @@ -2515,7 +2516,7 @@ int proc_do_large_bitmap(struct ctl_table *table, int write, return -ENOMEM; } proc_skip_char(&kbuf, &left, '\n'); - while (!err && left) { + while (left) { unsigned long val_a, val_b; bool neg; -- 1.7.7.6 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/