On Wed, Sep 30, 2015 at 07:12:32AM +0000, Ryota Ozaki wrote:
> Modified Files:
>       src/sys/net: if.h if_llatbl.c if_llatbl.h
> 
> Log Message:
> Make GATEWAY (fastforward) work again
> 
> With GATEWAY (fastforward), the whole forwarding processing runs in
> hardware interrupt context. So we cannot use rwlock for lltable and
> llentry in that case.
> 
> This change replaces rwlock with mutex(IPL_NET) for lltable and llentry
> when GATEWAY is enabled. We need to tweak locking only around rtree
> in lltable_free. Other than that, what we need to do is to change macros
> for locks.
> 
> I hope fastforward runs in softint some day in the future...

Well, the point of the fast forwarding code was that the fast forwarding
is done in interrupt context.  If no flow exists the normal (slow)
forwarding path running in softint is used.

--chris

Reply via email to