Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (47 commits) GRETH: resolve SMP issues and other problems GRETH: handle frame error interrupts GRETH: avoid writing bad speed/duplex when setting transfer mode GRETH: fixed skb buffer memory leak on frame errors GRETH: GBit transmit descriptor handling optimization GRETH: fix opening/closing GRETH: added raw AMBA vendor/device number to match against. cassini: Fix build bustage on x86. e1000e: consistent use of Rx/Tx vs. RX/TX/rx/tx in comments/logs e1000e: update Copyright for 2011 e1000: Avoid unhandled IRQ r8169: keep firmware in memory. netdev: tilepro: Use is_unicast_ether_addr helper etherdevice.h: Add is_unicast_ether_addr function ks8695net: Use default implementation of ethtool_ops::get_link ks8695net: Disable non-working ethtool operations USB CDC NCM: Don't deref NULL in cdc_ncm_rx_fixup() and don't use uninitialized variable. vxge: Remember to release firmware after upgrading firmware netdev: bfin_mac: Remove is_multicast_ether_addr use in netdev_for_each_mc_addr ipsec: update MAX_AH_AUTH_LEN to support sha512 ...
This commit is contained in:
@@ -98,6 +98,17 @@ static inline int is_broadcast_ether_addr(const u8 *addr)
|
||||
return (addr[0] & addr[1] & addr[2] & addr[3] & addr[4] & addr[5]) == 0xff;
|
||||
}
|
||||
|
||||
/**
|
||||
* is_unicast_ether_addr - Determine if the Ethernet address is unicast
|
||||
* @addr: Pointer to a six-byte array containing the Ethernet address
|
||||
*
|
||||
* Return true if the address is a unicast address.
|
||||
*/
|
||||
static inline int is_unicast_ether_addr(const u8 *addr)
|
||||
{
|
||||
return !is_multicast_ether_addr(addr);
|
||||
}
|
||||
|
||||
/**
|
||||
* is_valid_ether_addr - Determine if the given Ethernet address is valid
|
||||
* @addr: Pointer to a six-byte array containing the Ethernet address
|
||||
|
@@ -520,9 +520,6 @@ struct netdev_queue {
|
||||
* please use this field instead of dev->trans_start
|
||||
*/
|
||||
unsigned long trans_start;
|
||||
u64 tx_bytes;
|
||||
u64 tx_packets;
|
||||
u64 tx_dropped;
|
||||
} ____cacheline_aligned_in_smp;
|
||||
|
||||
static inline int netdev_queue_numa_node_read(const struct netdev_queue *q)
|
||||
@@ -2265,8 +2262,6 @@ extern void dev_load(struct net *net, const char *name);
|
||||
extern void dev_mcast_init(void);
|
||||
extern struct rtnl_link_stats64 *dev_get_stats(struct net_device *dev,
|
||||
struct rtnl_link_stats64 *storage);
|
||||
extern void dev_txq_stats_fold(const struct net_device *dev,
|
||||
struct rtnl_link_stats64 *stats);
|
||||
|
||||
extern int netdev_max_backlog;
|
||||
extern int netdev_tstamp_prequeue;
|
||||
|
@@ -148,6 +148,10 @@
|
||||
* @NL80211_CMD_SET_MPATH: Set mesh path attributes for mesh path to
|
||||
* destination %NL80211_ATTR_MAC on the interface identified by
|
||||
* %NL80211_ATTR_IFINDEX.
|
||||
* @NL80211_CMD_NEW_MPATH: Create a new mesh path for the destination given by
|
||||
* %NL80211_ATTR_MAC via %NL80211_ATTR_MPATH_NEXT_HOP.
|
||||
* @NL80211_CMD_DEL_MPATH: Delete a mesh path to the destination given by
|
||||
* %NL80211_ATTR_MAC.
|
||||
* @NL80211_CMD_NEW_PATH: Add a mesh path with given attributes to the
|
||||
* the interface identified by %NL80211_ATTR_IFINDEX.
|
||||
* @NL80211_CMD_DEL_PATH: Remove a mesh path identified by %NL80211_ATTR_MAC
|
||||
@@ -612,7 +616,7 @@ enum nl80211_commands {
|
||||
* consisting of a nested array.
|
||||
*
|
||||
* @NL80211_ATTR_MESH_ID: mesh id (1-32 bytes).
|
||||
* @NL80211_ATTR_PLINK_ACTION: action to perform on the mesh peer link.
|
||||
* @NL80211_ATTR_STA_PLINK_ACTION: action to perform on the mesh peer link.
|
||||
* @NL80211_ATTR_MPATH_NEXT_HOP: MAC address of the next hop for a mesh path.
|
||||
* @NL80211_ATTR_MPATH_INFO: information about a mesh_path, part of mesh path
|
||||
* info given for %NL80211_CMD_GET_MPATH, nested attribute described at
|
||||
@@ -879,7 +883,9 @@ enum nl80211_commands {
|
||||
* See &enum nl80211_key_default_types.
|
||||
*
|
||||
* @NL80211_ATTR_MESH_SETUP: Optional mesh setup parameters. These cannot be
|
||||
* changed once the mesh is active.
|
||||
* changed once the mesh is active.
|
||||
* @NL80211_ATTR_MESH_CONFIG: Mesh configuration parameters, a nested attribute
|
||||
* containing attributes from &enum nl80211_meshconf_params.
|
||||
*
|
||||
* @NL80211_ATTR_MAX: highest attribute number currently defined
|
||||
* @__NL80211_ATTR_AFTER_LAST: internal use
|
||||
@@ -1225,8 +1231,6 @@ enum nl80211_rate_info {
|
||||
* @NL80211_STA_INFO_INACTIVE_TIME: time since last activity (u32, msecs)
|
||||
* @NL80211_STA_INFO_RX_BYTES: total received bytes (u32, from this station)
|
||||
* @NL80211_STA_INFO_TX_BYTES: total transmitted bytes (u32, to this station)
|
||||
* @__NL80211_STA_INFO_AFTER_LAST: internal
|
||||
* @NL80211_STA_INFO_MAX: highest possible station info attribute
|
||||
* @NL80211_STA_INFO_SIGNAL: signal strength of last received PPDU (u8, dBm)
|
||||
* @NL80211_STA_INFO_TX_BITRATE: current unicast tx rate, nested attribute
|
||||
* containing info as possible, see &enum nl80211_sta_info_txrate.
|
||||
@@ -1236,6 +1240,11 @@ enum nl80211_rate_info {
|
||||
* @NL80211_STA_INFO_TX_RETRIES: total retries (u32, to this station)
|
||||
* @NL80211_STA_INFO_TX_FAILED: total failed packets (u32, to this station)
|
||||
* @NL80211_STA_INFO_SIGNAL_AVG: signal strength average (u8, dBm)
|
||||
* @NL80211_STA_INFO_LLID: the station's mesh LLID
|
||||
* @NL80211_STA_INFO_PLID: the station's mesh PLID
|
||||
* @NL80211_STA_INFO_PLINK_STATE: peer link state for the station
|
||||
* @__NL80211_STA_INFO_AFTER_LAST: internal
|
||||
* @NL80211_STA_INFO_MAX: highest possible station info attribute
|
||||
*/
|
||||
enum nl80211_sta_info {
|
||||
__NL80211_STA_INFO_INVALID,
|
||||
@@ -1626,7 +1635,7 @@ enum nl80211_mntr_flags {
|
||||
* @NL80211_MESHCONF_HWMP_NET_DIAM_TRVS_TIME: The interval of time (in TUs)
|
||||
* that it takes for an HWMP information element to propagate across the mesh
|
||||
*
|
||||
* @NL80211_MESHCONF_ROOTMODE: whether root mode is enabled or not
|
||||
* @NL80211_MESHCONF_HWMP_ROOTMODE: whether root mode is enabled or not
|
||||
*
|
||||
* @NL80211_MESHCONF_ELEMENT_TTL: specifies the value of TTL field set at a
|
||||
* source mesh point for path selection elements.
|
||||
@@ -1678,6 +1687,7 @@ enum nl80211_meshconf_params {
|
||||
* element that vendors will use to identify the path selection methods and
|
||||
* metrics in use.
|
||||
*
|
||||
* @NL80211_MESH_SETUP_ATTR_MAX: highest possible mesh setup attribute number
|
||||
* @__NL80211_MESH_SETUP_ATTR_AFTER_LAST: Internal use
|
||||
*/
|
||||
enum nl80211_mesh_setup_params {
|
||||
|
@@ -255,6 +255,11 @@ typedef unsigned int sk_buff_data_t;
|
||||
typedef unsigned char *sk_buff_data_t;
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_NF_DEFRAG_IPV4) || defined(CONFIG_NF_DEFRAG_IPV4_MODULE) || \
|
||||
defined(CONFIG_NF_DEFRAG_IPV6) || defined(CONFIG_NF_DEFRAG_IPV6_MODULE)
|
||||
#define NET_SKBUFF_NF_DEFRAG_NEEDED 1
|
||||
#endif
|
||||
|
||||
/**
|
||||
* struct sk_buff - socket buffer
|
||||
* @next: Next buffer in list
|
||||
@@ -362,6 +367,8 @@ struct sk_buff {
|
||||
void (*destructor)(struct sk_buff *skb);
|
||||
#if defined(CONFIG_NF_CONNTRACK) || defined(CONFIG_NF_CONNTRACK_MODULE)
|
||||
struct nf_conntrack *nfct;
|
||||
#endif
|
||||
#ifdef NET_SKBUFF_NF_DEFRAG_NEEDED
|
||||
struct sk_buff *nfct_reasm;
|
||||
#endif
|
||||
#ifdef CONFIG_BRIDGE_NETFILTER
|
||||
@@ -2057,6 +2064,8 @@ static inline void nf_conntrack_get(struct nf_conntrack *nfct)
|
||||
if (nfct)
|
||||
atomic_inc(&nfct->use);
|
||||
}
|
||||
#endif
|
||||
#ifdef NET_SKBUFF_NF_DEFRAG_NEEDED
|
||||
static inline void nf_conntrack_get_reasm(struct sk_buff *skb)
|
||||
{
|
||||
if (skb)
|
||||
@@ -2085,6 +2094,8 @@ static inline void nf_reset(struct sk_buff *skb)
|
||||
#if defined(CONFIG_NF_CONNTRACK) || defined(CONFIG_NF_CONNTRACK_MODULE)
|
||||
nf_conntrack_put(skb->nfct);
|
||||
skb->nfct = NULL;
|
||||
#endif
|
||||
#ifdef NET_SKBUFF_NF_DEFRAG_NEEDED
|
||||
nf_conntrack_put_reasm(skb->nfct_reasm);
|
||||
skb->nfct_reasm = NULL;
|
||||
#endif
|
||||
@@ -2101,6 +2112,8 @@ static inline void __nf_copy(struct sk_buff *dst, const struct sk_buff *src)
|
||||
dst->nfct = src->nfct;
|
||||
nf_conntrack_get(src->nfct);
|
||||
dst->nfctinfo = src->nfctinfo;
|
||||
#endif
|
||||
#ifdef NET_SKBUFF_NF_DEFRAG_NEEDED
|
||||
dst->nfct_reasm = src->nfct_reasm;
|
||||
nf_conntrack_get_reasm(src->nfct_reasm);
|
||||
#endif
|
||||
@@ -2114,6 +2127,8 @@ static inline void nf_copy(struct sk_buff *dst, const struct sk_buff *src)
|
||||
{
|
||||
#if defined(CONFIG_NF_CONNTRACK) || defined(CONFIG_NF_CONNTRACK_MODULE)
|
||||
nf_conntrack_put(dst->nfct);
|
||||
#endif
|
||||
#ifdef NET_SKBUFF_NF_DEFRAG_NEEDED
|
||||
nf_conntrack_put_reasm(dst->nfct_reasm);
|
||||
#endif
|
||||
#ifdef CONFIG_BRIDGE_NETFILTER
|
||||
|
Reference in New Issue
Block a user