block: do not artificially constrain max_sectors for stacking drivers
blk_set_stacking_limits is intended to allow stacking drivers to build up the limits of the stacked device based on the underlying devices' limits. But defaulting 'max_sectors' to BLK_DEF_MAX_SECTORS (1024) doesn't allow the stacking driver to inherit a max_sectors larger than 1024 -- due to blk_stack_limits' use of min_not_zero. It is now clear that this artificial limit is getting in the way so change blk_set_stacking_limits's max_sectors to UINT_MAX (which allows stacking drivers like dm-multipath to inherit 'max_sectors' from the underlying paths). Reported-by: Vijay Chauhan <vijay.chauhan@netapp.com> Tested-by: Vijay Chauhan <vijay.chauhan@netapp.com> Signed-off-by: Mike Snitzer <snitzer@redhat.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
		
					parent
					
						
							
								a051661ca6
							
						
					
				
			
			
				commit
				
					
						fe86cdcef7
					
				
			
		
					 1 changed files with 1 additions and 2 deletions
				
			
		|  | @ -143,8 +143,7 @@ void blk_set_stacking_limits(struct queue_limits *lim) | ||||||
| 	lim->discard_zeroes_data = 1; | 	lim->discard_zeroes_data = 1; | ||||||
| 	lim->max_segments = USHRT_MAX; | 	lim->max_segments = USHRT_MAX; | ||||||
| 	lim->max_hw_sectors = UINT_MAX; | 	lim->max_hw_sectors = UINT_MAX; | ||||||
| 
 | 	lim->max_sectors = UINT_MAX; | ||||||
| 	lim->max_sectors = BLK_DEF_MAX_SECTORS; |  | ||||||
| } | } | ||||||
| EXPORT_SYMBOL(blk_set_stacking_limits); | EXPORT_SYMBOL(blk_set_stacking_limits); | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Mike Snitzer
				Mike Snitzer