diff options
author | Roland Dreier <rolandd@cisco.com> | 2009-09-05 23:24:23 -0400 |
---|---|---|
committer | Roland Dreier <rolandd@cisco.com> | 2009-09-05 23:24:23 -0400 |
commit | 6276e08a9bdf645b71a092fb4530baf4f6c4c6eb (patch) | |
tree | d9132ced4e91d02230df2ee4d0cef5a89ec2c477 /drivers/infiniband | |
parent | e07cccf4046978df10f2e13fe2b99b2f9b3a65db (diff) |
IB: Use DEFINE_SPINLOCK() for static spinlocks
Rather than just defining static spinlock_t variables and then
initializing them later in init functions, simply define them with
DEFINE_SPINLOCK() and remove the calls to spin_lock_init(). This cleans
up the source a tad and also shrinks the compiled code; eg on x86-64:
add/remove: 0/0 grow/shrink: 0/3 up/down: 0/-40 (-40)
function old new delta
ib_uverbs_init 336 326 -10
ib_mad_init_module 147 137 -10
ib_sa_init 123 103 -20
Signed-off-by: Roland Dreier <rolandd@cisco.com>
Diffstat (limited to 'drivers/infiniband')
-rw-r--r-- | drivers/infiniband/core/mad.c | 6 | ||||
-rw-r--r-- | drivers/infiniband/core/sa_query.c | 7 | ||||
-rw-r--r-- | drivers/infiniband/core/uverbs_main.c | 4 |
3 files changed, 4 insertions, 13 deletions
diff --git a/drivers/infiniband/core/mad.c b/drivers/infiniband/core/mad.c index de922a04ca2d..5cef8f87b96b 100644 --- a/drivers/infiniband/core/mad.c +++ b/drivers/infiniband/core/mad.c | |||
@@ -51,8 +51,7 @@ static struct list_head ib_mad_port_list; | |||
51 | static u32 ib_mad_client_id = 0; | 51 | static u32 ib_mad_client_id = 0; |
52 | 52 | ||
53 | /* Port list lock */ | 53 | /* Port list lock */ |
54 | static spinlock_t ib_mad_port_list_lock; | 54 | static DEFINE_SPINLOCK(ib_mad_port_list_lock); |
55 | |||
56 | 55 | ||
57 | /* Forward declarations */ | 56 | /* Forward declarations */ |
58 | static int method_in_use(struct ib_mad_mgmt_method_table **method, | 57 | static int method_in_use(struct ib_mad_mgmt_method_table **method, |
@@ -2984,8 +2983,6 @@ static int __init ib_mad_init_module(void) | |||
2984 | { | 2983 | { |
2985 | int ret; | 2984 | int ret; |
2986 | 2985 | ||
2987 | spin_lock_init(&ib_mad_port_list_lock); | ||
2988 | |||
2989 | ib_mad_cache = kmem_cache_create("ib_mad", | 2986 | ib_mad_cache = kmem_cache_create("ib_mad", |
2990 | sizeof(struct ib_mad_private), | 2987 | sizeof(struct ib_mad_private), |
2991 | 0, | 2988 | 0, |
@@ -3021,4 +3018,3 @@ static void __exit ib_mad_cleanup_module(void) | |||
3021 | 3018 | ||
3022 | module_init(ib_mad_init_module); | 3019 | module_init(ib_mad_init_module); |
3023 | module_exit(ib_mad_cleanup_module); | 3020 | module_exit(ib_mad_cleanup_module); |
3024 | |||
diff --git a/drivers/infiniband/core/sa_query.c b/drivers/infiniband/core/sa_query.c index 1865049e80f7..82543716d59e 100644 --- a/drivers/infiniband/core/sa_query.c +++ b/drivers/infiniband/core/sa_query.c | |||
@@ -109,10 +109,10 @@ static struct ib_client sa_client = { | |||
109 | .remove = ib_sa_remove_one | 109 | .remove = ib_sa_remove_one |
110 | }; | 110 | }; |
111 | 111 | ||
112 | static spinlock_t idr_lock; | 112 | static DEFINE_SPINLOCK(idr_lock); |
113 | static DEFINE_IDR(query_idr); | 113 | static DEFINE_IDR(query_idr); |
114 | 114 | ||
115 | static spinlock_t tid_lock; | 115 | static DEFINE_SPINLOCK(tid_lock); |
116 | static u32 tid; | 116 | static u32 tid; |
117 | 117 | ||
118 | #define PATH_REC_FIELD(field) \ | 118 | #define PATH_REC_FIELD(field) \ |
@@ -1077,9 +1077,6 @@ static int __init ib_sa_init(void) | |||
1077 | { | 1077 | { |
1078 | int ret; | 1078 | int ret; |
1079 | 1079 | ||
1080 | spin_lock_init(&idr_lock); | ||
1081 | spin_lock_init(&tid_lock); | ||
1082 | |||
1083 | get_random_bytes(&tid, sizeof tid); | 1080 | get_random_bytes(&tid, sizeof tid); |
1084 | 1081 | ||
1085 | ret = ib_register_client(&sa_client); | 1082 | ret = ib_register_client(&sa_client); |
diff --git a/drivers/infiniband/core/uverbs_main.c b/drivers/infiniband/core/uverbs_main.c index eb36a81dd09b..1a3ac3d882b8 100644 --- a/drivers/infiniband/core/uverbs_main.c +++ b/drivers/infiniband/core/uverbs_main.c | |||
@@ -73,7 +73,7 @@ DEFINE_IDR(ib_uverbs_cq_idr); | |||
73 | DEFINE_IDR(ib_uverbs_qp_idr); | 73 | DEFINE_IDR(ib_uverbs_qp_idr); |
74 | DEFINE_IDR(ib_uverbs_srq_idr); | 74 | DEFINE_IDR(ib_uverbs_srq_idr); |
75 | 75 | ||
76 | static spinlock_t map_lock; | 76 | static DEFINE_SPINLOCK(map_lock); |
77 | static struct ib_uverbs_device *dev_table[IB_UVERBS_MAX_DEVICES]; | 77 | static struct ib_uverbs_device *dev_table[IB_UVERBS_MAX_DEVICES]; |
78 | static DECLARE_BITMAP(dev_map, IB_UVERBS_MAX_DEVICES); | 78 | static DECLARE_BITMAP(dev_map, IB_UVERBS_MAX_DEVICES); |
79 | 79 | ||
@@ -836,8 +836,6 @@ static int __init ib_uverbs_init(void) | |||
836 | { | 836 | { |
837 | int ret; | 837 | int ret; |
838 | 838 | ||
839 | spin_lock_init(&map_lock); | ||
840 | |||
841 | ret = register_chrdev_region(IB_UVERBS_BASE_DEV, IB_UVERBS_MAX_DEVICES, | 839 | ret = register_chrdev_region(IB_UVERBS_BASE_DEV, IB_UVERBS_MAX_DEVICES, |
842 | "infiniband_verbs"); | 840 | "infiniband_verbs"); |
843 | if (ret) { | 841 | if (ret) { |