table of contents
STRUCT NET_DEVICE(9) | Network device support | STRUCT NET_DEVICE(9) |
NAME¶
struct_net_device - The DEVICE structure. Actually, this whole structure is a big mistake. It mixes I/O data with strictly “high-level” data, and it has to know about almost every data structure used in the INET module.SYNOPSIS¶
struct net_device { char name; struct hlist_node name_hlist; char * ifalias; unsigned long mem_end; unsigned long mem_start; unsigned long base_addr; int irq; atomic_t carrier_changes; unsigned long state; struct list_head dev_list; struct list_head napi_list; struct list_head unreg_list; struct list_head close_list; struct list_head ptype_all; struct list_head ptype_specific; struct {unnamed_struct}; #if IS_ENABLED(CONFIG_GARP struct garp_port __rcu * garp_port; #endif #if IS_ENABLED(CONFIG_MRP struct mrp_port __rcu * mrp_port; #endif struct device dev; const struct attribute_group * sysfs_groups; const struct attribute_group * sysfs_rx_queue_group; const struct rtnl_link_ops * rtnl_link_ops; #define GSO_MAX_SIZE 65536 unsigned int gso_max_size; #define GSO_MAX_SEGS 65535 u16 gso_max_segs; #ifdef CONFIG_DCB const struct dcbnl_rtnl_ops * dcbnl_ops; #endif u8 num_tc; struct netdev_tc_txq tc_to_txq; u8 prio_tc_map; #if IS_ENABLED(CONFIG_FCOE unsigned int fcoe_ddp_xid; #endif #if IS_ENABLED(CONFIG_CGROUP_NET_PRIO struct netprio_map __rcu * priomap; #endif struct phy_device * phydev; struct lock_class_key * qdisc_tx_busylock; struct lock_class_key * qdisc_running_key; bool proto_down; };
MEMBERS¶
char namestruct hlist_node name_hlist
char * ifalias
unsigned long mem_end
unsigned long mem_start
unsigned long base_addr
int irq
atomic_t carrier_changes
unsigned long state
struct list_head dev_list
struct list_head napi_list
struct list_head unreg_list
struct list_head close_list
struct list_head ptype_all
struct list_head ptype_specific
struct {unnamed_struct}
struct garp_port __rcu * garp_port
struct mrp_port __rcu * mrp_port
struct device dev
const struct attribute_group * sysfs_groups
const struct attribute_group * sysfs_rx_queue_group
const struct rtnl_link_ops * rtnl_link_ops
unsigned int gso_max_size
u16 gso_max_segs
const struct dcbnl_rtnl_ops * dcbnl_ops
u8 num_tc
struct netdev_tc_txq tc_to_txq
u8 prio_tc_map
unsigned int fcoe_ddp_xid
struct netprio_map __rcu * priomap
struct phy_device * phydev
struct lock_class_key * qdisc_tx_busylock
struct lock_class_key * qdisc_running_key
bool proto_down
DESCRIPTION¶
interface address info:FIXME: cleanup struct net_device such that network protocol info moves out.
COPYRIGHT¶
September 2017 | Kernel Hackers Manual 4.12 |