Thread (9 messages) flat view 9 messages, 5 authors, 2021-08-17

Re: [PATCH v2 1/2] udp: UDP socket send queue repair

From: avagin@gmail.com <hidden>
Date: 2021-08-17 16:30:07
Also in: lkml

On Fri, Aug 13, 2021 at 01:00:12PM +0000, David Laight wrote:
From: Bui Quang Minh
quoted
Sent: 13 August 2021 12:08
...
quoted
The reason we want to dump the packet in send queue is to make to state of the
application consistent. The scenario is that when an application sends UDP
packets via UDP_CORK socket or with MSG_MORE, CRIU comes and checkpoints the
application. If we drop the data in send queue, when application restores, it
sends some more data then turns off the cork and actually sends a packet. The
receiving side may get that packet but it's unusual that the first part of that
packet is missing because we drop it. So we try to solve this problem with some
help from the Linux kernel.
Patient: It hurts if I do xxx.
Doctor: Don't do xxx then.

It has to be more efficient to buffer partial UDP packets
in userspace and only send when all the packet is available.
You are right. It can be more efficient, but we don't have controls over
user-space processes, and they can do whatever the kernel allows them to
do.
	David

-
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help