unsigned long flags;
int vis_server = atomic_read(&bat_priv->vis_mode);
- rcu_read_lock();
- if (list_empty(&if_list) || (vis_server == VIS_TYPE_CLIENT_UPDATE)) {
- rcu_read_unlock();
+ if ((!bat_priv->primary_if) ||
+ (vis_server == VIS_TYPE_CLIENT_UPDATE))
return 0;
- }
- rcu_read_unlock();
hdr_len = 0;
spin_lock_irqsave(&vis_hash_lock, flags);
if (orig_node->router != NULL
&& compare_orig(orig_node->router->addr,
orig_node->orig)
- && (orig_node->router->if_incoming->if_active ==
+ && (orig_node->router->if_incoming->if_status ==
IF_ACTIVE)
&& orig_node->router->tq_avg > 0) {