diff options
author | Jamal Hadi Salim <hadi@cyberus.ca> | 2006-04-14 15:03:05 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2006-04-14 15:03:05 -0700 |
commit | 2717096ab41eacdbf07352dca6826b59470eb39a (patch) | |
tree | 9282ac7ffd15bbd41f438201ef76f6deaa23c90a /include/net | |
parent | 6c97e72a162648eaf7c401cfc139493cefa6bed2 (diff) | |
download | op-kernel-dev-2717096ab41eacdbf07352dca6826b59470eb39a.zip op-kernel-dev-2717096ab41eacdbf07352dca6826b59470eb39a.tar.gz |
[XFRM]: Fix aevent timer.
Send aevent immediately if we have sent nothing since last timer and
this is the first packet.
Fixes a corner case when packet threshold is very high, the timer low
and a very low packet rate input which is bursty.
Signed-off-by: Jamal Hadi Salim <hadi@cyberus.ca>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net')
-rw-r--r-- | include/net/xfrm.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/include/net/xfrm.h b/include/net/xfrm.h index 0d5529c..afa508d 100644 --- a/include/net/xfrm.h +++ b/include/net/xfrm.h @@ -143,6 +143,11 @@ struct xfrm_state /* Replay detection state at the time we sent the last notification */ struct xfrm_replay_state preplay; + /* internal flag that only holds state for delayed aevent at the + * moment + */ + u32 xflags; + /* Replay detection notification settings */ u32 replay_maxage; u32 replay_maxdiff; @@ -168,6 +173,9 @@ struct xfrm_state void *data; }; +/* xflags - make enum if more show up */ +#define XFRM_TIME_DEFER 1 + enum { XFRM_STATE_VOID, XFRM_STATE_ACQ, |