DRBD bitmap resize/unlock race leads to BUG at mm/slub.c:553 during detach (9.2.16)

Hi everyone,

My system hit a kernel BUG in the slab free path while DRBD was detaching; crash collected from pstore after reboot.

Versions

DRBD_KERNEL_VERSION_CODE=0x090210
DRBD_KERNEL_VERSION=9.2.16
DRBDADM_VERSION_CODE=0x092100
DRBDADM_VERSION=9.33.0
Kernel: 6.8.0-100-generic (x86_64)

Minimal crash excerpt (sanitised)

drbd ...: drbd_bm_resize called with capacity == 0
drbd ...: drbdsetup[PID] going to 'resize' but bitmap already locked for 'resize' by [PID]
drbd ...: FIXME no bitmap in drbd_bm_unlock!?
------------[ cut here ]------------
kernel BUG at mm/slub.c:553!
invalid opcode: 0000 [#1] PREEMPT SMP NOPTI
Tainted: P OE
RIP: __slab_free+0x152/0x2c0
Call Trace:
drbd_bm_unlock [drbd]
drbd_bm_free [drbd]
kfree
drbd_bm_free [drbd]
drbd_cleanup_device [drbd]
adm_detach [drbd]
drbd_adm_down [drbd]
genl_family_rcv_msg_doit
...
Kernel panic - not syncing: Fatal exception

Questions

  • Is this a known issue in DRBD 9.2.16 around bitmap resize/unlock during detach?

  • Any patches/workarounds or recommended upgrade path?

More Details:

global_common.conf
global {
    usage-count no;
    udev-always-use-vnr;
    disable-ip-verification;
}
common {
    protocol C;
    handlers {
        pri-on-incon-degr "/usr/lib/drbd/notify-pri-on-incon-degr.sh; /usr/lib/drbd/notify-emergency-reboot.sh; echo b > /proc/sysrq-trigger ; reboot -f";
        pri-lost-after-sb "/usr/lib/drbd/notify-pri-lost-after-sb.sh; /usr/lib/drbd/notify-emergency-reboot.sh; echo b > /proc/sysrq-trigger ; reboot -f";
        local-io-error "/usr/lib/drbd/notify-io-error.sh; /usr/lib/drbd/notify-emergency-shutdown.sh; echo o > /proc/sysrq-trigger ; halt -f";
    }
    startup {
        wfc-timeout 1;
    }
    options {
    }
    disk {
        c-fill-target 1M;
        c-max-rate 4096M;
        c-min-rate 1365M;
        resync-rate 1365M;
        on-io-error detach;
        al-extents 1297;
    }
    net {
        after-sb-0pri discard-zero-changes;
        after-sb-1pri consensus;
        after-sb-2pri disconnect;
        rr-conflict call-pri-lost;
        max-buffers 8000;
        max-epoch-size 8000;
        sndbuf-size 0;
        csums-alg md5;
        timeout 60;
        ko-count 7;
        verify-alg sha256;
    }
}
dmesg drbd context
1-<6>[ 4700.075659] drbd <UUID>-1-dat: State change 387530487: primary_nodes=0, weak_nodes=0
2-<6>[ 4700.075663] drbd <UUID>-1-dat: Committing cluster-wide state change 387530487 (1ms)
3-<6>[ 4700.075674] drbd <UUID>-1-dat: role( Primary -> Secondary ) [down]
4-<6>[ 4700.076110] drbd <UUID>-1-dat: Preparing cluster-wide state change 2603503618: 1->0 conn( Disconnecting )
5-<6>[ 4700.076608] drbd <UUID>-1-dat: State change 2603503618: primary_nodes=0, weak_nodes=0
6-<6>[ 4700.076611] drbd <UUID>-1-dat <PEER>: Cluster is now split
7-<6>[ 4700.076613] drbd <UUID>-1-dat: Committing cluster-wide state change 2603503618 (1ms)
8-<6>[ 4700.076623] drbd <UUID>-1-dat <PEER>: conn( Connected -> Disconnecting ) peer( Secondary -> Unknown ) [down]
9-<6>[ 4700.076626] drbd <UUID>-1-dat/0 drbd1016 <PEER>: pdsk( UpToDate -> DUnknown ) repl( Established -> Off ) [down]
10-<6>[ 4700.076688] drbd <UUID>-1-dat <PEER>: Terminating sender thread
11-<6>[ 4700.076737] drbd <UUID>-1-dat <PEER>: Starting sender thread (peer-node-id 0)
12-<6>[ 4700.085136] drbd <UUID>-1-dat <PEER>: Connection closed
13-<6>[ 4700.085145] drbd <UUID>-1-dat <PEER>: helper command: /sbin/drbdadm disconnected
14-<6>[ 4700.085765] drbd /unregistered/<UUID>-1-cfg: Terminating worker thread
15-<4>[ 4705.112481] drbd <UUID>-1-dat <PEER>: helper command: /sbin/drbdadm disconnected exit code 20 (0x1400)
16-<6>[ 4705.112526] drbd <UUID>-1-dat <PEER>: conn( Disconnecting -> StandAlone ) [disconnected]
17-<6>[ 4705.112532] drbd <UUID>-1-dat <PEER>: Terminating receiver thread
18-<6>[ 4705.112577] drbd <UUID>-1-dat <PEER>: Terminating sender thread
19-<6>[ 4705.223555] drbd <UUID>-1-dat/0 drbd1016: disk( UpToDate -> Detaching ) [down]
20:<6>[ 4705.223596] drbd <UUID>-1-dat/0 drbd1016: drbd_bm_resize called with capacity == 0
21:<6>[ 4705.223611] drbd <UUID>-1-dat/0 drbd1016: disk( Detaching -> Diskless ) [go-diskless]
22-<6>[ 4705.753250] drbd <UUID>-1-cfg: Preparing cluster-wide state change 2054929065: 1->all role( Secondary )
23-<6>[ 4705.753544] drbd <UUID>-1-cfg: State change 2054929065: primary_nodes=0, weak_nodes=0
24-<6>[ 4705.753549] drbd <UUID>-1-cfg: Committing cluster-wide state change 2054929065 (1ms)
25-<6>[ 4705.753573] drbd <UUID>-1-cfg: role( Primary -> Secondary ) [down]
26-<6>[ 4705.754147] drbd <UUID>-1-cfg: Preparing cluster-wide state change 2617385148: 1->0 conn( Disconnecting )
27-<6>[ 4705.754596] drbd <UUID>-1-cfg: State change 2617385148: primary_nodes=0, weak_nodes=0
28-<6>[ 4705.754599] drbd <UUID>-1-cfg <PEER>: Cluster is now split
29-<6>[ 4705.754600] drbd <UUID>-1-cfg: Committing cluster-wide state change 2617385148 (1ms)
30-<6>[ 4705.754611] drbd <UUID>-1-cfg <PEER>: conn( Connected -> Disconnecting ) peer( Secondary -> Unknown ) [down]
31-<6>[ 4705.754613] drbd <UUID>-1-cfg/0 drbd1017 <PEER>: pdsk( UpToDate -> DUnknown ) repl( Established -> Off ) [down]
32-<6>[ 4705.754696] drbd <UUID>-1-cfg <PEER>: Terminating sender thread
33-<6>[ 4705.754720] drbd <UUID>-1-cfg <PEER>: Starting sender thread (peer-node-id 0)
34-<6>[ 4705.763647] drbd /unregistered/<UUID>-1-dat: Terminating worker thread
35-<6>[ 4705.786874] drbd <UUID>-1-cfg <PEER>: Connection closed
36-<6>[ 4705.786884] drbd <UUID>-1-cfg <PEER>: helper command: /sbin/drbdadm disconnected
37-<4>[ 4710.817100] drbd <UUID>-1-cfg <PEER>: helper command: /sbin/drbdadm disconnected exit code 20 (0x1400)
38-<6>[ 4710.817132] drbd <UUID>-1-cfg <PEER>: conn( Disconnecting -> StandAlone ) [disconnected]
39-<6>[ 4710.817138] drbd <UUID>-1-cfg <PEER>: Terminating receiver thread
40-<6>[ 4710.817184] drbd <UUID>-1-cfg <PEER>: Terminating sender thread
41-<6>[ 4710.928457] drbd <UUID>-1-cfg/0 drbd1017: disk( UpToDate -> Detaching ) [down]
42:<6>[ 4710.928501] drbd <UUID>-1-cfg/0 drbd1017: drbd_bm_resize called with capacity == 0
43:<6>[ 4710.928532] drbd <UUID>-1-cfg/0 drbd1017: disk( Detaching -> Diskless ) [go-diskless]
44-<6>[ 4711.272189] drbd <UUID>-1-dat: Preparing cluster-wide state change 14124492: 1->all role( Secondary )
45-<6>[ 4711.272477] drbd <UUID>-1-dat: State change 14124492: primary_nodes=0, weak_nodes=0
46-<6>[ 4711.272481] drbd <UUID>-1-dat: Committing cluster-wide state change 14124492 (1ms)
47-<6>[ 4711.272493] drbd <UUID>-1-dat: role( Primary -> Secondary ) [down]
48-<6>[ 4711.275883] drbd <UUID>-1-dat: Preparing cluster-wide state change 853377929: 1->0 conn( Disconnecting )
49-<6>[ 4711.276409] drbd <UUID>-1-dat: State change 853377929: primary_nodes=0, weak_nodes=0
50-<6>[ 4711.276415] drbd <UUID>-1-dat <PEER>: Cluster is now split
51-<6>[ 4711.276417] drbd <UUID>-1-dat: Committing cluster-wide state change 853377929 (1ms)
52-<6>[ 4711.276440] drbd <UUID>-1-dat <PEER>: conn( Connected -> Disconnecting ) peer( Secondary -> Unknown ) [down]
53-<6>[ 4711.276444] drbd <UUID>-1-dat/0 drbd1018 <PEER>: pdsk( UpToDate -> DUnknown ) repl( Established -> Off ) [down]
54-<6>[ 4711.276518] drbd <UUID>-1-dat <PEER>: Terminating sender thread
55-<6>[ 4711.276561] drbd <UUID>-1-dat <PEER>: Starting sender thread (peer-node-id 0)
56-<6>[ 4711.323411] drbd /unregistered/<UUID>-1-cfg: Terminating worker thread
57-<6>[ 4711.362143] drbd <UUID>-1-dat <PEER>: Connection closed
58-<6>[ 4711.362153] drbd <UUID>-1-dat <PEER>: helper command: /sbin/drbdadm disconnected
59-<4>[ 4716.389736] drbd <UUID>-1-dat <PEER>: helper command: /sbin/drbdadm disconnected exit code 20 (0x1400)
60-<6>[ 4716.389765] drbd <UUID>-1-dat <PEER>: conn( Disconnecting -> StandAlone ) [disconnected]
61-<6>[ 4716.389771] drbd <UUID>-1-dat <PEER>: Terminating receiver thread
62-<6>[ 4716.389821] drbd <UUID>-1-dat <PEER>: Terminating sender thread
63-<6>[ 4716.464353] drbd <UUID>-1-dat/0 drbd1018: disk( UpToDate -> Detaching ) [down]
64:<6>[ 4716.464393] drbd <UUID>-1-dat/0 drbd1018: drbd_bm_resize called with capacity == 0
65:<6>[ 4716.464412] drbd <UUID>-1-dat/0 drbd1018: disk( Detaching -> Diskless ) [go-diskless]
66-<6>[ 4717.012026] drbd <UUID>-1-cfg: Preparing cluster-wide state change 1636666767: 1->all role( Secondary )
67-<6>[ 4717.012313] drbd <UUID>-1-cfg: State change 1636666767: primary_nodes=0, weak_nodes=0
68-<6>[ 4717.012317] drbd <UUID>-1-cfg: Committing cluster-wide state change 1636666767 (1ms)
69-<6>[ 4717.012329] drbd <UUID>-1-cfg: role( Primary -> Secondary ) [down]
70-<6>[ 4717.012748] drbd <UUID>-1-cfg: Preparing cluster-wide state change 2101862626: 1->0 conn( Disconnecting )
71-<6>[ 4717.013246] drbd <UUID>-1-cfg: State change 2101862626: primary_nodes=0, weak_nodes=0
72-<6>[ 4717.013248] drbd <UUID>-1-cfg <PEER>: Cluster is now split
73-<6>[ 4717.013250] drbd <UUID>-1-cfg: Committing cluster-wide state change 2101862626 (0ms)
74-<6>[ 4717.013260] drbd <UUID>-1-cfg <PEER>: conn( Connected -> Disconnecting ) peer( Secondary -> Unknown ) [down]
75-<6>[ 4717.013263] drbd <UUID>-1-cfg/0 drbd1019 <PEER>: pdsk( UpToDate -> DUnknown ) repl( Established -> Off ) [down]
76-<6>[ 4717.013324] drbd <UUID>-1-cfg <PEER>: Terminating sender thread
77-<6>[ 4717.013349] drbd <UUID>-1-cfg <PEER>: Starting sender thread (peer-node-id 0)
78-<6>[ 4717.014307] drbd /unregistered/<UUID>-1-dat: Terminating worker thread
79-<6>[ 4717.063875] drbd <UUID>-1-cfg <PEER>: Connection closed
80-<6>[ 4717.063885] drbd <UUID>-1-cfg <PEER>: helper command: /sbin/drbdadm disconnected
81-<4>[ 4722.090674] drbd <UUID>-1-cfg <PEER>: helper command: /sbin/drbdadm disconnected exit code 20 (0x1400)
82-<6>[ 4722.090703] drbd <UUID>-1-cfg <PEER>: conn( Disconnecting -> StandAlone ) [disconnected]
83-<6>[ 4722.090709] drbd <UUID>-1-cfg <PEER>: Terminating receiver thread
84-<6>[ 4722.090750] drbd <UUID>-1-cfg <PEER>: Terminating sender thread
85-<6>[ 4722.217306] drbd <UUID>-1-cfg/0 drbd1019: disk( UpToDate -> Detaching ) [down]
86:<6>[ 4722.217349] drbd <UUID>-1-cfg/0 drbd1019: drbd_bm_resize called with capacity == 0
87:<6>[ 4722.217379] drbd <UUID>-1-cfg/0 drbd1019: disk( Detaching -> Diskless ) [go-diskless]
88-<6>[ 4722.562829] drbd <UUID>-1-dat: Preparing cluster-wide state change 3782904909: 1->all role( Secondary )
89-<6>[ 4722.563121] drbd <UUID>-1-dat: State change 3782904909: primary_nodes=0, weak_nodes=0
90-<6>[ 4722.563125] drbd <UUID>-1-dat: Committing cluster-wide state change 3782904909 (0ms)
91-<6>[ 4722.563136] drbd <UUID>-1-dat: role( Primary -> Secondary ) [down]
92-<6>[ 4722.563588] drbd <UUID>-1-dat: Preparing cluster-wide state change 3736661964: 1->0 conn( Disconnecting )
93-<6>[ 4722.564072] drbd <UUID>-1-dat: State change 3736661964: primary_nodes=0, weak_nodes=0
94-<6>[ 4722.564076] drbd <UUID>-1-dat <PEER>: Cluster is now split
95-<6>[ 4722.564077] drbd <UUID>-1-dat: Committing cluster-wide state change 3736661964 (0ms)
96-<6>[ 4722.564089] drbd <UUID>-1-dat <PEER>: conn( Connected -> Disconnecting ) peer( Secondary -> Unknown ) [down]
97-<6>[ 4722.564092] drbd <UUID>-1-dat/0 drbd1020 <PEER>: pdsk( UpToDate -> DUnknown ) repl( Established -> Off ) [down]
98-<6>[ 4722.564159] drbd <UUID>-1-dat <PEER>: Terminating sender thread
99-<6>[ 4722.564198] drbd <UUID>-1-dat <PEER>: Starting sender thread (peer-node-id 0)
100-<6>[ 4722.565237] drbd /unregistered/<UUID>-1-cfg: Terminating worker thread
101-<6>[ 4722.614579] drbd <UUID>-1-dat <PEER>: Connection closed
102-<6>[ 4722.614588] drbd <UUID>-1-dat <PEER>: helper command: /sbin/drbdadm disconnected
103-<4>[ 4727.641429] drbd <UUID>-1-dat <PEER>: helper command: /sbin/drbdadm disconnected exit code 20 (0x1400)
104-<6>[ 4727.641457] drbd <UUID>-1-dat <PEER>: conn( Disconnecting -> StandAlone ) [disconnected]
105-<6>[ 4727.641462] drbd <UUID>-1-dat <PEER>: Terminating receiver thread
106-<6>[ 4727.641524] drbd <UUID>-1-dat <PEER>: Terminating sender thread
107-<6>[ 4727.758177] drbd <UUID>-1-dat/0 drbd1020: disk( UpToDate -> Detaching ) [down]
108:<6>[ 4727.758209] drbd <UUID>-1-dat/0 drbd1020: drbd_bm_resize called with capacity == 0
109:<6>[ 4727.758225] drbd <UUID>-1-dat/0 drbd1020: disk( Detaching -> Diskless ) [go-diskless]
110-<6>[ 4728.363916] drbd <UUID>-1-cfg: Preparing cluster-wide state change 1750581167: 1->all role( Secondary )
111-<6>[ 4728.364200] drbd <UUID>-1-cfg: State change 1750581167: primary_nodes=0, weak_nodes=0
112-<6>[ 4728.364203] drbd <UUID>-1-cfg: Committing cluster-wide state change 1750581167 (1ms)
113-<6>[ 4728.364217] drbd <UUID>-1-cfg: role( Primary -> Secondary ) [down]
114-<6>[ 4728.364651] drbd <UUID>-1-cfg: Preparing cluster-wide state change 1491318722: 1->0 conn( Disconnecting )
115-<6>[ 4728.365169] drbd <UUID>-1-cfg: State change 1491318722: primary_nodes=0, weak_nodes=0
116-<6>[ 4728.365172] drbd <UUID>-1-cfg <PEER>: Cluster is now split
117-<6>[ 4728.365174] drbd <UUID>-1-cfg: Committing cluster-wide state change 1491318722 (1ms)
118-<6>[ 4728.365185] drbd <UUID>-1-cfg <PEER>: conn( Connected -> Disconnecting ) peer( Secondary -> Unknown ) [down]
119-<6>[ 4728.365187] drbd <UUID>-1-cfg/0 drbd1011 <PEER>: pdsk( UpToDate -> DUnknown ) repl( Established -> Off ) [down]
120-<6>[ 4728.365251] drbd <UUID>-1-cfg <PEER>: Terminating sender thread
121-<6>[ 4728.365262] drbd <UUID>-1-cfg <PEER>: Starting sender thread (peer-node-id 0)
122-<6>[ 4728.381100] drbd /unregistered/<UUID>-1-dat: Terminating worker thread
123-<6>[ 4728.384531] drbd <UUID>-1-cfg <PEER>: Connection closed
124-<6>[ 4728.384541] drbd <UUID>-1-cfg <PEER>: helper command: /sbin/drbdadm disconnected
125-<4>[ 4733.411782] drbd <UUID>-1-cfg <PEER>: helper command: /sbin/drbdadm disconnected exit code 20 (0x1400)
126-<6>[ 4733.411809] drbd <UUID>-1-cfg <PEER>: conn( Disconnecting -> StandAlone ) [disconnected]
127-<6>[ 4733.411814] drbd <UUID>-1-cfg <PEER>: Terminating receiver thread
128-<6>[ 4733.411877] drbd <UUID>-1-cfg <PEER>: Terminating sender thread
129-<6>[ 4733.496021] drbd <UUID>-1-cfg/0 drbd1011: disk( UpToDate -> Detaching ) [down]
130:<6>[ 4733.496055] drbd <UUID>-1-cfg/0 drbd1011: drbd_bm_resize called with capacity == 0
131:<6>[ 4733.496130] drbd <UUID>-1-cfg/0 drbd1011: disk( Detaching -> Diskless ) [go-diskless]
132-<6>[ 4733.742527] drbd <UUID>-1-dat: Preparing cluster-wide state change 3753270375: 1->all role( Secondary )
133-<6>[ 4733.742814] drbd <UUID>-1-dat: State change 3753270375: primary_nodes=0, weak_nodes=0
134-<6>[ 4733.742818] drbd <UUID>-1-dat: Committing cluster-wide state change 3753270375 (0ms)
135-<6>[ 4733.742829] drbd <UUID>-1-dat: role( Primary -> Secondary ) [down]
136-<6>[ 4733.743338] drbd <UUID>-1-dat: Preparing cluster-wide state change 793365399: 1->0 conn( Disconnecting )
137-<6>[ 4733.743781] drbd <UUID>-1-dat: State change 793365399: primary_nodes=0, weak_nodes=0
138-<6>[ 4733.743784] drbd <UUID>-1-dat <PEER>: Cluster is now split
139-<6>[ 4733.743786] drbd <UUID>-1-dat: Committing cluster-wide state change 793365399 (0ms)
140-<6>[ 4733.743797] drbd <UUID>-1-dat <PEER>: conn( Connected -> Disconnecting ) peer( Secondary -> Unknown ) [down]
141-<6>[ 4733.743800] drbd <UUID>-1-dat/0 drbd1012 <PEER>: pdsk( UpToDate -> DUnknown ) repl( Established -> Off ) [down]
142-<6>[ 4733.743859] drbd <UUID>-1-dat <PEER>: Terminating sender thread
143-<6>[ 4733.743881] drbd <UUID>-1-dat <PEER>: Starting sender thread (peer-node-id 0)
144-<6>[ 4733.765446] drbd <UUID>-1-dat <PEER>: Connection closed
145-<6>[ 4733.765455] drbd <UUID>-1-dat <PEER>: helper command: /sbin/drbdadm disconnected
146-<6>[ 4733.766002] drbd /unregistered/<UUID>-1-cfg: Terminating worker thread
147-<4>[ 4738.792327] drbd <UUID>-1-dat <PEER>: helper command: /sbin/drbdadm disconnected exit code 20 (0x1400)
148-<6>[ 4738.792356] drbd <UUID>-1-dat <PEER>: conn( Disconnecting -> StandAlone ) [disconnected]
149-<6>[ 4738.792361] drbd <UUID>-1-dat <PEER>: Terminating receiver thread
150-<6>[ 4738.792417] drbd <UUID>-1-dat <PEER>: Terminating sender thread
151-<6>[ 4738.931939] drbd <UUID>-1-dat/0 drbd1012: disk( UpToDate -> Detaching ) [down]
152:<6>[ 4738.931985] drbd <UUID>-1-dat/0 drbd1012: drbd_bm_resize called with capacity == 0
153-<4>[ 4738.932000] drbd <UUID>-1-dat/0 drbd1012: drbdsetup[588101] going to 'resize' but bitmap already locked for 'resize' by [42891]
154:<6>[ 4738.932003] drbd <UUID>-1-dat/0 drbd1012: disk( Detaching -> Diskless ) [go-diskless]
155:<6>[ 4738.932005] drbd <UUID>-1-dat/0 drbd1012: drbd_bm_resize called with capacity == 0
156:<3>[ 4738.932008] drbd <UUID>-1-dat/0 drbd1012: FIXME no bitmap in drbd_bm_unlock!?
157-<4>[ 4738.932378] ------------[ cut here ]------------
oops
<4>[ 4738.932378] ------------[ cut here ]------------
<2>[ 4738.932381] kernel BUG at mm/slub.c:553!
<4>[ 4738.932697] invalid opcode: 0000 [#1] PREEMPT SMP NOPTI
<4>[ 4738.933000] CPU: 2 PID: <PID> Comm: drbdsetup Tainted: P           OE      6.8.0-100-generic
<4>[ 4738.933310] Hardware name: Dell Inc. PowerEdge T440/021KCD, BIOS 2.4.8 11/27/2019
<4>[ 4738.933611] RIP: e030:__slab_free+0x152/0x2c0
<4>[ 4738.933897] Code: 00 4c 89 ff e8 4f 43 dd 00 48 8b 14 24 48 8b 4c 24 20 48 89 44 24 08 48 8b 03 48 c1 e8 09 83 e0 01 88 44 24 13 e9 71 ff ff ff <0f> 0b 41 f7 44 24 08 00 0d 21 00 75 b2 eb a8 41 f7 44 24 08 00 0d
<4>[ 4738.934477] RSP: e02b:ffffc9007153b5d0 EFLAGS: 00010246
<4>[ 4738.934773] RAX: ffff8881d4b4fe00 RBX: ffffea000752d200 RCX: 000000008020001a
<4>[ 4738.935068] RDX: ffff8881d4b4fc00 RSI: ffffea000752d200 RDI: ffffc9007153b640
<4>[ 4738.935367] RBP: ffffc9007153b670 R08: 0000000000000001 R09: ffffffffc1011a3c
<4>[ 4738.935662] R10: 0000000000000000 R11: 0000000000000000 R12: ffff888100049300
<4>[ 4738.935955] R13: ffff8881d4b4fc00 R14: ffffffffc1011a3c R15: ffff8881024b31c0
<4>[ 4738.936255] FS:  0000703c46fcf740(0000) GS:ffff8890a1b00000(0000) knlGS:0000000000000000
<4>[ 4738.936556] CS:  e030 DS: 0000 ES: 0000 CR0: 0000000080050033
<4>[ 4738.936853] CR2: 00007217cfff2938 CR3: 00000001d3a70000 CR4: 0000000000050660
<4>[ 4738.937156] Call Trace:
<4>[ 4738.937452]  <TASK>
<4>[ 4738.937745]  ? drbd_bm_unlock+0xf9/0x110 [drbd]
<4>[ 4738.938062]  ? drbd_bm_free+0x2c/0x50 [drbd]
<4>[ 4738.938366]  kfree+0x2ca/0x370
<4>[ 4738.938652]  drbd_bm_free+0x2c/0x50 [drbd]
<4>[ 4738.938946]  drbd_cleanup_device+0x28/0x50 [drbd]
<4>[ 4738.939246]  adm_detach+0x21c/0x410 [drbd]
<4>[ 4738.939544]  ? __pfx_autoremove_wake_function+0x10/0x10
<4>[ 4738.939822]  drbd_adm_down+0x25c/0x460 [drbd]
<4>[ 4738.940117]  genl_family_rcv_msg_doit+0xf7/0x160
<4>[ 4738.940396]  genl_family_rcv_msg+0x184/0x250
<4>[ 4738.940669]  ? __pfx_drbd_adm_down+0x10/0x10 [drbd]
<4>[ 4738.940961]  genl_rcv_msg+0x4c/0xb0
<4>[ 4738.941229]  ? __pfx_genl_rcv_msg+0x10/0x10
<4>[ 4738.941494]  netlink_rcv_skb+0x5a/0x110
<4>[ 4738.941756]  genl_rcv+0x28/0x50
<4>[ 4738.942018]  netlink_unicast+0x289/0x3d0
<4>[ 4738.942274]  netlink_sendmsg+0x214/0x470
<4>[ 4738.942529]  sock_write_iter+0x18e/0x1a0
<4>[ 4738.942783]  vfs_write+0x3d2/0x470
<4>[ 4738.943032]  ksys_write+0xc9/0x100
<4>[ 4738.943281]  __x64_sys_write+0x19/0x30
<4>[ 4738.943520]  x64_sys_call+0x7e/0x25a0
<4>[ 4738.943763]  do_syscall_64+0x7f/0x180
<4>[ 4738.944001]  ? xen_set_pte+0x1f/0x80
<4>[ 4738.944237]  ? set_ptes.isra.0+0x21/0xa0
<4>[ 4738.944467]  ? _raw_spin_unlock+0xe/0x40
<4>[ 4738.944699]  ? do_anonymous_page+0x1a3/0x430
<4>[ 4738.944968]  ? handle_pte_fault+0x1cb/0x1d0
<4>[ 4738.945193]  ? __handle_mm_fault+0x654/0x790
<4>[ 4738.945415]  ? __count_memcg_events+0x6b/0x120
<4>[ 4738.945630]  ? count_memcg_events.constprop.0+0x34/0x50
<4>[ 4738.945845]  ? handle_mm_fault+0xad/0x380
<4>[ 4738.946055]  ? arch_exit_to_user_mode_prepare.isra.0+0x1a/0xe0
<4>[ 4738.946263]  ? irqentry_exit_to_user_mode+0x38/0x1e0
<4>[ 4738.946471]  ? irqentry_exit+0x43/0x50
<4>[ 4738.946666]  ? clear_bhb_loop+0x30/0x80
<4>[ 4738.946852]  ? clear_bhb_loop+0x30/0x80
<4>[ 4738.947032]  ? clear_bhb_loop+0x30/0x80
<4>[ 4738.947206]  entry_SYSCALL_64_after_hwframe+0x78/0x80
<4>[ 4738.947386] RIP: 0033:0x703c470ee5a4
<4>[ 4738.947574] Code: c7 00 16 00 00 00 b8 ff ff ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 f3 0f 1e fa 80 3d a5 ea 0e 00 00 74 13 b8 01 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 54 c3 0f 1f 00 55 48 89 e5 48 83 ec 20 48 89
<4>[ 4738.947949] RSP: 002b:00007ffe0bc2c268 EFLAGS: 00000202 ORIG_RAX: 0000000000000001
<4>[ 4738.948143] RAX: ffffffffffffffda RBX: 00005dd44b305e10 RCX: 0000703c470ee5a4
<4>[ 4738.948334] RDX: 0000000000000050 RSI: 00005dd44b305e10 RDI: 0000000000000003
<4>[ 4738.948523] RBP: 00007ffe0bc2c2a0 R08: 0000000000000000 R09: 00000000ffffffff
<4>[ 4738.948710] R10: 00005dd4476377ee R11: 0000000000000202 R12: 0000000000000050
<4>[ 4738.948899] R13: 0000000000000003 R14: 0000000000000050 R15: 00005dd447637099
<4>[ 4738.949130]  </TASK>
<4>[ 4738.949315] Modules linked in: tls nls_iso8859_1 cls_cgroup sch_htb uas usb_storage drbd_transport_tcp(OE) drbd(OE) lru_cache bridge stp llc dummy cmdlinepart spi_nor mtd wmi_bmof dell_smbios mei_me dell_wmi_descriptor mgag200 i2c_algo_bit tg3 mei i2c_i801 spi_intel_pci lpc_ich i2c_smbus spi_intel ipmi_ssif acpi_power_meter intel_pch_thermal mac_hid acpi_ipmi ipmi_si xt_owner ipmi_devintf ipmi_msghandler xt_multiport xt_hl xt_tcpudp xt_conntrack nft_log xt_NFLOG nft_compat dell_rbu nft_chain_nat nf_nat nf_tables dcdbas nfnetlink_log cfg80211 binfmt_misc sch_fq_codel xen_pciback xen_netback xen_blkback nvme_fabrics nvme_keyring nvme_core nvme_auth xen_gntalloc xen_gntdev xen_evtchn xenfs nfnetlink dmi_sysfs ip_tables x_tables autofs4 raid10 raid0 xen_privcmd usbhid hid_generic hid zstd zram zfs(POE) spl(OE) nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 aufs raid1 dm_raid raid456 async_raid6_recov async_memcpy async_pq async_xor async_tx xor raid6_pq libcrc32c megaraid_sas ahci xhci_pci efi_pstore xhci_pci_renesas libahci
<4>[ 4738.949387]  wmi
<4>[ 4738.951729] ---[ end trace 0000000000000000 ]---