The batadv_tvlv_container* functions state in their kernel-doc that they
require tvlv.container_list_lock. Add an assert to automatically detect
when this might have been ignored by the caller.

Signed-off-by: Sven Eckelmann <[email protected]>
---
 net/batman-adv/main.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/net/batman-adv/main.c b/net/batman-adv/main.c
index 19ad0bb..c9b8205 100644
--- a/net/batman-adv/main.c
+++ b/net/batman-adv/main.c
@@ -720,6 +720,8 @@ static struct batadv_tvlv_container
 {
        struct batadv_tvlv_container *tvlv_tmp, *tvlv = NULL;
 
+       lockdep_assert_held(&bat_priv->tvlv.container_list_lock);
+
        hlist_for_each_entry(tvlv_tmp, &bat_priv->tvlv.container_list, list) {
                if (tvlv_tmp->tvlv_hdr.type != type)
                        continue;
@@ -752,6 +754,8 @@ static u16 batadv_tvlv_container_list_size(struct 
batadv_priv *bat_priv)
        struct batadv_tvlv_container *tvlv;
        u16 tvlv_len = 0;
 
+       lockdep_assert_held(&bat_priv->tvlv.container_list_lock);
+
        hlist_for_each_entry(tvlv, &bat_priv->tvlv.container_list, list) {
                tvlv_len += sizeof(struct batadv_tvlv_hdr);
                tvlv_len += ntohs(tvlv->tvlv_hdr.len);
-- 
2.6.4

Reply via email to