Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 123ff122 authored by Lars Ellenberg's avatar Lars Ellenberg Committed by Philipp Reisner
Browse files

drbd: trigger tcp_push_pending_frames() for PING and PING_ACK



This should reduce latency for such in-DRBD-protocol "pings",
and may help reduce spurious disconnect/reconnect cycles due to
 "PingAck did not arrive in time."

Signed-off-by: default avatarPhilipp Reisner <philipp.reisner@linbit.com>
Signed-off-by: default avatarLars Ellenberg <lars.ellenberg@linbit.com>
parent 66ce6dbc
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -662,6 +662,11 @@ static int __send_command(struct drbd_connection *connection, int vnr,
			    msg_flags);
	if (data && !err)
		err = drbd_send_all(connection, sock->socket, data, size, 0);
	/* DRBD protocol "pings" are latency critical.
	 * This is supposed to trigger tcp_push_pending_frames() */
	if (!err && (cmd == P_PING || cmd == P_PING_ACK))
		drbd_tcp_nodelay(sock->socket);

	return err;
}