tech-net archive

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

Re: Lockless IP input queue, the pktqueue interface



Hi, rmind.

(2014/05/27 11:52), Mindaugas Rasiukevicius wrote:
Hello,

As we are trying to bring more parallelism in our network stack, I would
like to make IPv4 and IPv6 input queues lockless.  This is implemented by
replacing struct ifqueue and macros around it with a pktqueue interface.
This interface also abstracts and handles network ISR scheduling and that
will allow us to easily add receiver-side packet steering later.

http://www.netbsd.org/~rmind/ip_pktq.diff

The patch makes the following changes:
- Implements pktqueue interface (see pktqueue.{c,h} files).
- Replaces ipintrq and ip6intrq with the pktqueue mechanism.
- Eliminates kernel-lock from ipintr() and ip6intr().
- Some preparation work to push softnet_lock out of ipintr().

Extra testing would be helpful.

Thanks.

 Is the change "New interface for the ifnet queue" in the
following page's table?

        http://www.netbsd.org/~rmind/smpnet/

The implementaion column of "New interface for the ifnet queue"
is blank :)

--
-----------------------------------------------
                SAITOH Masanobu (msaitoh%execsw.org@localhost
                                 msaitoh%netbsd.org@localhost)


Home | Main Index | Thread Index | Old Index