On Wed, Nov 26, 2014 at 5:53 PM, Ryota Ozaki <ozak...@netbsd.org> wrote: > On Wed, Nov 26, 2014 at 5:09 PM, Masao Uebayashi <uebay...@gmail.com> wrote: >> I overlooked you've back out the struct callout * dynamic allocation >> part. Can you make it use kmem as I showed? > > Hmm, I'll do so, although I don't yet understand why the pointer version > is better than the embedded version.
You told that the pseudo interfaces have no watchdog/slowtimo. Routers might have thousands of pseudo interfaces. I'd save 10 pointers there. struct ifnet is already too big. But it's also true that callout_t is designed to be opaque to be embedded in other structs.