diff --git a/drivers/md/raid5.c b/drivers/md/raid5.c index 40961dd1777b4a2e2b6fdeb4e3105a30983ca993..a6ff6e1e039b860dae75be66ac96befb20ac5fb6 100644 --- a/drivers/md/raid5.c +++ b/drivers/md/raid5.c @@ -6104,7 +6104,7 @@ static inline sector_t raid5_sync_request(struct mddev *mddev, sector_t sector_n !md_bitmap_start_sync(mddev->bitmap, sector_nr, &sync_blocks, 1) && sync_blocks >= RAID5_STRIPE_SECTORS(conf)) { /* we can skip this block, and probably more */ - sync_blocks /= RAID5_STRIPE_SECTORS(conf); + do_div(sync_blocks, RAID5_STRIPE_SECTORS(conf)); *skipped = 1; /* keep things rounded to whole stripes */ return sync_blocks * RAID5_STRIPE_SECTORS(conf);