linux-next: manual merge of the scsi-mkp tree with the block tree

Stephen Rothwell posted 1 patch 1 week, 6 days ago
linux-next: manual merge of the scsi-mkp tree with the block tree
Posted by Stephen Rothwell 1 week, 6 days ago
Hi all,

Today's linux-next merge of the scsi-mkp tree got conflicts in:

  block/blk-settings.c
  include/linux/blkdev.h

between commit:

  e4eb37cc0f3e ("block: Remove elevator required features")

from the block tree and commit:

  ec84ca4025c0 ("scsi: block: Remove now unused queue limits helpers")

from the scsi-mkp 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 block/blk-settings.c
index 8e1d7ed52fef,292aadf8d807..000000000000
--- a/block/blk-settings.c
+++ b/block/blk-settings.c
@@@ -1048,28 -822,22 +825,6 @@@ void blk_queue_write_cache(struct reque
  }
  EXPORT_SYMBOL_GPL(blk_queue_write_cache);
  
--/**
-  * blk_queue_can_use_dma_map_merging - configure queue for merging segments.
-  * @q:		the request queue for the device
-  * @dev:	the device pointer for dma
 - * blk_queue_required_elevator_features - Set a queue required elevator features
 - * @q:		the request queue for the target device
 - * @features:	Required elevator features OR'ed together
-- *
-  * Tell the block layer about merging the segments by dma map of @q.
 - * Tell the block layer that for the device controlled through @q, only the
 - * only elevators that can be used are those that implement at least the set of
 - * features specified by @features.
-- */
- bool blk_queue_can_use_dma_map_merging(struct request_queue *q,
- 				       struct device *dev)
 -void blk_queue_required_elevator_features(struct request_queue *q,
 -					  unsigned int features)
--{
- 	unsigned long boundary = dma_get_merge_boundary(dev);
- 
- 	if (!boundary)
- 		return false;
- 
- 	/* No need to update max_segment_size. see blk_queue_virt_boundary() */
- 	blk_queue_virt_boundary(q, boundary);
- 
- 	return true;
 -	q->required_elevator_features = features;
--}
- EXPORT_SYMBOL_GPL(blk_queue_can_use_dma_map_merging);
 -EXPORT_SYMBOL_GPL(blk_queue_required_elevator_features);
--
  /**
   * disk_set_zoned - inidicate a zoned device
   * @disk:	gendisk to configure
diff --cc include/linux/blkdev.h
index 2c535af79529,e3c7082efa39..000000000000
--- a/include/linux/blkdev.h
+++ b/include/linux/blkdev.h
@@@ -924,9 -942,15 +926,6 @@@ disk_alloc_independent_access_ranges(st
  void disk_set_independent_access_ranges(struct gendisk *disk,
  				struct blk_independent_access_ranges *iars);
  
- extern bool blk_queue_can_use_dma_map_merging(struct request_queue *q,
- 					      struct device *dev);
 -/*
 - * Elevator features for blk_queue_required_elevator_features:
 - */
 -/* Supports zoned block devices sequential write constraint */
 -#define ELEVATOR_F_ZBD_SEQ_WRITE	(1U << 0)
 -
 -extern void blk_queue_required_elevator_features(struct request_queue *q,
 -						 unsigned int features);
--
  bool __must_check blk_get_queue(struct request_queue *);
  extern void blk_put_queue(struct request_queue *);
  
Re: linux-next: manual merge of the scsi-mkp tree with the block tree
Posted by Stephen Rothwell 5 days, 6 hours ago
Hi all,

On Thu, 18 Apr 2024 14:55:54 +1000 Stephen Rothwell <sfr@canb.auug.org.au> wrote:
>
> Today's linux-next merge of the scsi-mkp tree got conflicts in:
> 
>   block/blk-settings.c
>   include/linux/blkdev.h
> 
> between commit:
> 
>   e4eb37cc0f3e ("block: Remove elevator required features")
> 
> from the block tree and commit:
> 
>   ec84ca4025c0 ("scsi: block: Remove now unused queue limits helpers")
> 
> from the scsi-mkp 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.
> 
> diff --cc block/blk-settings.c
> index 8e1d7ed52fef,292aadf8d807..000000000000
> --- a/block/blk-settings.c
> +++ b/block/blk-settings.c
> @@@ -1048,28 -822,22 +825,6 @@@ void blk_queue_write_cache(struct reque
>   }
>   EXPORT_SYMBOL_GPL(blk_queue_write_cache);
>   
> --/**
> -  * blk_queue_can_use_dma_map_merging - configure queue for merging segments.
> -  * @q:		the request queue for the device
> -  * @dev:	the device pointer for dma
>  - * blk_queue_required_elevator_features - Set a queue required elevator features
>  - * @q:		the request queue for the target device
>  - * @features:	Required elevator features OR'ed together
> -- *
> -  * Tell the block layer about merging the segments by dma map of @q.
>  - * Tell the block layer that for the device controlled through @q, only the
>  - * only elevators that can be used are those that implement at least the set of
>  - * features specified by @features.
> -- */
> - bool blk_queue_can_use_dma_map_merging(struct request_queue *q,
> - 				       struct device *dev)
>  -void blk_queue_required_elevator_features(struct request_queue *q,
>  -					  unsigned int features)
> --{
> - 	unsigned long boundary = dma_get_merge_boundary(dev);
> - 
> - 	if (!boundary)
> - 		return false;
> - 
> - 	/* No need to update max_segment_size. see blk_queue_virt_boundary() */
> - 	blk_queue_virt_boundary(q, boundary);
> - 
> - 	return true;
>  -	q->required_elevator_features = features;
> --}
> - EXPORT_SYMBOL_GPL(blk_queue_can_use_dma_map_merging);
>  -EXPORT_SYMBOL_GPL(blk_queue_required_elevator_features);
> --
>   /**
>    * disk_set_zoned - inidicate a zoned device
>    * @disk:	gendisk to configure
> diff --cc include/linux/blkdev.h
> index 2c535af79529,e3c7082efa39..000000000000
> --- a/include/linux/blkdev.h
> +++ b/include/linux/blkdev.h
> @@@ -924,9 -942,15 +926,6 @@@ disk_alloc_independent_access_ranges(st
>   void disk_set_independent_access_ranges(struct gendisk *disk,
>   				struct blk_independent_access_ranges *iars);
>   
> - extern bool blk_queue_can_use_dma_map_merging(struct request_queue *q,
> - 					      struct device *dev);
>  -/*
>  - * Elevator features for blk_queue_required_elevator_features:
>  - */
>  -/* Supports zoned block devices sequential write constraint */
>  -#define ELEVATOR_F_ZBD_SEQ_WRITE	(1U << 0)
>  -
>  -extern void blk_queue_required_elevator_features(struct request_queue *q,
>  -						 unsigned int features);
> --
>   bool __must_check blk_get_queue(struct request_queue *);
>   extern void blk_put_queue(struct request_queue *);
>   

This is now a conflict between the scsi tree and the block tree.

-- 
Cheers,
Stephen Rothwell
Re: linux-next: manual merge of the scsi-mkp tree with the block tree
Posted by Christoph Hellwig 1 week, 6 days ago
Thanks Stephen,

the conflict resolution looks good to me.