On Thu, May 07, 2020 at 03:50:56PM +0800, Zhen Lei wrote:
> +++ b/mm/page_io.c
> @@ -38,7 +38,7 @@ static struct bio *get_swap_bio(gfp_t gfp_flags,
>  
>               bio->bi_iter.bi_sector = map_swap_page(page, &bdev);
>               bio_set_dev(bio, bdev);
> -             bio->bi_iter.bi_sector <<= PAGE_SHIFT - 9;
> +             bio->bi_iter.bi_sector *= PAGE_SECTORS;
>               bio->bi_end_io = end_io;

This just doesn't look right.  Why is map_swap_page() returning a sector_t
which isn't actually a sector_t?

Reply via email to