diff --git a/net/batman-adv/originator.c b/net/batman-adv/originator.c
index 38613487fb1b70fc776e77b0d6ded2bdf2a5a751..ba51b69ee364216f592477911a57a17950eda60f 100644
--- a/net/batman-adv/originator.c
+++ b/net/batman-adv/originator.c
@@ -1345,6 +1345,8 @@ void batadv_purge_orig_ref(struct batadv_priv *bat_priv)
 	/* for all origins... */
 	for (i = 0; i < hash->size; i++) {
 		head = &hash->table[i];
+		if (hlist_empty(head))
+			continue;
 		list_lock = &hash->list_locks[i];
 
 		spin_lock_bh(list_lock);