CVSROOT:        /cvs
Module name:    src
Changes by:     clau...@cvs.openbsd.org 2025/07/02 08:50:05

Modified files:
        sys/kern       : uipc_socket.c 

Log message:
Rewrite m_getuio() to better align data in the mbufs

Especially for datagram traffic data should be put at the end of a buffer
that also holds at least max_hdr bytes extra space. Doing so should prevent
the stack from calling m_prepend() later on.

Also handle cluster allocations differently. If there is no cluster available
just wait for memory and stop building stupidly long mbuf chains.
In the very old times the number of clusters was very limited and so this
was kind of needed but this has not been the case for a long time.
Also most drivers will need to m_defrag() such a chain anyway which requires
the same mbuf cluster to succeed.

Joint work with dlg@
OK bluhm@

Reply via email to