Lines Matching full:net_device
86 void netdev_set_default_ethtool_ops(struct net_device *dev,
88 void netdev_sw_irq_coalesce_default_on(struct net_device *dev);
312 int (*create) (struct sk_buff *skb, struct net_device *dev,
318 const struct net_device *dev,
372 struct net_device *dev;
433 * Currently, a net_device can only have a single rx_handler registered. Trying
436 * To register a rx_handler on a net_device, use netdev_rx_handler_register().
437 * To unregister a rx_handler on a net_device, use
448 * net_device, it should return RX_HANDLER_ANOTHER. The rx_handler for the
558 int dev_set_threaded(struct net_device *dev, bool threaded);
644 struct net_device *dev;
663 struct net_device *sb_dev;
809 bool rps_may_expire_flow(struct net_device *dev, u16 rxq_index, u32 flow_id,
814 /* XPS map type and offset of the xps map within net_device->xps_maps[]. */
904 typedef u16 (*select_queue_fallback_t)(struct net_device *dev,
906 struct net_device *sb_dev);
919 const struct net_device *dev;
959 const struct net_device *dev;
1088 * int (*ndo_init)(struct net_device *dev);
1094 * void (*ndo_uninit)(struct net_device *dev);
1098 * int (*ndo_open)(struct net_device *dev);
1102 * int (*ndo_stop)(struct net_device *dev);
1107 * struct net_device *dev);
1116 * struct net_device *dev
1125 * u16 (*ndo_select_queue)(struct net_device *dev, struct sk_buff *skb,
1126 * struct net_device *sb_dev);
1130 * void (*ndo_change_rx_flags)(struct net_device *dev, int flags);
1134 * void (*ndo_set_rx_mode)(struct net_device *dev);
1139 * int (*ndo_set_mac_address)(struct net_device *dev, void *addr);
1144 * int (*ndo_validate_addr)(struct net_device *dev);
1147 * int (*ndo_do_ioctl)(struct net_device *dev, struct ifreq *ifr, int cmd);
1152 * int (*ndo_siocbond)(struct net_device *dev, struct ifreq *ifr, int cmd);
1157 * * int (*ndo_eth_ioctl)(struct net_device *dev, struct ifreq *ifr, int cmd);
1161 * int (*ndo_set_config)(struct net_device *dev, struct ifmap *map);
1166 * int (*ndo_change_mtu)(struct net_device *dev, int new_mtu);
1170 * void (*ndo_tx_timeout)(struct net_device *dev, unsigned int txqueue);
1174 * void (*ndo_get_stats64)(struct net_device *dev,
1176 * struct net_device_stats* (*ndo_get_stats)(struct net_device *dev);
1188 * bool (*ndo_has_offload_stats)(const struct net_device *dev, int attr_id)
1191 * int (*ndo_get_offload_stats)(int attr_id, const struct net_device *dev,
1196 * int (*ndo_vlan_rx_add_vid)(struct net_device *dev, __be16 proto, u16 vid);
1200 * int (*ndo_vlan_rx_kill_vid)(struct net_device *dev, __be16 proto, u16 vid);
1204 * void (*ndo_poll_controller)(struct net_device *dev);
1207 * int (*ndo_set_vf_mac)(struct net_device *dev, int vf, u8* mac);
1208 * int (*ndo_set_vf_vlan)(struct net_device *dev, int vf, u16 vlan,
1210 * int (*ndo_set_vf_rate)(struct net_device *dev, int vf, int min_tx_rate,
1212 * int (*ndo_set_vf_spoofchk)(struct net_device *dev, int vf, bool setting);
1213 * int (*ndo_set_vf_trust)(struct net_device *dev, int vf, bool setting);
1214 * int (*ndo_get_vf_config)(struct net_device *dev,
1216 * int (*ndo_set_vf_link_state)(struct net_device *dev, int vf, int link_state);
1217 * int (*ndo_set_vf_port)(struct net_device *dev, int vf,
1223 * int (*ndo_set_vf_rss_query_en)(struct net_device *dev, int vf, bool setting);
1224 * int (*ndo_get_vf_port)(struct net_device *dev, int vf, struct sk_buff *skb);
1225 * int (*ndo_setup_tc)(struct net_device *dev, enum tc_setup_type type,
1233 * int (*ndo_fcoe_enable)(struct net_device *dev);
1238 * int (*ndo_fcoe_disable)(struct net_device *dev);
1243 * int (*ndo_fcoe_ddp_setup)(struct net_device *dev, u16 xid,
1250 * int (*ndo_fcoe_ddp_done)(struct net_device *dev, u16 xid);
1255 * int (*ndo_fcoe_ddp_target)(struct net_device *dev, u16 xid,
1262 * int (*ndo_fcoe_get_hbainfo)(struct net_device *dev,
1269 * int (*ndo_fcoe_get_wwn)(struct net_device *dev, u64 *wwn, int type);
1276 * int (*ndo_rx_flow_steer)(struct net_device *dev, const struct sk_buff *skb,
1283 * int (*ndo_add_slave)(struct net_device *dev, struct net_device *slave_dev);
1286 * int (*ndo_del_slave)(struct net_device *dev, struct net_device *slave_dev);
1289 * struct net_device *(*ndo_get_xmit_slave)(struct net_device *dev,
1296 * netdev_features_t (*ndo_fix_features)(struct net_device *dev,
1302 * int (*ndo_set_features)(struct net_device *dev, netdev_features_t features);
1308 * struct net_device *dev,
1313 * struct net_device *dev,
1316 * int (*ndo_fdb_del_bulk)(struct nlmsghdr *nlh, struct net_device *dev,
1319 * struct net_device *dev, struct net_device *filter_dev,
1324 * int (*ndo_mdb_add)(struct net_device *dev, struct nlattr *tb[],
1327 * int (*ndo_mdb_del)(struct net_device *dev, struct nlattr *tb[],
1330 * int (*ndo_mdb_del_bulk)(struct net_device *dev, struct nlattr *tb[],
1333 * int (*ndo_mdb_dump)(struct net_device *dev, struct sk_buff *skb,
1338 * int (*ndo_bridge_setlink)(struct net_device *dev, struct nlmsghdr *nlh,
1341 * struct net_device *dev, u32 filter_mask,
1343 * int (*ndo_bridge_dellink)(struct net_device *dev, struct nlmsghdr *nlh,
1346 * int (*ndo_change_carrier)(struct net_device *dev, bool new_carrier);
1354 * int (*ndo_get_phys_port_id)(struct net_device *dev,
1360 * int (*ndo_get_port_parent_id)(struct net_device *dev,
1364 * void* (*ndo_dfwd_add_station)(struct net_device *pdev,
1365 * struct net_device *dev)
1371 * void (*ndo_dfwd_del_station)(struct net_device *pdev, void *priv)
1376 * int (*ndo_set_tx_maxrate)(struct net_device *dev,
1380 * int (*ndo_get_iflink)(const struct net_device *dev);
1382 * int (*ndo_fill_metadata_dst)(struct net_device *dev, struct sk_buff *skb);
1386 * void (*ndo_set_rx_headroom)(struct net_device *dev, int needed_headroom);
1392 * int (*ndo_bpf)(struct net_device *dev, struct netdev_bpf *bpf);
1396 * int (*ndo_xdp_xmit)(struct net_device *dev, int n, struct xdp_frame **xdp,
1403 * struct net_device *(*ndo_xdp_get_xmit_slave)(struct net_device *dev,
1406 * int (*ndo_xsk_wakeup)(struct net_device *dev, u32 queue_id, u32 flags);
1412 * int (*ndo_tunnel_ctl)(struct net_device *dev, struct ip_tunnel_parm *p,
1415 * struct net_device *(*ndo_get_peer_dev)(struct net_device *dev);
1420 * ktime_t (*ndo_get_tstamp)(struct net_device *dev,
1427 * int (*ndo_hwtstamp_get)(struct net_device *dev,
1432 * int (*ndo_hwtstamp_set)(struct net_device *dev,
1438 int (*ndo_init)(struct net_device *dev);
1439 void (*ndo_uninit)(struct net_device *dev);
1440 int (*ndo_open)(struct net_device *dev);
1441 int (*ndo_stop)(struct net_device *dev);
1443 struct net_device *dev);
1445 struct net_device *dev,
1447 u16 (*ndo_select_queue)(struct net_device *dev,
1449 struct net_device *sb_dev);
1450 void (*ndo_change_rx_flags)(struct net_device *dev,
1452 void (*ndo_set_rx_mode)(struct net_device *dev);
1453 int (*ndo_set_mac_address)(struct net_device *dev,
1455 int (*ndo_validate_addr)(struct net_device *dev);
1456 int (*ndo_do_ioctl)(struct net_device *dev,
1458 int (*ndo_eth_ioctl)(struct net_device *dev,
1460 int (*ndo_siocbond)(struct net_device *dev,
1462 int (*ndo_siocwandev)(struct net_device *dev,
1464 int (*ndo_siocdevprivate)(struct net_device *dev,
1467 int (*ndo_set_config)(struct net_device *dev,
1469 int (*ndo_change_mtu)(struct net_device *dev,
1471 int (*ndo_neigh_setup)(struct net_device *dev,
1473 void (*ndo_tx_timeout) (struct net_device *dev,
1476 void (*ndo_get_stats64)(struct net_device *dev,
1478 bool (*ndo_has_offload_stats)(const struct net_device *dev, int attr_id);
1480 const struct net_device *dev,
1482 struct net_device_stats* (*ndo_get_stats)(struct net_device *dev);
1484 int (*ndo_vlan_rx_add_vid)(struct net_device *dev,
1486 int (*ndo_vlan_rx_kill_vid)(struct net_device *dev,
1489 void (*ndo_poll_controller)(struct net_device *dev);
1490 int (*ndo_netpoll_setup)(struct net_device *dev,
1492 void (*ndo_netpoll_cleanup)(struct net_device *dev);
1494 int (*ndo_set_vf_mac)(struct net_device *dev,
1496 int (*ndo_set_vf_vlan)(struct net_device *dev,
1499 int (*ndo_set_vf_rate)(struct net_device *dev,
1502 int (*ndo_set_vf_spoofchk)(struct net_device *dev,
1504 int (*ndo_set_vf_trust)(struct net_device *dev,
1506 int (*ndo_get_vf_config)(struct net_device *dev,
1509 int (*ndo_set_vf_link_state)(struct net_device *dev,
1511 int (*ndo_get_vf_stats)(struct net_device *dev,
1515 int (*ndo_set_vf_port)(struct net_device *dev,
1518 int (*ndo_get_vf_port)(struct net_device *dev,
1520 int (*ndo_get_vf_guid)(struct net_device *dev,
1524 int (*ndo_set_vf_guid)(struct net_device *dev,
1528 struct net_device *dev,
1530 int (*ndo_setup_tc)(struct net_device *dev,
1534 int (*ndo_fcoe_enable)(struct net_device *dev);
1535 int (*ndo_fcoe_disable)(struct net_device *dev);
1536 int (*ndo_fcoe_ddp_setup)(struct net_device *dev,
1540 int (*ndo_fcoe_ddp_done)(struct net_device *dev,
1542 int (*ndo_fcoe_ddp_target)(struct net_device *dev,
1546 int (*ndo_fcoe_get_hbainfo)(struct net_device *dev,
1553 int (*ndo_fcoe_get_wwn)(struct net_device *dev,
1558 int (*ndo_rx_flow_steer)(struct net_device *dev,
1563 int (*ndo_add_slave)(struct net_device *dev,
1564 struct net_device *slave_dev,
1566 int (*ndo_del_slave)(struct net_device *dev,
1567 struct net_device *slave_dev);
1568 struct net_device* (*ndo_get_xmit_slave)(struct net_device *dev,
1571 struct net_device* (*ndo_sk_get_lower_dev)(struct net_device *dev,
1573 netdev_features_t (*ndo_fix_features)(struct net_device *dev,
1575 int (*ndo_set_features)(struct net_device *dev,
1577 int (*ndo_neigh_construct)(struct net_device *dev,
1579 void (*ndo_neigh_destroy)(struct net_device *dev,
1584 struct net_device *dev,
1591 struct net_device *dev,
1595 struct net_device *dev,
1599 struct net_device *dev,
1600 struct net_device *filter_dev,
1604 struct net_device *dev,
1608 int (*ndo_mdb_add)(struct net_device *dev,
1612 int (*ndo_mdb_del)(struct net_device *dev,
1615 int (*ndo_mdb_del_bulk)(struct net_device *dev,
1618 int (*ndo_mdb_dump)(struct net_device *dev,
1621 int (*ndo_mdb_get)(struct net_device *dev,
1625 int (*ndo_bridge_setlink)(struct net_device *dev,
1631 struct net_device *dev,
1634 int (*ndo_bridge_dellink)(struct net_device *dev,
1637 int (*ndo_change_carrier)(struct net_device *dev,
1639 int (*ndo_get_phys_port_id)(struct net_device *dev,
1641 int (*ndo_get_port_parent_id)(struct net_device *dev,
1643 int (*ndo_get_phys_port_name)(struct net_device *dev,
1645 void* (*ndo_dfwd_add_station)(struct net_device *pdev,
1646 struct net_device *dev);
1647 void (*ndo_dfwd_del_station)(struct net_device *pdev,
1650 int (*ndo_set_tx_maxrate)(struct net_device *dev,
1653 int (*ndo_get_iflink)(const struct net_device *dev);
1654 int (*ndo_fill_metadata_dst)(struct net_device *dev,
1656 void (*ndo_set_rx_headroom)(struct net_device *dev,
1658 int (*ndo_bpf)(struct net_device *dev,
1660 int (*ndo_xdp_xmit)(struct net_device *dev, int n,
1663 struct net_device * (*ndo_xdp_get_xmit_slave)(struct net_device *dev,
1665 int (*ndo_xsk_wakeup)(struct net_device *dev,
1667 int (*ndo_tunnel_ctl)(struct net_device *dev,
1669 struct net_device * (*ndo_get_peer_dev)(struct net_device *dev);
1672 ktime_t (*ndo_get_tstamp)(struct net_device *dev,
1675 int (*ndo_hwtstamp_get)(struct net_device *dev,
1677 int (*ndo_hwtstamp_set)(struct net_device *dev,
1683 * enum netdev_priv_flags - &struct net_device priv_flags
1685 * These are the &struct net_device, they are only set internally
1803 /* Specifies the type of the struct net_device::ml_priv pointer */
1817 * struct net_device - The DEVICE structure.
2099 * FIXME: cleanup struct net_device such that network protocol info
2103 struct net_device { struct
2105 * Documentation/networking/net_cachelines/net_device.rst.
2394 void (*priv_destructor)(struct net_device *dev); argument
2477 #define to_net_dev(d) container_of(d, struct net_device, dev) argument
2490 static inline bool netif_elide_gro(const struct net_device *dev) in netif_elide_gro()
2500 int netdev_get_prio_tc_map(const struct net_device *dev, u32 prio) in netdev_get_prio_tc_map()
2506 int netdev_set_prio_tc_map(struct net_device *dev, u8 prio, u8 tc) in netdev_set_prio_tc_map()
2515 int netdev_txq_to_tc(struct net_device *dev, unsigned int txq);
2516 void netdev_reset_tc(struct net_device *dev);
2517 int netdev_set_tc_queue(struct net_device *dev, u8 tc, u16 count, u16 offset);
2518 int netdev_set_num_tc(struct net_device *dev, u8 num_tc);
2521 int netdev_get_num_tc(struct net_device *dev) in netdev_get_num_tc()
2542 void netdev_unbind_sb_channel(struct net_device *dev,
2543 struct net_device *sb_dev);
2544 int netdev_bind_sb_channel_queue(struct net_device *dev,
2545 struct net_device *sb_dev,
2547 int netdev_set_sb_channel(struct net_device *dev, u16 channel);
2548 static inline int netdev_get_sb_channel(struct net_device *dev) in netdev_get_sb_channel()
2554 struct netdev_queue *netdev_get_tx_queue(const struct net_device *dev, in netdev_get_tx_queue()
2561 static inline struct netdev_queue *skb_get_tx_queue(const struct net_device *dev, in skb_get_tx_queue()
2567 static inline void netdev_for_each_tx_queue(struct net_device *dev, in netdev_for_each_tx_queue()
2568 void (*f)(struct net_device *, in netdev_for_each_tx_queue() argument
2594 u16 netdev_pick_tx(struct net_device *dev, struct sk_buff *skb,
2595 struct net_device *sb_dev);
2596 struct netdev_queue *netdev_core_pick_tx(struct net_device *dev,
2598 struct net_device *sb_dev);
2603 static inline unsigned netdev_get_fwd_headroom(struct net_device *dev) in netdev_get_fwd_headroom()
2608 static inline void netdev_set_rx_headroom(struct net_device *dev, int new_hr) in netdev_set_rx_headroom()
2615 static inline void netdev_reset_rx_headroom(struct net_device *dev) in netdev_reset_rx_headroom()
2620 static inline void *netdev_get_ml_priv(struct net_device *dev, in netdev_get_ml_priv()
2629 static inline void netdev_set_ml_priv(struct net_device *dev, in netdev_set_ml_priv()
2647 struct net *dev_net(const struct net_device *dev) in dev_net()
2653 void dev_net_set(struct net_device *dev, struct net *net) in dev_net_set()
2664 static inline void *netdev_priv(const struct net_device *dev) in netdev_priv()
2666 return (char *)dev + ALIGN(sizeof(struct net_device), NETDEV_ALIGN); in netdev_priv()
2680 void netif_queue_set_napi(struct net_device *dev, unsigned int queue_index,
2694 void netif_napi_add_weight(struct net_device *dev, struct napi_struct *napi,
2707 netif_napi_add(struct net_device *dev, struct napi_struct *napi, in netif_napi_add()
2714 netif_napi_add_tx_weight(struct net_device *dev, in netif_napi_add_tx_weight()
2733 static inline void netif_napi_add_tx(struct net_device *dev, in netif_napi_add_tx()
2765 struct net_device *dev; /* NULL is wildcarded here */
2768 struct net_device *,
2770 struct net_device *);
2773 struct net_device *);
2821 void dev_lstats_read(struct net_device *dev, u64 *packets, u64 *bytes);
2823 static inline void dev_sw_netstats_rx_add(struct net_device *dev, unsigned int len) in dev_sw_netstats_rx_add()
2833 static inline void dev_sw_netstats_tx_add(struct net_device *dev, in dev_sw_netstats_tx_add()
2845 static inline void dev_lstats_add(struct net_device *dev, unsigned int len) in dev_lstats_add()
2974 int register_netdevice_notifier_dev_net(struct net_device *dev,
2977 int unregister_netdevice_notifier_dev_net(struct net_device *dev,
2982 struct net_device *dev;
3000 struct net_device *upper_dev; /* new upper dev */
3032 int netdev_offload_xstats_enable(struct net_device *dev,
3035 int netdev_offload_xstats_disable(struct net_device *dev,
3037 bool netdev_offload_xstats_enabled(const struct net_device *dev,
3039 int netdev_offload_xstats_get(struct net_device *dev,
3048 void netdev_offload_xstats_push_delta(struct net_device *dev,
3053 struct net_device *dev) in netdev_notifier_info_init()
3059 static inline struct net_device *
3071 int call_netdevice_notifiers(unsigned long val, struct net_device *dev);
3095 #define net_device_entry(lh) list_entry(lh, struct net_device, dev_list)
3100 static inline struct net_device *next_net_device(struct net_device *dev) in next_net_device()
3110 static inline struct net_device *next_net_device_rcu(struct net_device *dev) in next_net_device_rcu()
3120 static inline struct net_device *first_net_device(struct net *net) in first_net_device()
3126 static inline struct net_device *first_net_device_rcu(struct net *net) in first_net_device_rcu()
3133 int netdev_boot_setup_check(struct net_device *dev);
3134 struct net_device *dev_getbyhwaddr_rcu(struct net *net, unsigned short type,
3136 struct net_device *dev_getfirstbyhwtype(struct net *net, unsigned short type);
3143 int dev_get_iflink(const struct net_device *dev);
3144 int dev_fill_metadata_dst(struct net_device *dev, struct sk_buff *skb);
3145 int dev_fill_forward_path(const struct net_device *dev, const u8 *daddr,
3147 struct net_device *__dev_get_by_flags(struct net *net, unsigned short flags,
3149 struct net_device *dev_get_by_name(struct net *net, const char *name);
3150 struct net_device *dev_get_by_name_rcu(struct net *net, const char *name);
3151 struct net_device *__dev_get_by_name(struct net *net, const char *name);
3153 int dev_alloc_name(struct net_device *dev, const char *name);
3154 int dev_open(struct net_device *dev, struct netlink_ext_ack *extack);
3155 void dev_close(struct net_device *dev);
3157 void dev_disable_lro(struct net_device *dev);
3159 u16 dev_pick_tx_zero(struct net_device *dev, struct sk_buff *skb,
3160 struct net_device *sb_dev);
3161 u16 dev_pick_tx_cpu_id(struct net_device *dev, struct sk_buff *skb,
3162 struct net_device *sb_dev);
3164 int __dev_queue_xmit(struct sk_buff *skb, struct net_device *sb_dev);
3173 struct net_device *sb_dev) in dev_queue_xmit_accel()
3188 int register_netdevice(struct net_device *dev);
3189 void unregister_netdevice_queue(struct net_device *dev, struct list_head *head);
3191 static inline void unregister_netdevice(struct net_device *dev) in unregister_netdevice()
3196 int netdev_refcnt_read(const struct net_device *dev);
3197 void free_netdev(struct net_device *dev);
3198 void netdev_freemem(struct net_device *dev);
3199 int init_dummy_netdev(struct net_device *dev);
3201 struct net_device *netdev_get_xmit_slave(struct net_device *dev,
3204 struct net_device *netdev_sk_get_lowest_dev(struct net_device *dev,
3206 struct net_device *dev_get_by_index(struct net *net, int ifindex);
3207 struct net_device *__dev_get_by_index(struct net *net, int ifindex);
3208 struct net_device *netdev_get_by_index(struct net *net, int ifindex,
3210 struct net_device *netdev_get_by_name(struct net *net, const char *name,
3212 struct net_device *dev_get_by_index_rcu(struct net *net, int ifindex);
3213 struct net_device *dev_get_by_napi_id(unsigned int napi_id);
3215 static inline int dev_hard_header(struct sk_buff *skb, struct net_device *dev, in dev_hard_header()
3229 const struct net_device *dev = skb->dev; in dev_parse_header()
3238 const struct net_device *dev = skb->dev; in dev_parse_header_protocol()
3246 static inline bool dev_validate_header(const struct net_device *dev, in dev_validate_header()
3265 static inline bool dev_has_header(const struct net_device *dev) in dev_has_header()
3371 static inline void netif_tx_schedule_all(struct net_device *dev) in netif_tx_schedule_all()
3390 static inline void netif_start_queue(struct net_device *dev) in netif_start_queue()
3395 static inline void netif_tx_start_all_queues(struct net_device *dev) in netif_tx_start_all_queues()
3414 static inline void netif_wake_queue(struct net_device *dev) in netif_wake_queue()
3419 static inline void netif_tx_wake_all_queues(struct net_device *dev) in netif_tx_wake_all_queues()
3442 static inline void netif_stop_queue(struct net_device *dev) in netif_stop_queue()
3447 void netif_tx_stop_all_queues(struct net_device *dev);
3460 static inline bool netif_queue_stopped(const struct net_device *dev) in netif_queue_stopped()
3602 static inline void netdev_sent_queue(struct net_device *dev, unsigned int bytes) in netdev_sent_queue()
3607 static inline bool __netdev_sent_queue(struct net_device *dev, in __netdev_sent_queue()
3658 static inline void netdev_completed_queue(struct net_device *dev, in netdev_completed_queue()
3679 static inline void netdev_reset_queue(struct net_device *dev_queue) in netdev_reset_queue()
3692 static inline u16 netdev_cap_txqueue(struct net_device *dev, u16 queue_index) in netdev_cap_txqueue()
3710 static inline bool netif_running(const struct net_device *dev) in netif_running()
3729 static inline void netif_start_subqueue(struct net_device *dev, u16 queue_index) in netif_start_subqueue()
3743 static inline void netif_stop_subqueue(struct net_device *dev, u16 queue_index) in netif_stop_subqueue()
3756 static inline bool __netif_subqueue_stopped(const struct net_device *dev, in __netif_subqueue_stopped()
3771 static inline bool netif_subqueue_stopped(const struct net_device *dev, in netif_subqueue_stopped()
3784 static inline void netif_wake_subqueue(struct net_device *dev, u16 queue_index) in netif_wake_subqueue()
3792 int netif_set_xps_queue(struct net_device *dev, const struct cpumask *mask,
3794 int __netif_set_xps_queue(struct net_device *dev, const unsigned long *mask,
3881 static inline int netif_set_xps_queue(struct net_device *dev, in netif_set_xps_queue()
3888 static inline int __netif_set_xps_queue(struct net_device *dev, in __netif_set_xps_queue()
3902 static inline bool netif_is_multiqueue(const struct net_device *dev) in netif_is_multiqueue()
3907 int netif_set_real_num_tx_queues(struct net_device *dev, unsigned int txq);
3910 int netif_set_real_num_rx_queues(struct net_device *dev, unsigned int rxq);
3912 static inline int netif_set_real_num_rx_queues(struct net_device *dev, in netif_set_real_num_rx_queues()
3919 int netif_set_real_num_queues(struct net_device *dev,
3991 bool netdev_is_rx_handler_busy(struct net_device *dev);
3992 int netdev_rx_handler_register(struct net_device *dev,
3995 void netdev_rx_handler_unregister(struct net_device *dev);
4007 int generic_hwtstamp_get_lower(struct net_device *dev,
4009 int generic_hwtstamp_set_lower(struct net_device *dev,
4012 int dev_set_hwtstamp_phylib(struct net_device *dev,
4016 unsigned int dev_get_flags(const struct net_device *);
4017 int __dev_change_flags(struct net_device *dev, unsigned int flags,
4019 int dev_change_flags(struct net_device *dev, unsigned int flags,
4021 int dev_set_alias(struct net_device *, const char *, size_t);
4022 int dev_get_alias(const struct net_device *, char *, size_t);
4023 int __dev_change_net_namespace(struct net_device *dev, struct net *net,
4026 int dev_change_net_namespace(struct net_device *dev, struct net *net, in dev_change_net_namespace()
4031 int __dev_set_mtu(struct net_device *, int);
4032 int dev_set_mtu(struct net_device *, int);
4033 int dev_pre_changeaddr_notify(struct net_device *dev, const char *addr,
4035 int dev_set_mac_address(struct net_device *dev, struct sockaddr *sa,
4037 int dev_set_mac_address_user(struct net_device *dev, struct sockaddr *sa,
4040 int dev_get_port_parent_id(struct net_device *dev,
4042 bool netdev_port_same_parent_id(struct net_device *a, struct net_device *b);
4044 struct sk_buff *validate_xmit_skb_list(struct sk_buff *skb, struct net_device *dev, bool *again);
4045 struct sk_buff *dev_hard_start_xmit(struct sk_buff *skb, struct net_device *dev,
4049 u8 dev_xdp_prog_count(struct net_device *dev);
4050 u32 dev_xdp_prog_id(struct net_device *dev, enum bpf_xdp_mode mode);
4052 int __dev_forward_skb(struct net_device *dev, struct sk_buff *skb);
4053 int dev_forward_skb(struct net_device *dev, struct sk_buff *skb);
4054 int dev_forward_skb_nomtu(struct net_device *dev, struct sk_buff *skb);
4055 bool is_skb_forwardable(const struct net_device *dev,
4058 static __always_inline bool __is_skb_forwardable(const struct net_device *dev, in __is_skb_forwardable()
4084 void netdev_core_stats_inc(struct net_device *dev, u32 offset);
4087 static inline void dev_core_stats_##FIELD##_inc(struct net_device *dev) \
4098 static __always_inline int ____dev_forward_skb(struct net_device *dev, in DEV_CORE_STATS_INC()
4114 bool dev_nit_active(struct net_device *dev);
4115 void dev_queue_xmit_nit(struct sk_buff *skb, struct net_device *dev);
4117 static inline void __dev_put(struct net_device *dev) in __dev_put()
4128 static inline void __dev_hold(struct net_device *dev) in __dev_hold()
4139 static inline void __netdev_tracker_alloc(struct net_device *dev, in __netdev_tracker_alloc()
4151 static inline void netdev_tracker_alloc(struct net_device *dev, in netdev_tracker_alloc()
4160 static inline void netdev_tracker_free(struct net_device *dev, in netdev_tracker_free()
4168 static inline void netdev_hold(struct net_device *dev, in netdev_hold()
4177 static inline void netdev_put(struct net_device *dev, in netdev_put()
4193 static inline void dev_hold(struct net_device *dev) in dev_hold()
4205 static inline void dev_put(struct net_device *dev) in dev_put()
4210 static inline void netdev_ref_replace(struct net_device *odev, in netdev_ref_replace()
4211 struct net_device *ndev, in netdev_ref_replace()
4233 void linkwatch_fire_event(struct net_device *dev);
4242 void linkwatch_sync_dev(struct net_device *dev);
4250 static inline bool netif_carrier_ok(const struct net_device *dev) in netif_carrier_ok()
4255 unsigned long dev_trans_start(struct net_device *dev);
4257 void __netdev_watchdog_up(struct net_device *dev);
4259 void netif_carrier_on(struct net_device *dev);
4260 void netif_carrier_off(struct net_device *dev);
4261 void netif_carrier_event(struct net_device *dev);
4275 static inline void netif_dormant_on(struct net_device *dev) in netif_dormant_on()
4287 static inline void netif_dormant_off(struct net_device *dev) in netif_dormant_off()
4299 static inline bool netif_dormant(const struct net_device *dev) in netif_dormant()
4315 static inline void netif_testing_on(struct net_device *dev) in netif_testing_on()
4327 static inline void netif_testing_off(struct net_device *dev) in netif_testing_off()
4339 static inline bool netif_testing(const struct net_device *dev) in netif_testing()
4351 static inline bool netif_oper_up(const struct net_device *dev) in netif_oper_up()
4363 static inline bool netif_device_present(const struct net_device *dev) in netif_device_present()
4368 void netif_device_detach(struct net_device *dev);
4370 void netif_device_attach(struct net_device *dev);
4515 static inline void netif_trans_update(struct net_device *dev) in netif_trans_update()
4528 void netif_tx_lock(struct net_device *dev);
4530 static inline void netif_tx_lock_bh(struct net_device *dev) in netif_tx_lock_bh()
4536 void netif_tx_unlock(struct net_device *dev);
4538 static inline void netif_tx_unlock_bh(struct net_device *dev) in netif_tx_unlock_bh()
4565 static inline void netif_tx_disable(struct net_device *dev) in netif_tx_disable()
4584 static inline void netif_addr_lock(struct net_device *dev) in netif_addr_lock()
4594 static inline void netif_addr_lock_bh(struct net_device *dev) in netif_addr_lock_bh()
4605 static inline void netif_addr_unlock(struct net_device *dev) in netif_addr_unlock()
4610 static inline void netif_addr_unlock_bh(struct net_device *dev) in netif_addr_unlock_bh()
4624 void ether_setup(struct net_device *dev);
4627 struct net_device *alloc_netdev_mqs(int sizeof_priv, const char *name,
4629 void (*setup)(struct net_device *),
4638 int register_netdev(struct net_device *dev);
4639 void unregister_netdev(struct net_device *dev);
4641 int devm_register_netdev(struct device *dev, struct net_device *ndev);
4649 struct net_device *dev,
4650 int (*sync)(struct net_device *, const unsigned char *),
4651 int (*unsync)(struct net_device *,
4654 struct net_device *dev,
4655 int (*sync)(struct net_device *,
4657 int (*unsync)(struct net_device *,
4660 struct net_device *dev,
4661 int (*unsync)(struct net_device *,
4664 struct net_device *dev,
4665 int (*unsync)(struct net_device *,
4670 void dev_addr_mod(struct net_device *dev, unsigned int offset,
4674 __dev_addr_set(struct net_device *dev, const void *addr, size_t len) in __dev_addr_set()
4679 static inline void dev_addr_set(struct net_device *dev, const u8 *addr) in dev_addr_set()
4684 int dev_addr_add(struct net_device *dev, const unsigned char *addr,
4686 int dev_addr_del(struct net_device *dev, const unsigned char *addr,
4690 int dev_uc_add(struct net_device *dev, const unsigned char *addr);
4691 int dev_uc_add_excl(struct net_device *dev, const unsigned char *addr);
4692 int dev_uc_del(struct net_device *dev, const unsigned char *addr);
4693 int dev_uc_sync(struct net_device *to, struct net_device *from);
4694 int dev_uc_sync_multiple(struct net_device *to, struct net_device *from);
4695 void dev_uc_unsync(struct net_device *to, struct net_device *from);
4696 void dev_uc_flush(struct net_device *dev);
4697 void dev_uc_init(struct net_device *dev);
4708 static inline int __dev_uc_sync(struct net_device *dev, in __dev_uc_sync()
4709 int (*sync)(struct net_device *, in __dev_uc_sync() argument
4711 int (*unsync)(struct net_device *, in __dev_uc_sync() argument
4724 static inline void __dev_uc_unsync(struct net_device *dev, in __dev_uc_unsync()
4725 int (*unsync)(struct net_device *, in __dev_uc_unsync() argument
4732 int dev_mc_add(struct net_device *dev, const unsigned char *addr);
4733 int dev_mc_add_global(struct net_device *dev, const unsigned char *addr);
4734 int dev_mc_add_excl(struct net_device *dev, const unsigned char *addr);
4735 int dev_mc_del(struct net_device *dev, const unsigned char *addr);
4736 int dev_mc_del_global(struct net_device *dev, const unsigned char *addr);
4737 int dev_mc_sync(struct net_device *to, struct net_device *from);
4738 int dev_mc_sync_multiple(struct net_device *to, struct net_device *from);
4739 void dev_mc_unsync(struct net_device *to, struct net_device *from);
4740 void dev_mc_flush(struct net_device *dev);
4741 void dev_mc_init(struct net_device *dev);
4752 static inline int __dev_mc_sync(struct net_device *dev, in __dev_mc_sync()
4753 int (*sync)(struct net_device *, in __dev_mc_sync() argument
4755 int (*unsync)(struct net_device *, in __dev_mc_sync() argument
4768 static inline void __dev_mc_unsync(struct net_device *dev, in __dev_mc_unsync()
4769 int (*unsync)(struct net_device *, in __dev_mc_unsync() argument
4776 void dev_set_rx_mode(struct net_device *dev);
4777 int dev_set_promiscuity(struct net_device *dev, int inc);
4778 int dev_set_allmulti(struct net_device *dev, int inc);
4779 void netdev_state_change(struct net_device *dev);
4780 void __netdev_notify_peers(struct net_device *dev);
4781 void netdev_notify_peers(struct net_device *dev);
4782 void netdev_features_change(struct net_device *dev);
4785 struct rtnl_link_stats64 *dev_get_stats(struct net_device *dev,
4791 void dev_get_tstats64(struct net_device *dev, struct rtnl_link_stats64 *s);
4814 bool netdev_has_upper_dev(struct net_device *dev, struct net_device *upper_dev);
4815 struct net_device *netdev_upper_get_next_dev_rcu(struct net_device *dev,
4825 int netdev_walk_all_upper_dev_rcu(struct net_device *dev,
4826 int (*fn)(struct net_device *upper_dev,
4830 bool netdev_has_upper_dev_all_rcu(struct net_device *dev,
4831 struct net_device *upper_dev);
4833 bool netdev_has_any_upper_dev(struct net_device *dev);
4835 void *netdev_lower_get_next_private(struct net_device *dev,
4837 void *netdev_lower_get_next_private_rcu(struct net_device *dev,
4852 void *netdev_lower_get_next(struct net_device *dev,
4861 struct net_device *netdev_next_lower_dev_rcu(struct net_device *dev,
4863 int netdev_walk_all_lower_dev(struct net_device *dev,
4864 int (*fn)(struct net_device *lower_dev,
4867 int netdev_walk_all_lower_dev_rcu(struct net_device *dev,
4868 int (*fn)(struct net_device *lower_dev,
4873 void *netdev_lower_get_first_private_rcu(struct net_device *dev);
4874 struct net_device *netdev_master_upper_dev_get(struct net_device *dev);
4875 struct net_device *netdev_master_upper_dev_get_rcu(struct net_device *dev);
4876 int netdev_upper_dev_link(struct net_device *dev, struct net_device *upper_dev,
4878 int netdev_master_upper_dev_link(struct net_device *dev,
4879 struct net_device *upper_dev,
4882 void netdev_upper_dev_unlink(struct net_device *dev,
4883 struct net_device *upper_dev);
4884 int netdev_adjacent_change_prepare(struct net_device *old_dev,
4885 struct net_device *new_dev,
4886 struct net_device *dev,
4888 void netdev_adjacent_change_commit(struct net_device *old_dev,
4889 struct net_device *new_dev,
4890 struct net_device *dev);
4891 void netdev_adjacent_change_abort(struct net_device *old_dev,
4892 struct net_device *new_dev,
4893 struct net_device *dev);
4894 void netdev_adjacent_rename_links(struct net_device *dev, char *oldname);
4895 void *netdev_lower_dev_get_private(struct net_device *dev,
4896 struct net_device *lower_dev);
4897 void netdev_lower_state_changed(struct net_device *lower_dev,
4920 void netdev_bonding_info_change(struct net_device *dev,
4924 void ethtool_notify(struct net_device *dev, unsigned int cmd, const void *data);
4926 static inline void ethtool_notify(struct net_device *dev, unsigned int cmd, in ethtool_notify()
4958 void netdev_rx_csum_fault(struct net_device *dev, struct sk_buff *skb);
4960 static inline void netdev_rx_csum_fault(struct net_device *dev, in netdev_rx_csum_fault()
4969 static inline ktime_t netdev_get_tstamp(struct net_device *dev, in netdev_get_tstamp()
4982 struct sk_buff *skb, struct net_device *dev, in __netdev_start_xmit()
4994 static inline netdev_tx_t netdev_start_xmit(struct sk_buff *skb, struct net_device *dev, in netdev_start_xmit()
5014 const char *netdev_drivername(const struct net_device *dev);
5030 struct net_device *dev) in netdev_get_wanted_features()
5047 int __netdev_update_features(struct net_device *dev);
5048 void netdev_update_features(struct net_device *dev);
5049 void netdev_change_features(struct net_device *dev);
5051 void netif_stacked_transfer_operstate(const struct net_device *rootdev,
5052 struct net_device *dev);
5055 struct net_device *dev,
5102 void netif_set_tso_max_size(struct net_device *dev, unsigned int size);
5103 void netif_set_tso_max_segs(struct net_device *dev, unsigned int segs);
5104 void netif_inherit_tso_max(struct net_device *to,
5105 const struct net_device *from);
5107 static inline bool netif_is_macsec(const struct net_device *dev) in netif_is_macsec()
5112 static inline bool netif_is_macvlan(const struct net_device *dev) in netif_is_macvlan()
5117 static inline bool netif_is_macvlan_port(const struct net_device *dev) in netif_is_macvlan_port()
5122 static inline bool netif_is_bond_master(const struct net_device *dev) in netif_is_bond_master()
5127 static inline bool netif_is_bond_slave(const struct net_device *dev) in netif_is_bond_slave()
5132 static inline bool netif_supports_nofcs(struct net_device *dev) in netif_supports_nofcs()
5137 static inline bool netif_has_l3_rx_handler(const struct net_device *dev) in netif_has_l3_rx_handler()
5142 static inline bool netif_is_l3_master(const struct net_device *dev) in netif_is_l3_master()
5147 static inline bool netif_is_l3_slave(const struct net_device *dev) in netif_is_l3_slave()
5152 static inline int dev_sdif(const struct net_device *dev) in dev_sdif()
5161 static inline bool netif_is_bridge_master(const struct net_device *dev) in netif_is_bridge_master()
5166 static inline bool netif_is_bridge_port(const struct net_device *dev) in netif_is_bridge_port()
5171 static inline bool netif_is_ovs_master(const struct net_device *dev) in netif_is_ovs_master()
5176 static inline bool netif_is_ovs_port(const struct net_device *dev) in netif_is_ovs_port()
5181 static inline bool netif_is_any_bridge_master(const struct net_device *dev) in netif_is_any_bridge_master()
5186 static inline bool netif_is_any_bridge_port(const struct net_device *dev) in netif_is_any_bridge_port()
5191 static inline bool netif_is_team_master(const struct net_device *dev) in netif_is_team_master()
5196 static inline bool netif_is_team_port(const struct net_device *dev) in netif_is_team_port()
5201 static inline bool netif_is_lag_master(const struct net_device *dev) in netif_is_lag_master()
5206 static inline bool netif_is_lag_port(const struct net_device *dev) in netif_is_lag_port()
5211 static inline bool netif_is_rxfh_configured(const struct net_device *dev) in netif_is_rxfh_configured()
5216 static inline bool netif_is_failover(const struct net_device *dev) in netif_is_failover()
5221 static inline bool netif_is_failover_slave(const struct net_device *dev) in netif_is_failover_slave()
5227 static inline void netif_keep_dst(struct net_device *dev) in netif_keep_dst()
5233 static inline bool netif_reduces_vlan_mtu(struct net_device *dev) in netif_reduces_vlan_mtu()
5245 static inline const char *netdev_name(const struct net_device *dev) in netdev_name()
5248 return "(unnamed net_device)"; in netdev_name()
5252 static inline const char *netdev_reg_state(const struct net_device *dev) in netdev_reg_state()
5308 extern struct net_device *blackhole_netdev;