git: kernel - PF SMP work - fix RDR rules

Matthew Dillon dillon at
Tue Aug 12 17:00:13 PDT 2014

commit 2b3d9c10edad0a8f26ac702a9206d525aa5cb5f3
Author: Matthew Dillon <dillon at>
Date:   Tue Aug 12 16:57:16 2014 -0700

    kernel - PF SMP work - fix RDR rules
    * Use the global state table for all global-flagged state.  RDR
      rules can apparently cause PF_SK_WIRE/PF_SK_STACK to be
      reversed so our global state table tests which only used
      PF_SK_WIRE for GLOBAL-flagged translations were not sufficient.
    * Fixes issues with the reverse packet direction for a rdr
      rule not finding the reverse state.
    * Note that RDR rules will not be SMP-optimal.
    * Adds a bit more overhead for NAT translations which are not
      SMP optimal (however, most NAT translations select a port
      that will be SMP optimal).
    Reported-by: alexh

Summary of changes:
 sys/net/pf/pf.c | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)

DragonFly BSD source repository

More information about the Commits mailing list