Lines Matching defs:lower

7086  * Find out if a device is linked to a lower device and return true in case
7093 return !list_empty(&dev->adj_list.lower);
7278 * lower neighbour list
7282 * Gets the next netdev_adjacent->private from the dev's lower neighbour
7284 * RTNL lock or its own locking that guarantees that the neighbour lower
7290 struct netdev_adjacent *lower;
7292 lower = list_entry(*iter, struct netdev_adjacent, list);
7294 if (&lower->list == &dev->adj_list.lower)
7297 *iter = lower->list.next;
7299 return lower->private;
7305 * lower neighbour list, RCU
7310 * Gets the next netdev_adjacent->private from the dev's lower neighbour
7316 struct netdev_adjacent *lower;
7320 lower = list_entry_rcu((*iter)->next, struct netdev_adjacent, list);
7322 if (&lower->list == &dev->adj_list.lower)
7325 *iter = &lower->list;
7327 return lower->private;
7332 * netdev_lower_get_next - Get the next device from the lower neighbour
7337 * Gets the next netdev_adjacent from the dev's lower neighbour
7339 * its own locking that guarantees that the neighbour lower
7344 struct netdev_adjacent *lower;
7346 lower = list_entry(*iter, struct netdev_adjacent, list);
7348 if (&lower->list == &dev->adj_list.lower)
7351 *iter = lower->list.next;
7353 return lower->dev;
7360 struct netdev_adjacent *lower;
7362 lower = list_entry((*iter)->next, struct netdev_adjacent, list);
7364 if (&lower->list == &dev->adj_list.lower)
7367 *iter = &lower->list;
7369 return lower->dev;
7376 struct netdev_adjacent *lower;
7378 lower = list_entry((*iter)->next, struct netdev_adjacent, list);
7380 if (&lower->list == &dev->adj_list.lower)
7383 *iter = &lower->list;
7384 *ignore = lower->ignore;
7386 return lower->dev;
7399 iter = &dev->adj_list.lower;
7415 niter = &ldev->adj_list.lower;
7447 iter = &dev->adj_list.lower;
7465 niter = &ldev->adj_list.lower;
7488 struct netdev_adjacent *lower;
7490 lower = list_entry_rcu((*iter)->next, struct netdev_adjacent, list);
7491 if (&lower->list == &dev->adj_list.lower)
7494 *iter = &lower->list;
7496 return lower->dev;
7527 for (iter = &dev->adj_list.lower,
7574 iter = &dev->adj_list.lower;
7590 niter = &ldev->adj_list.lower;
7613 * lower neighbour list, RCU
7617 * Gets the first netdev_adjacent->private from the dev's lower neighbour
7622 struct netdev_adjacent *lower;
7624 lower = list_first_or_null_rcu(&dev->adj_list.lower,
7626 if (lower)
7627 return lower->private;
7678 dev_list == &dev->adj_list.lower) &&
7823 &upper_dev->adj_list.lower,
7832 &upper_dev->adj_list.lower);
8019 adj = __netdev_find_adj(lower_dev, &upper_dev->adj_list.lower);
8162 &iter->dev->adj_list.lower);
8167 list_for_each_entry(iter, &dev->adj_list.lower, list) {
8173 &dev->adj_list.lower);
8187 &iter->dev->adj_list.lower);
8192 list_for_each_entry(iter, &dev->adj_list.lower, list) {
8198 &dev->adj_list.lower);
8212 &iter->dev->adj_list.lower);
8214 &iter->dev->adj_list.lower);
8217 list_for_each_entry(iter, &dev->adj_list.lower, list) {
8230 struct netdev_adjacent *lower;
8234 lower = __netdev_find_adj(lower_dev, &dev->adj_list.lower);
8235 if (!lower)
8238 return lower->private;
8244 * netdev_lower_change - Dispatch event about lower device state change
8880 * @recurse: allow/disallow recursion to lower devices
9527 static netdev_features_t netdev_sync_upper_features(struct net_device *lower,
9538 netdev_dbg(lower, "Dropping feature %pNF, upper dev %s has it off.\n",
9548 struct net_device *lower, netdev_features_t features)
9556 if (!(features & feature) && (lower->features & feature)) {
9557 netdev_dbg(upper, "Disabling feature %pNF on lower dev %s.\n",
9558 &feature, lower->name);
9559 lower->wanted_features &= ~feature;
9560 __netdev_update_features(lower);
9562 if (unlikely(lower->features & feature))
9564 &feature, lower->name);
9566 netdev_features_change(lower);
9657 struct net_device *upper, *lower;
9698 /* some features must be disabled on lower devices when disabled
9701 netdev_for_each_lower_dev(dev, lower, iter)
9702 netdev_sync_lower_features(dev, lower, features);
9781 * @rootdev: the root or lower level device to transfer state from
10524 INIT_LIST_HEAD(&dev->adj_list.lower);