Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 10a875f8 authored by Kinglong Mee's avatar Kinglong Mee Committed by Jaegeuk Kim
Browse files

f2fs: fix the fault of calculating blkstart twice



When the zone type is BLK_ZONE_TYPE_CONVENTIONAL, the blkstart is
calculated twice.

Signed-off-by: default avatarKinglong Mee <kinglongmee@gmail.com>
Reviewed-by: default avatarChao Yu <yuchao0@huawei.com>
Signed-off-by: default avatarJaegeuk Kim <jaegeuk@kernel.org>
parent e2f0e962
Loading
Loading
Loading
Loading
+2 −1
Original line number Original line Diff line number Diff line
@@ -796,6 +796,7 @@ static int __f2fs_issue_discard_zone(struct f2fs_sb_info *sbi,
		struct block_device *bdev, block_t blkstart, block_t blklen)
		struct block_device *bdev, block_t blkstart, block_t blklen)
{
{
	sector_t sector, nr_sects;
	sector_t sector, nr_sects;
	block_t lblkstart = blkstart;
	int devi = 0;
	int devi = 0;


	if (sbi->s_ndevs) {
	if (sbi->s_ndevs) {
@@ -813,7 +814,7 @@ static int __f2fs_issue_discard_zone(struct f2fs_sb_info *sbi,
	case BLK_ZONE_TYPE_CONVENTIONAL:
	case BLK_ZONE_TYPE_CONVENTIONAL:
		if (!blk_queue_discard(bdev_get_queue(bdev)))
		if (!blk_queue_discard(bdev_get_queue(bdev)))
			return 0;
			return 0;
		return __f2fs_issue_discard_async(sbi, bdev, blkstart, blklen);
		return __f2fs_issue_discard_async(sbi, bdev, lblkstart, blklen);
	case BLK_ZONE_TYPE_SEQWRITE_REQ:
	case BLK_ZONE_TYPE_SEQWRITE_REQ:
	case BLK_ZONE_TYPE_SEQWRITE_PREF:
	case BLK_ZONE_TYPE_SEQWRITE_PREF:
		sector = SECTOR_FROM_BLOCK(blkstart);
		sector = SECTOR_FROM_BLOCK(blkstart);