aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNamhyung Kim <namhyung@kernel.org>2016-05-18 08:00:06 -0400
committerKees Cook <keescook@chromium.org>2016-05-31 15:36:45 -0400
commit235f6d157d43a761052e643b8799f86fdc87b47f (patch)
treeb338ce1083c8b16e11351b27f00c31358387c8eb
parent98e44fda2ea19c0e8b0a2e0e4dcd3461251f09ea (diff)
pstore: Cleanup pstore_dump()
The code is duplicate between compression is enabled or not. Signed-off-by: Namhyung Kim <namhyung@kernel.org> Signed-off-by: Kees Cook <keescook@chromium.org>
-rw-r--r--fs/pstore/platform.c32
1 files changed, 13 insertions, 19 deletions
diff --git a/fs/pstore/platform.c b/fs/pstore/platform.c
index ad8ef2298047..fe41d8ec663a 100644
--- a/fs/pstore/platform.c
+++ b/fs/pstore/platform.c
@@ -306,19 +306,25 @@ static void pstore_dump(struct kmsg_dumper *dumper,
306 int hsize; 306 int hsize;
307 int zipped_len = -1; 307 int zipped_len = -1;
308 size_t len; 308 size_t len;
309 bool compressed; 309 bool compressed = false;
310 size_t total_len; 310 size_t total_len;
311 311
312 if (big_oops_buf && is_locked) { 312 if (big_oops_buf && is_locked) {
313 dst = big_oops_buf; 313 dst = big_oops_buf;
314 hsize = sprintf(dst, "%s#%d Part%u\n", why, 314 size = big_oops_buf_sz;
315 oopscount, part); 315 } else {
316 size = big_oops_buf_sz - hsize; 316 dst = psinfo->buf;
317 size = psinfo->bufsize;
318 }
317 319
318 if (!kmsg_dump_get_buffer(dumper, true, dst + hsize, 320 hsize = sprintf(dst, "%s#%d Part%u\n", why, oopscount, part);
319 size, &len)) 321 size -= hsize;
320 break; 322
323 if (!kmsg_dump_get_buffer(dumper, true, dst + hsize,
324 size, &len))
325 break;
321 326
327 if (big_oops_buf && is_locked) {
322 zipped_len = pstore_compress(dst, psinfo->buf, 328 zipped_len = pstore_compress(dst, psinfo->buf,
323 hsize + len, psinfo->bufsize); 329 hsize + len, psinfo->bufsize);
324 330
@@ -326,21 +332,9 @@ static void pstore_dump(struct kmsg_dumper *dumper,
326 compressed = true; 332 compressed = true;
327 total_len = zipped_len; 333 total_len = zipped_len;
328 } else { 334 } else {
329 compressed = false;
330 total_len = copy_kmsg_to_buffer(hsize, len); 335 total_len = copy_kmsg_to_buffer(hsize, len);
331 } 336 }
332 } else { 337 } else {
333 dst = psinfo->buf;
334 hsize = sprintf(dst, "%s#%d Part%u\n", why, oopscount,
335 part);
336 size = psinfo->bufsize - hsize;
337 dst += hsize;
338
339 if (!kmsg_dump_get_buffer(dumper, true, dst,
340 size, &len))
341 break;
342
343 compressed = false;
344 total_len = hsize + len; 338 total_len = hsize + len;
345 } 339 }
346 340