Subject: Re: linux-next: manual merge of the vfs-brauner tree with the mm tree

From: Stephen Rothwell <[email-masked]>
Date: Tue, 9 Jan 2024 08:00:23 +1100

Hi all,

On Wed, 22 Nov 2023 10:31:19 +1100 Stephen Rothwell <[email-masked]> wrote:
> 
> Today's linux-next merge of the vfs-brauner tree got a conflict in:
> 
>   fs/buffer.c
> 
> between commits:
> 
>   2c68861ed127 ("buffer: return bool from grow_dev_folio()")
>   5334c6480adb ("buffer: calculate block number inside folio_init_buffers()")
> 
> from the mm tree and commit:
> 
>   488e2eea5100 ("fs: Rename mapping private members")
> 
> from the vfs-brauner 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 fs/buffer.c
> index 4eb44ccdc6be,5ffc44ab4854..000000000000
> --- a/fs/buffer.c
> +++ b/fs/buffer.c
> @@@ -1067,14 -1064,17 +1067,14 @@@ static bool grow_dev_folio(struct block
>   	 * lock to be atomic wrt __find_get_block(), which does not
>   	 * run under the folio lock.
>   	 */
> - 	spin_lock(&inode->i_mapping->private_lock);
> + 	spin_lock(&inode->i_mapping->i_private_lock);
>   	link_dev_buffers(folio, bh);
>  -	end_block = folio_init_buffers(folio, bdev,
>  -			(sector_t)index << sizebits, size);
>  +	end_block = folio_init_buffers(folio, bdev, size);
> - 	spin_unlock(&inode->i_mapping->private_lock);
> + 	spin_unlock(&inode->i_mapping->i_private_lock);
>  -done:
>  -	ret = (block < end_block) ? 1 : -ENXIO;
>  -failed:
>  +unlock:
>   	folio_unlock(folio);
>   	folio_put(folio);
>  -	return ret;
>  +	return block < end_block;
>   }
>   
>   /*

This is now a conflict between the mm tree and Linus' tree.

-- 
Cheers,
Stephen Rothwell