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

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

 



Hi all,

On Tue, 8 Dec 2020 16:02:22 +1100 Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:
> 
> Today's linux-next merge of the ftrace tree got a conflict in:
> 
>   kernel/trace/ring_buffer.c
> 
> between commit:
> 
>   68e10d5ff512 ("ring-buffer: Always check to put back before stamp when crossing pages")
> 
> from Linus' tree and commit:
> 
>   5b7be9c709e1 ("ring-buffer: Add test to validate the time stamp deltas")
> 
> from the ftrace tree.
> 
> I fixed it up (see below) and can carry the fix as necessary. This
> is now fixed as far as linux-next is concerned, but any non trivial
> conflicts should be mentioned to your upstream maintainer when your tree
> is submitted for merging.  You may also want to consider cooperating
> with the maintainer of the conflicting tree to minimise any particularly
> complex conflicts.
> 
> -- 
> Cheers,
> Stephen Rothwell
> 
> diff --cc kernel/trace/ring_buffer.c
> index a6268e09160a,7cd888ee9ac7..000000000000
> --- a/kernel/trace/ring_buffer.c
> +++ b/kernel/trace/ring_buffer.c
> @@@ -3234,12 -3391,16 +3391,14 @@@ __rb_reserve_next(struct ring_buffer_pe
>   
>   	/* See if we shot pass the end of this buffer page */
>   	if (unlikely(write > BUF_PAGE_SIZE)) {
>  -		if (tail != w) {
>  -			/* before and after may now different, fix it up*/
>  -			b_ok = rb_time_read(&cpu_buffer->before_stamp, &info->before);
>  -			a_ok = rb_time_read(&cpu_buffer->write_stamp, &info->after);
>  -			if (a_ok && b_ok && info->before != info->after)
>  -				(void)rb_time_cmpxchg(&cpu_buffer->before_stamp,
>  -						      info->before, info->after);
>  -		}
>  +		/* before and after may now different, fix it up*/
>  +		b_ok = rb_time_read(&cpu_buffer->before_stamp, &info->before);
>  +		a_ok = rb_time_read(&cpu_buffer->write_stamp, &info->after);
>  +		if (a_ok && b_ok && info->before != info->after)
>  +			(void)rb_time_cmpxchg(&cpu_buffer->before_stamp,
>  +					      info->before, info->after);
> + 		if (a_ok && b_ok)
> + 			check_buffer(cpu_buffer, info, CHECK_FULL_PAGE);
>   		return rb_move_tail(cpu_buffer, tail, info);
>   	}
>   

Just a reminder that this conflict still exists.

-- 
Cheers,
Stephen Rothwell

Attachment: pgpkqE2NORqAF.pgp
Description: OpenPGP digital signature


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

  Powered by Linux