Skip to content

Commit 6f91dad

Browse files
committed
Merge branch 'for-6.17/block' into for-next
* for-6.17/block: drbd: add missing kref_get in handle_write_conflicts
2 parents 7e6522c + 00c9c96 commit 6f91dad

1 file changed

Lines changed: 5 additions & 1 deletion

File tree

drivers/block/drbd/drbd_receiver.c

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2500,7 +2500,11 @@ static int handle_write_conflicts(struct drbd_device *device,
25002500
peer_req->w.cb = superseded ? e_send_superseded :
25012501
e_send_retry_write;
25022502
list_add_tail(&peer_req->w.list, &device->done_ee);
2503-
queue_work(connection->ack_sender, &peer_req->peer_device->send_acks_work);
2503+
/* put is in drbd_send_acks_wf() */
2504+
kref_get(&device->kref);
2505+
if (!queue_work(connection->ack_sender,
2506+
&peer_req->peer_device->send_acks_work))
2507+
kref_put(&device->kref, drbd_destroy_device);
25042508

25052509
err = -ENOENT;
25062510
goto out;

0 commit comments

Comments
 (0)