linux-next: manual merge of the vfs tree with Linus' tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Al,

Today's linux-next merge of the vfs tree got a conflict in fs/coredump.c
between commit acdedd99b0f3 ("coredump: sanitize the setting of
signal->group_exit_code") from Linus' tree and commit 03d95eb2f257 ("lift
sb_start_write() out of ->write()") from the vfs tree.

I fixed it up (see below) and can carry the fix as necessary (no action
is required).

-- 
Cheers,
Stephen Rothwell                    sfr@xxxxxxxxxxxxxxxx

diff --cc fs/coredump.c
index ec306cc,a987f3d..0000000
--- a/fs/coredump.c
+++ b/fs/coredump.c
@@@ -419,22 -407,9 +419,20 @@@ static void coredump_finish(struct mm_s
  	mm->core_state = NULL;
  }
  
 +static bool dump_interrupted(void)
 +{
 +	/*
 +	 * SIGKILL or freezing() interrupt the coredumping. Perhaps we
 +	 * can do try_to_freeze() and check __fatal_signal_pending(),
 +	 * but then we need to teach dump_write() to restart and clear
 +	 * TIF_SIGPENDING.
 +	 */
 +	return signal_pending(current);
 +}
 +
  static void wait_for_dump_helpers(struct file *file)
  {
- 	struct pipe_inode_info *pipe;
- 
- 	pipe = file_inode(file)->i_pipe;
+ 	struct pipe_inode_info *pipe = file->private_data;
  
  	pipe_lock(pipe);
  	pipe->readers++;
@@@ -656,7 -627,11 +654,9 @@@ void do_coredump(siginfo_t *siginfo
  		goto close_fail;
  	if (displaced)
  		put_files_struct(displaced);
+ 	file_start_write(cprm.file);
 -	retval = binfmt->core_dump(&cprm);
 -	if (retval)
 -		current->signal->group_exit_code |= 0x80;
 +	core_dumped = !dump_interrupted() && binfmt->core_dump(&cprm);
+ 	file_end_write(cprm.file);
  
  	if (ispipe && core_pipe_limit)
  		wait_for_dump_helpers(cprm.file);

Attachment: pgpiYEHlXkOJi.pgp
Description: PGP signature


[Index of Archives]     [Linux Kernel]     [Linux USB Development]     [Yosemite News]     [Linux SCSI]

  Powered by Linux