Hi all, On Thu, 18 Apr 2024 14:55:54 +1000 Stephen Rothwell 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