Hi all,

On Wed, 1 May 2019 17:05:28 +1000 Stephen Rothwell <s...@canb.auug.org.au> 
wrote:
>
> Today's linux-next merge of the staging tree got conflicts in:
> 
>   drivers/staging/erofs/data.c
>   drivers/staging/erofs/unzip_vle.c
> 
> between commit:
> 
>   2b070cfe582b ("block: remove the i argument to bio_for_each_segment_all")
> 
> from the block tree and commit:
> 
>   14a56ec65bab ("staging: erofs: support IO read error injection")
> 
> from the staging 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 drivers/staging/erofs/data.c
> index 9f04d7466c55,c64ec76643d4..000000000000
> --- a/drivers/staging/erofs/data.c
> +++ b/drivers/staging/erofs/data.c
> @@@ -17,11 -17,18 +17,17 @@@
>   
>   static inline void read_endio(struct bio *bio)
>   {
> +     struct super_block *const sb = bio->bi_private;
>  -    int i;
>       struct bio_vec *bvec;
> -     const blk_status_t err = bio->bi_status;
> +     blk_status_t err = bio->bi_status;
>       struct bvec_iter_all iter_all;
>   
> +     if (time_to_inject(EROFS_SB(sb), FAULT_READ_IO)) {
> +             erofs_show_injection_info(FAULT_READ_IO);
> +             err = BLK_STS_IOERR;
> +     }
> + 
>  -    bio_for_each_segment_all(bvec, bio, i, iter_all) {
>  +    bio_for_each_segment_all(bvec, bio, iter_all) {
>               struct page *page = bvec->bv_page;
>   
>               /* page is already locked */
> diff --cc drivers/staging/erofs/unzip_vle.c
> index 59b9f37d5c00,a2e03c932102..000000000000
> --- a/drivers/staging/erofs/unzip_vle.c
> +++ b/drivers/staging/erofs/unzip_vle.c
> @@@ -843,14 -844,13 +844,12 @@@ static void z_erofs_vle_unzip_kickoff(v
>   
>   static inline void z_erofs_vle_read_endio(struct bio *bio)
>   {
> -     const blk_status_t err = bio->bi_status;
> +     struct erofs_sb_info *sbi = NULL;
> +     blk_status_t err = bio->bi_status;
>  -    unsigned int i;
>       struct bio_vec *bvec;
> - #ifdef EROFS_FS_HAS_MANAGED_CACHE
> -     struct address_space *mc = NULL;
> - #endif
>       struct bvec_iter_all iter_all;
>   
>  -    bio_for_each_segment_all(bvec, bio, i, iter_all) {
>  +    bio_for_each_segment_all(bvec, bio, iter_all) {
>               struct page *page = bvec->bv_page;
>               bool cachemngd = false;
>   

This conflict is now between the block tree and Linus' tree.

-- 
Cheers,
Stephen Rothwell

Attachment: pgp0ac28V7kvJ.pgp
Description: OpenPGP digital signature

Reply via email to