@@ -123,10 +123,11 @@ EXPORT_SYMBOL(blk_queue_bounce_limit);
void blk_queue_max_hw_sectors(struct request_queue *q, unsigned int max_hw_sectors)
{
struct queue_limits *limits = &q->limits;
+ unsigned int min_max_hw_sectors = PAGE_SIZE >> SECTOR_SHIFT;
unsigned int max_sectors;
- if ((max_hw_sectors << 9) < PAGE_SIZE) {
- max_hw_sectors = 1 << (PAGE_SHIFT - 9);
+ if (max_hw_sectors < min_max_hw_sectors) {
+ max_hw_sectors = min_max_hw_sectors;
pr_info("%s: set to minimum %u\n", __func__, max_hw_sectors);
}
@@ -281,8 +282,10 @@ EXPORT_SYMBOL_GPL(blk_queue_max_discard_segments);
**/
void blk_queue_max_segment_size(struct request_queue *q, unsigned int max_size)
{
- if (max_size < PAGE_SIZE) {
- max_size = PAGE_SIZE;
+ unsigned int min_max_segment_size = PAGE_SIZE;
+
+ if (max_size < min_max_segment_size) {
+ max_size = min_max_segment_size;
pr_info("%s: set to minimum %u\n", __func__, max_size);
}