Source-Changes-D archive

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

Re: CVS commit: src/sys/net



Mindaugas Rasiukevicius wrote:
> "Alexander Nasonov" <alnsn%netbsd.org@localhost> wrote:
> >    JIT case is still broken.
> 
> Right, but that's why JIT is not yet enabled.  I plan to make another round
> of changes, which includes making BPF MP-safe.  Just have not had time yet..

Making it MP-safe is a good idea but I wonder why you want to use code
generator from FreeBSD. They don't handle mbuf chains and as result
they fallback to interpreter for bigger packets.

Their code is not very readable. As I pointed out in a different thread,
there are jumps by 12 bytes. If you don't know binary instruction format,
you have no idea where you're going to jump to (what if your destination
is in a middle of some instruction!).

In order to implement mbuf chains, you have to introduce more jumps and
it'll make the code more messy. On top of it, you have to implement this
thing for all supported architectures.

I recently added mbuf chains handling to my code. I've not yet done any
kernel testing but it worked for me in userspace on arm.

Alex


Home | Main Index | Thread Index | Old Index