diff options
| -rw-r--r-- | fs/coredump.c | 9 | 
1 files changed, 5 insertions, 4 deletions
diff --git a/fs/coredump.c b/fs/coredump.c index a9abe313e8d5..dafafbafa731 100644 --- a/fs/coredump.c +++ b/fs/coredump.c @@ -654,10 +654,11 @@ void do_coredump(siginfo_t *siginfo)  		goto close_fail;  	if (displaced)  		put_files_struct(displaced); -	file_start_write(cprm.file); -	core_dumped = !dump_interrupted() && binfmt->core_dump(&cprm); -	file_end_write(cprm.file); - +	if (!dump_interrupted()) { +		file_start_write(cprm.file); +		core_dumped = binfmt->core_dump(&cprm); +		file_end_write(cprm.file); +	}  	if (ispipe && core_pipe_limit)  		wait_for_dump_helpers(cprm.file);  close_fail:  | 
