From patchwork Tue Dec 20 14:02:13 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Geliang Tang X-Patchwork-Id: 707457 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3tjfhB4MZmz9t2T for ; Wed, 21 Dec 2016 01:05:46 +1100 (AEDT) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="KEd7gEBm"; dkim-atps=neutral Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934502AbcLTODs (ORCPT ); Tue, 20 Dec 2016 09:03:48 -0500 Received: from mail-pg0-f65.google.com ([74.125.83.65]:32804 "EHLO mail-pg0-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S934363AbcLTODn (ORCPT ); Tue, 20 Dec 2016 09:03:43 -0500 Received: by mail-pg0-f65.google.com with SMTP id g1so10250802pgn.0; Tue, 20 Dec 2016 06:02:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=CrNeGHdkj1pZG99wzQu4X2TcjKCRpDXLyX3RDSwX42Y=; b=KEd7gEBmmGGqRifYQvu7e1fzkYRdpw6alPcFFcLuFV9CjmepAiN4dxbM95kMLVrRdM jGtZf8kY+iuIozn9eKPQ5t6ZbYkede765Jc8CJbnoia2iROnPijJucCwj9MCfP+I3GV5 ATej3yTTypz9hETiTUhyQ2ybjIG+6uhyyXL3MG1fV4OgxwAxzVxTR9Gd20yfRVlZU9Fq X23v9okomluoe6GnM8Nyxf2XPTUJJBaWlokv/02PEoYLPzXiY+C4re9HRtS2GPPQf7Zk MNBSkjEvrJoy8GxZiCIdQHOyOMSId7AyjyERCkvjsC9ucWBJUPW46xdGZ27SjDZlpxMo 8nWQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=CrNeGHdkj1pZG99wzQu4X2TcjKCRpDXLyX3RDSwX42Y=; b=QZpTnJbx71domKhzii5Xjoi/YguAgFl/q8yDLj5ghyY2Qbd8oc93Ubt024Ck7zC8k/ aqZY7ppO346ZZcYRbg2P7unl/2pd52jHZSlnp5zriOawqWzbVHiLSKKBb72H+d2wrTOn BAzCKpNTwf26/kfKDt/PijEJDn/sdjfTVb+sLCmzy5QJUJdKJDzXbEOmAYU2TsAzFzbp ZzkOEVQJ5CydLnKmBdYHBZidutql+eaYjfjoqTOfrtTe7K7Sk+jV6wY8nvVEzEwVDwZO B7tkkHvRTymkfZG1m+sOnXmLQ8x4ifkjAKUYmcioVyTDwJM167+SHIL84lPLlxCm0tpW lSXw== X-Gm-Message-State: AKaTC02JPZmq7y1u6yt909MqpAmKncEfp0Ml0hzCGST0Rg43r3YQj4CA+AxsxvOdKHQDAA== X-Received: by 10.84.225.129 with SMTP id u1mr43696573plj.110.1482242564715; Tue, 20 Dec 2016 06:02:44 -0800 (PST) Received: from localhost (li411-102.members.linode.com. [106.187.91.102]) by smtp.gmail.com with ESMTPSA id b192sm6224544pga.30.2016.12.20.06.02.43 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 20 Dec 2016 06:02:44 -0800 (PST) From: Geliang Tang To: Pablo Neira Ayuso , Patrick McHardy , Jozsef Kadlecsik , "David S. Miller" Cc: Geliang Tang , netfilter-devel@vger.kernel.org, coreteam@netfilter.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH] netfilter: xt_connlimit: use rb_entry() Date: Tue, 20 Dec 2016 22:02:13 +0800 Message-Id: <5fab578543b7f15cb416438800e24e70af675835.1482204114.git.geliangtang@gmail.com> X-Mailer: git-send-email 2.9.3 In-Reply-To: References: Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org To make the code clearer, use rb_entry() instead of container_of() to deal with rbtree. Signed-off-by: Geliang Tang --- net/netfilter/xt_connlimit.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/netfilter/xt_connlimit.c b/net/netfilter/xt_connlimit.c index 2aff2b7..660b61d 100644 --- a/net/netfilter/xt_connlimit.c +++ b/net/netfilter/xt_connlimit.c @@ -218,7 +218,7 @@ count_tree(struct net *net, struct rb_root *root, int diff; bool addit; - rbconn = container_of(*rbnode, struct xt_connlimit_rb, node); + rbconn = rb_entry(*rbnode, struct xt_connlimit_rb, node); parent = *rbnode; diff = same_source_net(addr, mask, &rbconn->addr, family); @@ -398,7 +398,7 @@ static void destroy_tree(struct rb_root *r) struct rb_node *node; while ((node = rb_first(r)) != NULL) { - rbconn = container_of(node, struct xt_connlimit_rb, node); + rbconn = rb_entry(node, struct xt_connlimit_rb, node); rb_erase(node, r);