summaryrefslogtreecommitdiff
path: root/net/rds/tcp.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2010-11-15 06:49:30 +0000
committerChris Wilson <chris@chris-wilson.co.uk>2010-11-15 06:49:30 +0000
commitc94f28c383f58c9de74678e0f1624db9c5f8a8cb (patch)
tree3281184f026cb79cee6c20fe29c994ba654cbbe4 /net/rds/tcp.c
parentdf15315899c0641412bd54b29565a70b078a6ac8 (diff)
parent1bb95834bbcdc969e477a9284cf96c17a4c2616f (diff)
Merge branch 'drm-intel-fixes' into drm-intel-next
Conflicts: drivers/gpu/drm/i915/i915_gem.c drivers/gpu/drm/i915/intel_ringbuffer.c
Diffstat (limited to 'net/rds/tcp.c')
-rw-r--r--net/rds/tcp.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/net/rds/tcp.c b/net/rds/tcp.c
index 08a8c6cf2d10..8e0a32001c90 100644
--- a/net/rds/tcp.c
+++ b/net/rds/tcp.c
@@ -221,7 +221,13 @@ static int rds_tcp_conn_alloc(struct rds_connection *conn, gfp_t gfp)
static void rds_tcp_conn_free(void *arg)
{
struct rds_tcp_connection *tc = arg;
+ unsigned long flags;
rdsdebug("freeing tc %p\n", tc);
+
+ spin_lock_irqsave(&rds_tcp_conn_lock, flags);
+ list_del(&tc->t_tcp_node);
+ spin_unlock_irqrestore(&rds_tcp_conn_lock, flags);
+
kmem_cache_free(rds_tcp_conn_slab, tc);
}