> On 7 Mar 2017, at 05:27, Mike Belopuhov <[email protected]> wrote:
> 
> There's no need to overwrite original flow ID assigned on
> input so that it remains stable throughout the life of a
> packet.  The rationale is that output processing may split,
> encapsulate or obfuscate a single stream which makes the
> changed flow ID useless for purposes of flow control, for
> instance fair sharing of bandwidth, etc.
> 
> Is the diff below OK?
> 
> diff --git sys/net/pf.c sys/net/pf.c
> index f64fdc4c80d..f3a5717be4a 100644
> --- sys/net/pf.c
> +++ sys/net/pf.c
> @@ -6779,11 +6779,11 @@ done:
>               pd.m->m_pkthdr.pf.inp->inp_pf_sk =
>                   pf_state_key_ref(s->key[PF_SK_STACK]);
>               s->key[PF_SK_STACK]->inp = pd.m->m_pkthdr.pf.inp;
>       }
> 
> -     if (s) {
> +     if (s && (pd.m->m_pkthdr.ph_flowid & M_FLOWID_VALID) == 0) {
>               pd.m->m_pkthdr.ph_flowid = M_FLOWID_VALID |
>                   (M_FLOWID_MASK & bemtoh64(&s->id));
>       }
> 
>       /*
> 

ok.

Reply via email to