diff options
author | Jon Paul Maloy <jon.maloy@ericsson.com> | 2013-12-10 20:45:39 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-12-11 00:17:42 -0500 |
commit | 5702dbab687e19792102200b085108f00ab820c9 (patch) | |
tree | a3f19fccfbaf4043d0de34a76fd476efe9219920 /net/tipc/ib_media.c | |
parent | d77b3831f7d59d69aa49d5d1df10bbe56671dc5d (diff) | |
download | linux-5702dbab687e19792102200b085108f00ab820c9.tar.gz linux-5702dbab687e19792102200b085108f00ab820c9.tar.bz2 linux-5702dbab687e19792102200b085108f00ab820c9.zip |
tipc: initiate media type array at compile time
Communication media types are abstracted through the struct 'tipc_media',
one per media type. These structs are allocated statically inside their
respective media file.
Furthermore, in order to be able to reach all instances from a central
location, we keep a static array with pointers to these structs. This
array is currently initialized at runtime, under protection of
tipc_net_lock. However, since the contents of the array itself never
changes after initialization, we can just as well initialize it at
compile time and make it 'const', at the same time making it obvious
that no lock protection is needed here.
This commit makes the array constant and removes the redundant lock
protection.
Signed-off-by: Ying Xue <ying.xue@windriver.com>
Reviewed-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: Jon Maloy <jon.maloy@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/tipc/ib_media.c')
-rw-r--r-- | net/tipc/ib_media.c | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/net/tipc/ib_media.c b/net/tipc/ib_media.c index cbe7fe15cc7c..48e1c07842e6 100644 --- a/net/tipc/ib_media.c +++ b/net/tipc/ib_media.c @@ -60,7 +60,6 @@ struct ib_media { struct work_struct cleanup; }; -static struct tipc_media ib_media_info; static struct ib_media ib_media_array[MAX_IB_MEDIA]; static int ib_started; @@ -311,7 +310,7 @@ static int ib_msg2addr(const struct tipc_bearer *tb_ptr, /* * InfiniBand media registration info */ -static struct tipc_media ib_media_info = { +struct tipc_media ib_media_info = { .send_msg = send_msg, .enable_media = enable_media, .disable_media = disable_media, @@ -338,10 +337,6 @@ int tipc_ib_media_start(void) if (ib_started) return -EINVAL; - res = tipc_register_media(&ib_media_info); - if (res) - return res; - res = register_netdevice_notifier(¬ifier); if (!res) ib_started = 1; |