From 93150d65500e12e4a892208792bf4437d9106edb Mon Sep 17 00:00:00 2001 From: jamal Date: Tue, 16 Feb 2010 02:01:22 +0000 Subject: [PATCH] --- yaml --- r: 184250 b: refs/heads/master c: 6836b9bdd98e3b500cd49512484df68f46e14659 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/net/xfrm/xfrm_state.c | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/[refs] b/[refs] index 1638080863cd..bd96431ece63 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e06d41d09f314a1664ad60e46934b0ac131c6fa2 +refs/heads/master: 6836b9bdd98e3b500cd49512484df68f46e14659 diff --git a/trunk/net/xfrm/xfrm_state.c b/trunk/net/xfrm/xfrm_state.c index f50ee9badf47..96f2088e7448 100644 --- a/trunk/net/xfrm/xfrm_state.c +++ b/trunk/net/xfrm/xfrm_state.c @@ -1462,12 +1462,12 @@ EXPORT_SYMBOL(xfrm_find_acq_byseq); u32 xfrm_get_acqseq(void) { u32 res; - static u32 acqseq; - static DEFINE_SPINLOCK(acqseq_lock); + static atomic_t acqseq; + + do { + res = atomic_inc_return(&acqseq); + } while (!res); - spin_lock_bh(&acqseq_lock); - res = (++acqseq ? : ++acqseq); - spin_unlock_bh(&acqseq_lock); return res; } EXPORT_SYMBOL(xfrm_get_acqseq);