DRBD: ASSERT in drbd_actlog.c:259

From: Wolfgang Walter
Date: Fri Nov 11 2016 - 12:55:04 EST


Hello,

when I execute

mkfs.ext4 -J device=UUID=625d871f-c278-4acb-916d-774dc78dbd8a -v -b 4096 -E stride=$((512/4)),stripe_width=$((512/4*3)),lazy_itable_init=0 -O inline_data,mmp -L dyn -m .01 /dev/test/big

the command hangs and the kernel (4.4.30) complains:

block drbd1: ASSERT( (unsigned)(last - first) <= 1 ) in drivers/block/drbd/drbd_actlog.c:259
block drbd2: ASSERT( (unsigned)(last - first) <= 1 ) in drivers/block/drbd/drbd_actlog.c:259
block drbd1: ASSERT( (unsigned)(last - first) <= 1 ) in drivers/block/drbd/drbd_actlog.c:259
block drbd3: ASSERT( (unsigned)(last - first) <= 1 ) in drivers/block/drbd/drbd_actlog.c:259
block drbd2: ASSERT( (unsigned)(last - first) <= 1 ) in drivers/block/drbd/drbd_actlog.c:259
block drbd3: ASSERT( (unsigned)(last - first) <= 1 ) in drivers/block/drbd/drbd_actlog.c:259

This does _not_ happen if I use

mkfs.ext4 -J device=UUID=625d871f-c278-4acb-916d-774dc78dbd8a -v -b 4096 -E stride=$((512/4)),stripe_width=$((512/4*3)),lazy_itable_init=0, nodiscard -O inline_data,mmp -L dyn -m .01 /dev/export/dyn

drbd1, drbd2 and drbd3 are three volumes of one resource. These three drbd devices are physical volumes of a volume group test with an LV big. test/big uses drbd1 ... drbd3 as backing devices (striped; stripesize ist 512k.


Regards,
--
Wolfgang Walter
Studentenwerk München
Anstalt des öffentlichen Rechts