Note: "permalinks" may not be as permanent as we would like,
direct links of old sources may well be a few messages off.
Hello,
today I tried to find out, who is the "someone" in the following
drbd syslog messages:
.... State change failed: Device is held open by someone
... drbd0: state = { cs:Connected st:Primary/Secondary ds:UpToDate/UpToDate r--- }
... drbd0: wanted = { cs:Connected st:Secondary/Secondary ds:UpToDate/UpToDate r--- }
Unfortunately I had no success.
Searching the archives I've noticed similar questions came up
here on the list earlier:
http://lists.linbit.com/pipermail/drbd-user/2008-November/010706.html
http://lists.linbit.com/pipermail/drbd-user/2008-August/009954.html
http://lists.linbit.com/pipermail/drbd-user/2007-August/007338.html
(I'm not using ocfs2: The answer Lars Ellenberg gave in the
last citiation didn't apply to my situation here).
I've looked into source and found in drbd_main.c, that the message
above is given, if( ns.role == Secondary && mdev->open_cnt )
Can you imagine a race scenario, where the reference counter ``open_cnt``
might be incremented or decremented wrong? Especially on a dual
quad core (menaing it has 8 active CPU cores) SMP machine?
Any hints, how to find out?
Regards and many thanks in advance, Peter
--
Peter Funk, ✉Oldenburger Str.86, D-27777 Ganderkesee
office: ArtCom GmbH, ✉Haferwende 2, D-28357 Bremen, Germany
tel:+49-421-20419-0 cell:+49-179-640-8878 <http://www.artcom-gmbh.de/>