Add a littler helper to make the somewhat arcane bd_contains checks a little more obvious.
Showing the changes to include/linux/blkdev.h (1 of 10 files). Show all
Unified · Split
| @@ -1353,6 +1353,11 @@ static inline int sb_issue_zeroout(struct super_block *sb, sector_t block, · 1352 unmodified lines | |||
| 1353 | 1353 | ||
| 1354 | extern int blk_verify_command(unsigned char *cmd, fmode_t mode); | 1354 | extern int blk_verify_command(unsigned char *cmd, fmode_t mode); |
| 1355 | 1355 | ||
| 1356 | static inline bool bdev_is_partition(struct block_device *bdev) | ||
| 1357 | { | ||
| 1358 | return bdev->bd_partno; | ||
| 1359 | } | ||
| 1360 | |||
| 1356 | enum blk_default_limits { | 1361 | enum blk_default_limits { |
| 1357 | BLK_MAX_SEGMENTS = 128, | 1362 | BLK_MAX_SEGMENTS = 128, |
| 1358 | BLK_SAFE_MAX_SECTORS = 255, | 1363 | BLK_SAFE_MAX_SECTORS = 255, |
| @@ -1469,7 +1474,7 @@ static inline int bdev_alignment_offset(struct block_device *bdev) · 110 unmodified lines | |||
| 1469 | 1474 | ||
| 1470 | if (q->limits.misaligned) | 1475 | if (q->limits.misaligned) |
| 1471 | return -1; | 1476 | return -1; |
| 1472 | if (bdev != bdev->bd_contains) | 1477 | if (bdev_is_partition(bdev)) |
| 1473 | return queue_limit_alignment_offset(&q->limits, | 1478 | return queue_limit_alignment_offset(&q->limits, |
| 1474 | bdev->bd_part->start_sect); | 1479 | bdev->bd_part->start_sect); |
| 1475 | return q->limits.alignment_offset; | 1480 | return q->limits.alignment_offset; |
| @@ -1510,7 +1515,7 @@ static inline int bdev_discard_alignment(struct block_device *bdev) · 34 unmodified lines | |||
| 1510 | { | 1515 | { |
| 1511 | struct request_queue *q = bdev_get_queue(bdev); | 1516 | struct request_queue *q = bdev_get_queue(bdev); |
| 1512 | 1517 | ||
| 1513 | if (bdev != bdev->bd_contains) | 1518 | if (bdev_is_partition(bdev)) |
| 1514 | return queue_limit_discard_alignment(&q->limits, | 1519 | return queue_limit_discard_alignment(&q->limits, |
| 1515 | bdev->bd_part->start_sect); | 1520 | bdev->bd_part->start_sect); |
| 1516 | return q->limits.discard_alignment; | 1521 | return q->limits.discard_alignment; |