On 10/26/17 4:24 AM, Stephen Hemminger wrote: >> >> The kernel needs a flag that says "give me the message of the buffer is >> large enough; if not just PEEK and tell me the length." That would avoid >> the double call in most cases. > > Actually this has little impact because old code was doing implicit zero > of whole buffer, new code does not. >
The patch calls recvmsg twice; libnl does the same thing. It would be better performance wise to have a flag that allows retrieval of the message if the supplied buffer is large enough and PEEK semantics if not. It was really a comment on how we could do better with proper kernel support.