Chapter 2. Network device support
Prev
Next
Chapter 2. Network device support
Table of Contents
Driver Support
PHY Support
Driver Support
dev_add_pack
— add packet handler
__dev_remove_pack
— remove packet handler
dev_remove_pack
— remove packet handler
netdev_boot_setup_check
— check boot time settings
__dev_get_by_name
— find a device by its name
dev_get_by_name_rcu
— find a device by its name
dev_get_by_name
— find a device by its name
__dev_get_by_index
— find a device by its ifindex
dev_get_by_index_rcu
— find a device by its ifindex
dev_get_by_index
— find a device by its ifindex
dev_getbyhwaddr_rcu
— find a device by its hardware address
dev_get_by_flags_rcu
— find any device with given flags
dev_valid_name
— check if name is okay for network device
dev_alloc_name
— allocate a name for a device
netdev_features_change
— device changes features
netdev_state_change
— device changes state
dev_load
— load a network module
dev_open
— prepare an interface for use.
dev_close
— shutdown an interface.
dev_disable_lro
— disable Large Receive Offload on a device
register_netdevice_notifier
— register a network notifier block
unregister_netdevice_notifier
— unregister a network notifier block
call_netdevice_notifiers
— call all network notifier blocks
dev_forward_skb
— loopback an skb to another netif
netif_set_real_num_rx_queues
— set actual number of RX queues used
netif_device_detach
— mark device as removed
netif_device_attach
— mark device as attached
skb_set_dev
— - assign a new device to a buffer
skb_gso_segment
— Perform segmentation on skb.
dev_queue_xmit
— transmit a buffer
rps_may_expire_flow
— check whether an RFS hardware filter may be removed
netif_rx
— post buffer to the network code
netdev_rx_handler_register
— register receive handler
netdev_rx_handler_unregister
— unregister receive handler
netif_receive_skb
— process receive buffer from network
__napi_schedule
— schedule for receive
register_gifconf
— register a SIOCGIF handler
netdev_set_master
— set up master pointer
netdev_set_bond_master
— set up bonding master/slave pair
dev_set_promiscuity
— update promiscuity count on a device
dev_set_allmulti
— update allmulti count on a device
dev_ethtool_get_settings
— call device's ethtool_ops::
get_settings
dev_get_flags
— get flags reported to userspace
dev_change_flags
— change device settings
dev_set_mtu
— Change maximum transfer unit
dev_set_group
— Change group this device belongs to
dev_set_mac_address
— Change Media Access Control Address
netdev_update_features
— recalculate device features
netdev_change_features
— recalculate device features
netif_stacked_transfer_operstate
— transfer operstate
register_netdevice
— register a network device
init_dummy_netdev
— init a dummy network device for NAPI
register_netdev
— register a network device
dev_get_stats
— get network device statistics
alloc_netdev_mqs
— allocate network device
free_netdev
— free network device
synchronize_net
— Synchronize with packet receive processing
unregister_netdevice_queue
— remove device from the kernel
unregister_netdevice_many
— unregister many devices
unregister_netdev
— remove device from the kernel
dev_change_net_namespace
— move device to different nethost namespace
netdev_increment_features
— increment feature set by one
eth_header
— create the Ethernet header
eth_rebuild_header
— rebuild the Ethernet MAC header.
eth_type_trans
— determine the packet's protocol ID.
eth_header_parse
— extract hardware address from packet
eth_header_cache
— fill cache entry from neighbour
eth_header_cache_update
— update cache entry
eth_mac_addr
— set new Ethernet hardware address
eth_change_mtu
— set new MTU size
ether_setup
— setup Ethernet network device
alloc_etherdev_mqs
— Allocates and sets up an Ethernet device
netif_carrier_on
— set carrier
netif_carrier_off
— clear carrier
netif_notify_peers
— notify network peers about existence of
dev
is_zero_ether_addr
— Determine if give Ethernet address is all zeros.
is_multicast_ether_addr
— Determine if the Ethernet address is a multicast.
is_local_ether_addr
— Determine if the Ethernet address is locally-assigned one (IEEE 802).
is_broadcast_ether_addr
— Determine if the Ethernet address is broadcast
is_unicast_ether_addr
— Determine if the Ethernet address is unicast
is_valid_ether_addr
— Determine if the given Ethernet address is valid
random_ether_addr
— Generate software assigned random Ethernet address
dev_hw_addr_random
— Create random MAC and set device flag
compare_ether_addr
— Compare two Ethernet addresses
compare_ether_addr_64bits
— Compare two Ethernet addresses
is_etherdev_addr
— Tell if given Ethernet address belongs to the device.
compare_ether_header
— Compare two Ethernet headers
napi_schedule_prep
— check if napi can be scheduled
napi_schedule
— schedule NAPI poll
napi_disable
— prevent NAPI from scheduling
napi_enable
— enable NAPI scheduling
napi_synchronize
— wait until NAPI is not running
netdev_priv
— access network device private data
netif_start_queue
— allow transmit
netif_wake_queue
— restart transmit
netif_stop_queue
— stop transmitted packets
netif_queue_stopped
— test if transmit queue is flowblocked
netif_running
— test if up
netif_start_subqueue
— allow sending packets on subqueue
netif_stop_subqueue
— stop sending packets on subqueue
__netif_subqueue_stopped
— test status of subqueue
netif_wake_subqueue
— allow sending packets on subqueue
netif_is_multiqueue
— test if device has multiple transmit queues
dev_put
— release reference to device
dev_hold
— get reference to device
netif_carrier_ok
— test if carrier present
netif_dormant_on
— mark device as dormant.
netif_dormant_off
— set device as not dormant.
netif_dormant
— test if carrier present
netif_oper_up
— test if device is operational
netif_device_present
— is device available or removed
netif_tx_lock
— grab network device transmit lock