tech-net archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

bpf_allocbufs and M_NOWAIT



Hello,
bpf_allocbufs() uses malloc(M_NOWAIT), any reason it can't use M_WAITOK
here ?
on a dhcp server with 48MB RAM (this is a virtual machine, and I don't have
that much RAM availble for this one) serving a lot of network interface,
I see randonly but quite often:
Can't attach interface xennetXX to bpf device /dev/bpf: No buffer space 
available

I guess this comes from bpf_allocbufs(), it's the only place in
BIOCSETIF which can return an error ...

M_WAITOK was changed to M_NOWAIT in rev 1.79, apparently to avoid a
"panic: malloc: out of space in kmem_map"; but these days we have M_CANFAIL ...

-- 
Manuel Bouyer <bouyer%antioche.eu.org@localhost>
     NetBSD: 26 ans d'experience feront toujours la difference
--


Home | Main Index | Thread Index | Old Index