Lines Matching refs:upper
2141 * This routine should set an upper limit on the number of RSS queues
3374 * the upper (protocol) levels to process. It always succeeds. The buffer
4595 /* upper master flag, there can only be one master device per list */
4622 * netdev_has_upper_dev - Check if device is linked to an upper device
4624 * @upper_dev: upper device to check
4626 * Find out if a device is linked to specified upper device and return true
4627 * in case it is. Note that this checks only immediate upper device,
4635 return __netdev_find_adj(dev, upper_dev, &dev->all_adj_list.upper);
4643 * Find out if a device is linked to an upper device and return true in case
4650 return !list_empty(&dev->all_adj_list.upper);
4654 * netdev_master_upper_dev_get - Get master upper device
4657 * Find a master upper device and return pointer to it or NULL in case
4662 struct netdev_adjacent *upper;
4666 if (list_empty(&dev->adj_list.upper))
4669 upper = list_first_entry(&dev->adj_list.upper,
4671 if (likely(upper->master))
4672 return upper->dev;
4688 * netdev_upper_get_next_dev_rcu - Get the next dev from upper list
4692 * Gets the next device from the dev's upper list, starting from iter
4698 struct netdev_adjacent *upper;
4702 upper = list_entry_rcu((*iter)->next, struct netdev_adjacent, list);
4704 if (&upper->list == &dev->adj_list.upper)
4707 *iter = &upper->list;
4709 return upper->dev;
4714 * netdev_all_upper_get_next_dev_rcu - Get the next dev from upper list
4718 * Gets the next device from the dev's upper list, starting from iter
4724 struct netdev_adjacent *upper;
4728 upper = list_entry_rcu((*iter)->next, struct netdev_adjacent, list);
4730 if (&upper->list == &dev->all_adj_list.upper)
4733 *iter = &upper->list;
4735 return upper->dev;
4842 * netdev_master_upper_dev_get_rcu - Get master upper device
4845 * Find a master upper device and return pointer to it or NULL in case
4850 struct netdev_adjacent *upper;
4852 upper = list_first_or_null_rcu(&dev->adj_list.upper,
4854 if (upper && likely(upper->master))
4855 return upper->dev;
4865 sprintf(linkname, dev_list == &dev->adj_list.upper ?
4875 sprintf(linkname, dev_list == &dev->adj_list.upper ?
4884 return (dev_list == &dev->adj_list.upper ||
5008 &dev->all_adj_list.upper,
5026 &dev->all_adj_list.upper,
5040 &dev->adj_list.upper,
5056 &dev->adj_list.upper,
5072 /* To prevent loops, check if dev is not upper device to upper_dev. */
5073 if (__netdev_find_adj(upper_dev, dev, &upper_dev->all_adj_list.upper))
5076 if (__netdev_find_adj(dev, upper_dev, &dev->all_adj_list.upper))
5088 * all_adj_list.upper visible to every dev's all_adj_list.lower an
5093 list_for_each_entry(j, &upper_dev->all_adj_list.upper, list) {
5102 /* add dev to every upper_dev's upper device */
5103 list_for_each_entry(i, &upper_dev->all_adj_list.upper, list) {
5104 pr_debug("linking %s's upper device %s with %s\n",
5135 list_for_each_entry(i, &upper_dev->all_adj_list.upper, list) {
5147 list_for_each_entry(j, &upper_dev->all_adj_list.upper, list) {
5162 * netdev_upper_dev_link - Add a link to the upper device
5164 * @upper_dev: new upper device
5166 * Adds a link to device which is upper to this one. The caller must hold
5179 * netdev_master_upper_dev_link - Add a master link to the upper device
5181 * @upper_dev: new upper device
5183 * Adds a link to device which is upper to this one. In this case, only
5184 * one master upper device can be linked, although other non-master devices
5205 * netdev_upper_dev_unlink - Removes a link to upper device
5207 * @upper_dev: new upper device
5209 * Removes a link to device which is upper to this one. The caller must hold
5221 * devices from all upper_dev's upper devices and vice
5225 list_for_each_entry(j, &upper_dev->all_adj_list.upper, list)
5228 /* remove also the devices itself from lower/upper device
5234 list_for_each_entry(i, &upper_dev->all_adj_list.upper, list)
5247 list_for_each_entry(iter, &dev->adj_list.upper, list) {
5253 &dev->adj_list.upper);
5260 &iter->dev->adj_list.upper);
5272 list_for_each_entry(iter, &dev->adj_list.upper, list) {
5278 &dev->adj_list.upper);
5285 &iter->dev->adj_list.upper);
5297 list_for_each_entry(iter, &dev->adj_list.upper, list) {
5310 &iter->dev->adj_list.upper);
5312 &iter->dev->adj_list.upper);
5890 /* Notifier chain MUST detach us all upper devices. */
6666 INIT_LIST_HEAD(&dev->adj_list.upper);
6668 INIT_LIST_HEAD(&dev->all_adj_list.upper);