From: Ying Xue <ying.xue@windriver.com>
To: <davem@davemloft.net>
Cc: jon.maloy@ericsson.com, Paul.Gortmaker@windriver.com,
tipc-discussion@lists.sourceforge.net, netdev@vger.kernel.org
Subject: [PATCH net-next 01/11] tipc: replace config_mutex lock with RTNL lock
Date: Mon, 21 Apr 2014 10:55:42 +0800 [thread overview]
Message-ID: <1398048952-7825-2-git-send-email-ying.xue@windriver.com> (raw)
In-Reply-To: <1398048952-7825-1-git-send-email-ying.xue@windriver.com>
There have two paths where we can configure or change bearer status:
one is that bearer is configured from user space with tipc-config
tool; another one is that bearer is changed by notification events
from its attached interface. On the first path, one dedicated
config_mutex lock is guarded; on the latter path, RTNL lock has been
placed to serialize the process of dealing with interface events.
So, if RTNL lock is also used to protect the first path, this will
not only extremely help us simplify current locking policy, but also
config_mutex lock can be deleted as well.
Signed-off-by: Ying Xue <ying.xue@windriver.com>
Reviewed-by: Jon Maloy <jon.maloy@ericsson.com>
Reviewed-by: Erik Hugne <erik.hugne@ericsson.com>
Tested-by: Erik Hugne <erik.hugne@ericsson.com>
---
net/tipc/config.c | 6 ++----
net/tipc/core.h | 2 +-
2 files changed, 3 insertions(+), 5 deletions(-)
diff --git a/net/tipc/config.c b/net/tipc/config.c
index 4b981c0..251f5a2 100644
--- a/net/tipc/config.c
+++ b/net/tipc/config.c
@@ -42,8 +42,6 @@
#define REPLY_TRUNCATED "<truncated>\n"
-static DEFINE_MUTEX(config_mutex);
-
static const void *req_tlv_area; /* request message TLV area */
static int req_tlv_space; /* request message TLV area size */
static int rep_headroom; /* reply message headroom to use */
@@ -223,7 +221,7 @@ struct sk_buff *tipc_cfg_do_cmd(u32 orig_node, u16 cmd, const void *request_area
{
struct sk_buff *rep_tlv_buf;
- mutex_lock(&config_mutex);
+ rtnl_lock();
/* Save request and reply details in a well-known location */
req_tlv_area = request_area;
@@ -337,6 +335,6 @@ struct sk_buff *tipc_cfg_do_cmd(u32 orig_node, u16 cmd, const void *request_area
/* Return reply buffer */
exit:
- mutex_unlock(&config_mutex);
+ rtnl_unlock();
return rep_tlv_buf;
}
diff --git a/net/tipc/core.h b/net/tipc/core.h
index 8985bbc..36cbf15 100644
--- a/net/tipc/core.h
+++ b/net/tipc/core.h
@@ -56,7 +56,7 @@
#include <linux/list.h>
#include <linux/slab.h>
#include <linux/vmalloc.h>
-
+#include <linux/rtnetlink.h>
#define TIPC_MOD_VER "2.0.0"
--
1.7.9.5
------------------------------------------------------------------------------
Start Your Social Network Today - Download eXo Platform
Build your Enterprise Intranet with eXo Platform Software
Java Based Open Source Intranet - Social, Extensible, Cloud Ready
Get Started Now And Turn Your Intranet Into A Collaboration Platform
http://p.sf.net/sfu/ExoPlatform
next prev parent reply other threads:[~2014-04-21 2:55 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-21 2:55 [PATCH net-next 00/11] purge tipc_net_lock Ying Xue
2014-04-21 2:55 ` Ying Xue [this message]
2014-04-21 2:55 ` [PATCH net-next 02/11] tipc: adjust locking policy of protecting tipc_ptr pointer of net_device Ying Xue
2014-04-21 2:55 ` [PATCH net-next 03/11] tipc: use RTNL lock to protect tipc_net_stop routine Ying Xue
2014-04-21 2:55 ` [PATCH net-next 04/11] tipc: convert bearer_list to RCU list Ying Xue
2014-04-21 2:55 ` [PATCH net-next 05/11] tipc: decouple the relationship between bearer and link Ying Xue
2014-04-21 2:55 ` [PATCH net-next 06/11] tipc: use RCU to protect media_ptr pointer Ying Xue
2014-04-21 2:55 ` [PATCH net-next 07/11] tipc: purge tipc_net_lock lock Ying Xue
2014-04-21 2:55 ` [PATCH net-next 08/11] tipc: make media_ptr pointed netdevice valid Ying Xue
2014-04-21 2:55 ` [PATCH net-next 09/11] tipc: use bearer_disable to disable bearer in tipc_l2_device_event Ying Xue
2014-04-21 2:55 ` [PATCH net-next 10/11] tipc: use bc_lock to protect node map in bearer structure Ying Xue
2014-04-21 2:55 ` [PATCH net-next 11/11] tipc: fix race in disc create/delete Ying Xue
2014-04-23 1:18 ` [PATCH net-next 00/11] purge tipc_net_lock David Miller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1398048952-7825-2-git-send-email-ying.xue@windriver.com \
--to=ying.xue@windriver.com \
--cc=Paul.Gortmaker@windriver.com \
--cc=davem@davemloft.net \
--cc=jon.maloy@ericsson.com \
--cc=netdev@vger.kernel.org \
--cc=tipc-discussion@lists.sourceforge.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).