|
@@ -499,7 +499,8 @@ struct xfrm_state *xfrm_state_alloc(struct net *net)
|
|
|
INIT_HLIST_NODE(&x->bydst);
|
|
|
INIT_HLIST_NODE(&x->bysrc);
|
|
|
INIT_HLIST_NODE(&x->byspi);
|
|
|
- tasklet_hrtimer_init(&x->mtimer, xfrm_timer_handler, CLOCK_REALTIME, HRTIMER_MODE_ABS);
|
|
|
+ tasklet_hrtimer_init(&x->mtimer, xfrm_timer_handler,
|
|
|
+ CLOCK_BOOTTIME, HRTIMER_MODE_ABS);
|
|
|
setup_timer(&x->rtimer, xfrm_replay_timer_handler,
|
|
|
(unsigned long)x);
|
|
|
x->curlft.add_time = get_seconds();
|
|
@@ -990,11 +991,13 @@ void xfrm_state_insert(struct xfrm_state *x)
|
|
|
EXPORT_SYMBOL(xfrm_state_insert);
|
|
|
|
|
|
/* xfrm_state_lock is held */
|
|
|
-static struct xfrm_state *__find_acq_core(struct net *net, struct xfrm_mark *m,
|
|
|
+static struct xfrm_state *__find_acq_core(struct net *net,
|
|
|
+ const struct xfrm_mark *m,
|
|
|
unsigned short family, u8 mode,
|
|
|
u32 reqid, u8 proto,
|
|
|
const xfrm_address_t *daddr,
|
|
|
- const xfrm_address_t *saddr, int create)
|
|
|
+ const xfrm_address_t *saddr,
|
|
|
+ int create)
|
|
|
{
|
|
|
unsigned int h = xfrm_dst_hash(net, daddr, saddr, reqid, family);
|
|
|
struct xfrm_state *x;
|
|
@@ -1399,9 +1402,9 @@ xfrm_state_lookup_byaddr(struct net *net, u32 mark,
|
|
|
EXPORT_SYMBOL(xfrm_state_lookup_byaddr);
|
|
|
|
|
|
struct xfrm_state *
|
|
|
-xfrm_find_acq(struct net *net, struct xfrm_mark *mark, u8 mode, u32 reqid, u8 proto,
|
|
|
- const xfrm_address_t *daddr, const xfrm_address_t *saddr,
|
|
|
- int create, unsigned short family)
|
|
|
+xfrm_find_acq(struct net *net, const struct xfrm_mark *mark, u8 mode, u32 reqid,
|
|
|
+ u8 proto, const xfrm_address_t *daddr,
|
|
|
+ const xfrm_address_t *saddr, int create, unsigned short family)
|
|
|
{
|
|
|
struct xfrm_state *x;
|
|
|
|