15.01.2021 08:35, Arseny Krasnov пишет:
This patchset impelements support of SOCK_SEQPACKET for virtio transport. As SOCK_SEQPACKET guarantees to save record boundaries, so to do it, new packet operation was added: it marks start of record (with record length in header), such packet doesn't carry any data. To send record, packet with start marker is sent first, then all data is sent as usual 'RW' packets. On receiver's side, length of record is known from packet with start record marker. Now as packets of one socket are not reordered neither on vsock nor on vhost transport layers, such marker allows to restore original record on receiver's side. If user's buffer is smaller that
than
record length, when
then
v1 -> v2: - patches reordered: af_vsock.c changes now before virtio vsock - patches reorganized: more small patches, where +/- are not mixed
If you did this because I asked, then this is not what I asked. :) You can't just add some static func in a separate patch, as it will just produce the compilation warning of an unused function. I only asked to separate the refactoring from the new code. I.e. if you move some code block to a separate function, you shouldn't split that into 2 patches, one that adds a code block and another one that removes it. It should be in one patch, so that it is clear what was moved, and no new warnings are introduced. What I asked to separate, is the old code moves with the new code additions. Such things can definitely go in a separate patches. NB: just trying to help, as I already played with your code a bit. I am neither a maintainer nor a contributor here, but it would be cool to have the vsock SEQPACKET support.