[Drbd-dev] too small timeout in drbdsetup

Graham, Simon Simon.Graham at stratus.com
Tue Aug 5 14:54:08 CEST 2008


> 
> You have an issue with that 500ms in that function, right ?
> 
> void ensure_drbd_driver_is_present(void)
>...
> We do not experience any issue with the 500ms in our setups, as are
> reports
> about such an issue rather rare. Could you give a more details
> description
> about the conditions you trigger can trigger this ?
> 

FWIW, we see this occasionally in our environment too - usually when the
system is very busy; we're running DRBD in Dom0 of a Xen environment and
when the system is busy, the hypervisor can 'steal' time from Dom0 -
this translates to wall time moving forward with no chance to actually
execute code which can cause the 500ms timer to expire even when the
DRBD module is present.

We see this timeout once or twice a day (in about 2500hrs of total run
time) so it's not terribly prevalent but it's enough to cause issues. 

I must admit (-blush-) that I simply commented out the call to
ensure_drbd_driver_is_present() in our version since I _know_ that the
module is always loaded. I think having a command line option to
drbdsetup that lengthens the timeout or disables the check altogether
would be good.

BTW: There is one other slightly annoying side effect of the check --
every time drbdsetup is run, you get an unexpected event reported if you
are running 'drbdsetup monitor' -- not terribly bad but it confuses
folks debugging issues...

Simon



More information about the drbd-dev mailing list