Summary
During a LINSTOR disk migration using linstor resource toggle-disk --migrate-from, DRBD emits a sustained flood of put_ldev assertions:
drbd pm-<randomhex>/0 drbd<id>: ASSERTION i >= 0 FAILED in put_ldev
The assertion storm occurs while the migration transfer is in progress and drops sharply when the transfer completes.
Environment
DRBD module: 9.3.2
LINSTOR controller: 1.33.3-1
LINSTOR satellite: 1.33.3-1
drbd-utils: 9.34.3-1
Kernel: 7.0.6-2-pve
Distribution: Proxmox Virtual Environment 9.2.0, based on Debian 13 trixie, recently updated from 8.4, based on Debian 12 bookworm
Transport: tcp, I think
Trigger
The issue occurs during:
linstor resource toggle-disk \
--storage-pool "$target_storage_pool" \
--migrate-from "$migration_source" \
"$diskless_target_node" \
"$resource"
The goal is to move the secondary replica to another node that is initially diskless.
Observed behavior
During the migration/transfer, the kernel log is flooded with assertions like:
[Mon Jun 29 16:33:07 2026] drbd pm-<randomhex>/0 drbd<id>: ASSERTION i >= 0 FAILED in put_ldev
The observed rate is approximately:
10,000-20,000 assertion messages per second, sustained
The spam dropped sharply when the transfer concluded, from thousands of messages per second to dozens per second.
This made kernel logging effectively unusable during the event. On the affected node, journalctl retained only about 7 minutes of history because the assertion flood displaced older kernel logs.
Expected behavior
A normal LINSTOR disk migration should not trigger repeated put_ldev assertions.
If this assertion can be hit repeatedly in a hot path, it should at least be rate-limited so that it does not flood the kernel log and obscure diagnostic context.
Impact
- 10k-20k kernel log messages per second
- rapid eviction of useful journal history, making it impossible to diagnose other issues should they occur
Correlation with migration
The issue appears tightly correlated with the active transfer window:
- starts during `linstor resource toggle-disk --storage-pool "$target_storage_pool" --migrate-from "$migration_source" "$diskless_target_node" "$resource"`
- continues at very high rate while transfer is active
- drops sharply when the transfer completes
Changelog check
No obvious matching fix was found in the changelog of the upcoming RC (9.3.3-rc.1). The listed fixes include several teardown/resync/connection-related fixes, but none explicitly mention put_ldev, local-device refcounting, or unbalanced local-device references, so I'm not sure if upgrading to the RC would fix those issues.
Summary
During a LINSTOR disk migration using
linstor resource toggle-disk --migrate-from, DRBD emits a sustained flood ofput_ldevassertions:The assertion storm occurs while the migration transfer is in progress and drops sharply when the transfer completes.
Environment
Trigger
The issue occurs during:
The goal is to move the secondary replica to another node that is initially diskless.
Observed behavior
During the migration/transfer, the kernel log is flooded with assertions like:
The observed rate is approximately:
The spam dropped sharply when the transfer concluded, from thousands of messages per second to dozens per second.
This made kernel logging effectively unusable during the event. On the affected node,
journalctlretained only about 7 minutes of history because the assertion flood displaced older kernel logs.Expected behavior
A normal LINSTOR disk migration should not trigger repeated
put_ldevassertions.If this assertion can be hit repeatedly in a hot path, it should at least be rate-limited so that it does not flood the kernel log and obscure diagnostic context.
Impact
Correlation with migration
The issue appears tightly correlated with the active transfer window:
Changelog check
No obvious matching fix was found in the changelog of the upcoming RC (9.3.3-rc.1). The listed fixes include several teardown/resync/connection-related fixes, but none explicitly mention
put_ldev, local-device refcounting, or unbalanced local-device references, so I'm not sure if upgrading to the RC would fix those issues.