I think you send a wrong subject by mistake. Thanks, Joseph On 1/28/21 3:11 PM, Chaitanya Kulkarni wrote: > Signed-off-by: Chaitanya Kulkarni <chaitanya.kulkarni@xxxxxxx> > --- > fs/ocfs2/cluster/heartbeat.c | 6 ++---- > 1 file changed, 2 insertions(+), 4 deletions(-) > > diff --git a/fs/ocfs2/cluster/heartbeat.c b/fs/ocfs2/cluster/heartbeat.c > index 0179a73a3fa2..b34518036446 100644 > --- a/fs/ocfs2/cluster/heartbeat.c > +++ b/fs/ocfs2/cluster/heartbeat.c > @@ -515,12 +515,13 @@ static struct bio *o2hb_setup_one_bio(struct o2hb_region *reg, > unsigned int cs = *current_slot; > struct bio *bio; > struct page *page; > + sector_t sect = (reg->hr_start_block + cs) << (bits - 9); > > /* Testing has shown this allocation to take long enough under > * GFP_KERNEL that the local node can get fenced. It would be > * nicest if we could pre-allocate these bios and avoid this > * all together. */ > - bio = bio_alloc(GFP_ATOMIC, 16); > + bio = bio_new(reg->hr_bdev, sect, op, op_flags, 16, GFP_ATOMIC); > if (!bio) { > mlog(ML_ERROR, "Could not alloc slots BIO!\n"); > bio = ERR_PTR(-ENOMEM); > @@ -528,11 +529,8 @@ static struct bio *o2hb_setup_one_bio(struct o2hb_region *reg, > } > > /* Must put everything in 512 byte sectors for the bio... */ > - bio->bi_iter.bi_sector = (reg->hr_start_block + cs) << (bits - 9); > - bio_set_dev(bio, reg->hr_bdev); > bio->bi_private = wc; > bio->bi_end_io = o2hb_bio_end_io; > - bio_set_op_attrs(bio, op, op_flags); > > vec_start = (cs << bits) % PAGE_SIZE; > while(cs < max_slots) { >