Date: Thu, 25 Mar 1999 21:08:10 -0600 From: Jonathan Lemon <jlemon@americantv.com> To: dg@root.com Cc: dillon@apollo.backplane.com, freebsd-hackers@FreeBSD.ORG Subject: Re: 3.1-STABLE dies on 40+ connects Message-ID: <19990325210810.58396@right.PCS> In-Reply-To: <199903260038.QAA29722@implode.root.com>; from David Greenman on Mar 03, 1999 at 04:38:24PM -0800 References: <199903260017.SAA13252@free.pcs> <199903260038.QAA29722@implode.root.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mar 03, 1999 at 04:38:24PM -0800, David Greenman wrote: > >Can someone give a short explanation (or a pointer to the relevant code) > >as to exactly when a NMBCLUSTER comes into play, instead of using a long > >mbuf chain? > > mbufs and mbuf clusters are allocated from the same VM map (chunk of kernel > virtual address space). It's the space in the VM map that is actually running > out, so allocating one type of buffer over another isn't a solution. So that would explain why I see the peak value for NMBCLUSTERS exceeding the max; the system allocated more, and then ran out of space in the vm map. But what I was really asking was at what point does the system decide to put data in a cluster as opposed to putting it into a normal mbuf and then tacking it onto the mbuf chain? As I understand it, the NIC DMA's data directly into mbufs on it's receive ring; are these then passed to ether_input. Are the buffers that the NIC uses always clusters? -- Jonathan To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19990325210810.58396>