[DRBD-user] slab.c

Lars Ellenberg Lars.Ellenberg at linbit.com
Wed May 12 16:20:48 CEST 2004

Note: "permalinks" may not be as permanent as we would like,
direct links of old sources may well be a few messages off.


/ 2004-05-12 14:51:03 +0200
\ Stephan Rattai:
> Hi, 
> 
> I'm having a bit trouble with drbd-0.7_pre7. 

again, with 0.7, please use CVS.

unfortunately theres been a typo in drbd-0.7_pre7, which leads to
using the wrong wait_queu name, not using the right spinlock, and 
several threads being able to manipulate a list...
strange and bad things may happen...

> I'm testing with kernel 2.6.6 on a Dual PIII-800 with 512 Megs and a single 
> Xeon 2,4G and 1Gig connected via Gbe. 
> 
> First Problem: I can create a filesystem on /dev/nb0 but when I try to mount 
> it on the secondary node, mount whines about /dev/nb0 already being mounted 
> or the mountpoint being in use which is definetely not the case. dmesg says 
> 
> drbd0: ASSERT( mdev->state == Primary ) 
> in /root/src/drbd-0.7_pre7/drbd/drbd_main.c:1134. 


exactly. thats it. you do not mount on Secondary.
even though you have two (or more, with local raid) physical disks,
think of it as *ONE shared* disk, so to avoid coruption, only the node
which currently is in "Primary" state may access it.

You cannot mount on a node in Secondary state.
first "drbdadm primary <resourcename>", then use it.


> I have absolutely no idea why. On the primary node everything works just fine. 

misunderstanding the concepts...

> The other problem is that the module seems to crash the machine when I try to 
> reload it after it has been unloaded. After having unloaded the module I get:
> 
> drbd0: short read expecting header on sock: r=-512
> drbd0: worker terminated
> drbd0: asender terminated
> drbd0: Connection lost.
> drbd0: receiver terminated
> drbd0: worker terminated
> drbd0: ASSERT( mdev->ee_vacant==0 ) 
> in /root/src/drbd-0.7_pre7/drbd/drbd_main.c:1417
> slab error in kmem_cache_destroy(): cache `drbd_ee_cache': Can't free all 
> objects
> Call Trace:
>  [<c0147595>] kmem_cache_destroy+0xd5/0x120
>  [<e1108ab8>] drbd_destroy_mempools+0x58/0x90 [drbd]
>  [<e1115f15>] drbd_cleanup+0x215/0x4b5 [drbd]
>  [<c01383db>] sys_delete_module+0x15b/0x1b0
>  [<c015264e>] do_munmap+0x16e/0x1f0
>  [<c01062db>] syscall_call+0x7/0xb
> 
> drbd: kmem_cache_destroy(drbd_ee_cache) FAILED

please try again with current CVS.


if it is still reproducable, please try different combinations of
SMP/UP + HIGHMEM/NOHIGHMEM

khanks,

	Lars Ellenberg



More information about the drbd-user mailing list