On 31/12/25(Wed) 12:52, Mark Kettenis wrote: > [...] > So you're allocating a (potentially) largish mbuf cluster. The mbuf > pools use &kp_dma_contig, which means that they ask for phys contig > memory. Even with the smallest (2k) clusters I believe the pool > allocates "poges" of at least 16k. But larger cluster sizes will ask > for much larger pages
If you're hypothesis is correct then reverting the m_getuio() rewrite from kern/uipc_socket.c r1.379 might confirm it. > I think this means that physmem got fragmented to the point where it > is no longer possible to allocate a larger phys contig pool page. > > This has always been a problem There is no easy solution. Very well > possible that the allocation patterns in the kernel changed over time > such that fragmentation is more likely. But it is unfair to blame > mpi@ for that. Thanks for you support Mark, it's greatly appreciated.
