Merge branch 'from-linus' into upstream
This commit is contained in:
@ -127,7 +127,7 @@
|
||||
* sure which should go first, but I bet it won't make much
|
||||
* difference if we are running VLANs. The good news is that
|
||||
* this protocol won't be in the list unless compiled in, so
|
||||
* the average user (w/out VLANs) will not be adversly affected.
|
||||
* the average user (w/out VLANs) will not be adversely affected.
|
||||
* --BLG
|
||||
*
|
||||
* 0800 IP
|
||||
@ -149,7 +149,7 @@ static struct list_head ptype_base[16]; /* 16 way hashed list */
|
||||
static struct list_head ptype_all; /* Taps */
|
||||
|
||||
/*
|
||||
* The @dev_base list is protected by @dev_base_lock and the rtln
|
||||
* The @dev_base list is protected by @dev_base_lock and the rtnl
|
||||
* semaphore.
|
||||
*
|
||||
* Pure readers hold dev_base_lock for reading.
|
||||
@ -641,10 +641,12 @@ int dev_valid_name(const char *name)
|
||||
* @name: name format string
|
||||
*
|
||||
* Passed a format string - eg "lt%d" it will try and find a suitable
|
||||
* id. Not efficient for many devices, not called a lot. The caller
|
||||
* must hold the dev_base or rtnl lock while allocating the name and
|
||||
* adding the device in order to avoid duplicates. Returns the number
|
||||
* of the unit assigned or a negative errno code.
|
||||
* id. It scans list of devices to build up a free map, then chooses
|
||||
* the first empty slot. The caller must hold the dev_base or rtnl lock
|
||||
* while allocating the name and adding the device in order to avoid
|
||||
* duplicates.
|
||||
* Limited to bits_per_byte * page size devices (ie 32K on most platforms).
|
||||
* Returns the number of the unit assigned or a negative errno code.
|
||||
*/
|
||||
|
||||
int dev_alloc_name(struct net_device *dev, const char *name)
|
||||
@ -744,7 +746,7 @@ int dev_change_name(struct net_device *dev, char *newname)
|
||||
}
|
||||
|
||||
/**
|
||||
* netdev_features_change - device changes fatures
|
||||
* netdev_features_change - device changes features
|
||||
* @dev: device to cause notification
|
||||
*
|
||||
* Called to indicate a device has changed features.
|
||||
@ -2196,7 +2198,7 @@ int netdev_set_master(struct net_device *slave, struct net_device *master)
|
||||
* @dev: device
|
||||
* @inc: modifier
|
||||
*
|
||||
* Add or remove promsicuity from a device. While the count in the device
|
||||
* Add or remove promiscuity from a device. While the count in the device
|
||||
* remains above zero the interface remains promiscuous. Once it hits zero
|
||||
* the device reverts back to normal filtering operation. A negative inc
|
||||
* value is used to drop promiscuity on the device.
|
||||
@ -3122,7 +3124,7 @@ EXPORT_SYMBOL(alloc_netdev);
|
||||
void free_netdev(struct net_device *dev)
|
||||
{
|
||||
#ifdef CONFIG_SYSFS
|
||||
/* Compatiablity with error handling in drivers */
|
||||
/* Compatibility with error handling in drivers */
|
||||
if (dev->reg_state == NETREG_UNINITIALIZED) {
|
||||
kfree((char *)dev - dev->padded);
|
||||
return;
|
||||
|
@ -170,8 +170,8 @@ config IP_NF_PPTP
|
||||
Documentation/modules.txt. If unsure, say `N'.
|
||||
|
||||
config IP_NF_H323
|
||||
tristate 'H.323 protocol support'
|
||||
depends on IP_NF_CONNTRACK
|
||||
tristate 'H.323 protocol support (EXPERIMENTAL)'
|
||||
depends on IP_NF_CONNTRACK && EXPERIMENTAL
|
||||
help
|
||||
H.323 is a VoIP signalling protocol from ITU-T. As one of the most
|
||||
important VoIP protocols, it is widely used by voice hardware and
|
||||
|
@ -1318,6 +1318,7 @@ getorigdst(struct sock *sk, int optval, void __user *user, int *len)
|
||||
.tuple.dst.u.tcp.port;
|
||||
sin.sin_addr.s_addr = ct->tuplehash[IP_CT_DIR_ORIGINAL]
|
||||
.tuple.dst.ip;
|
||||
memset(sin.sin_zero, 0, sizeof(sin.sin_zero));
|
||||
|
||||
DEBUGP("SO_ORIGINAL_DST: %u.%u.%u.%u %u\n",
|
||||
NIPQUAD(sin.sin_addr.s_addr), ntohs(sin.sin_port));
|
||||
|
@ -469,8 +469,8 @@ pptp_inbound_pkt(struct sk_buff **pskb,
|
||||
DEBUGP("%s but no session\n", pptp_msg_name[msg]);
|
||||
break;
|
||||
}
|
||||
if (info->sstate != PPTP_CALL_IN_REP
|
||||
&& info->sstate != PPTP_CALL_IN_CONF) {
|
||||
if (info->cstate != PPTP_CALL_IN_REP
|
||||
&& info->cstate != PPTP_CALL_IN_CONF) {
|
||||
DEBUGP("%s but never sent IN_CALL_REPLY\n",
|
||||
pptp_msg_name[msg]);
|
||||
break;
|
||||
|
@ -348,6 +348,7 @@ getorigdst(struct sock *sk, int optval, void __user *user, int *len)
|
||||
.tuple.dst.u.tcp.port;
|
||||
sin.sin_addr.s_addr = ct->tuplehash[IP_CT_DIR_ORIGINAL]
|
||||
.tuple.dst.u3.ip;
|
||||
memset(sin.sin_zero, 0, sizeof(sin.sin_zero));
|
||||
|
||||
DEBUGP("SO_ORIGINAL_DST: %u.%u.%u.%u %u\n",
|
||||
NIPQUAD(sin.sin_addr.s_addr), ntohs(sin.sin_port));
|
||||
|
@ -135,7 +135,8 @@ static void hstcp_cong_avoid(struct sock *sk, u32 adk, u32 rtt,
|
||||
|
||||
/* Do additive increase */
|
||||
if (tp->snd_cwnd < tp->snd_cwnd_clamp) {
|
||||
tp->snd_cwnd_cnt += ca->ai;
|
||||
/* cwnd = cwnd + a(w) / cwnd */
|
||||
tp->snd_cwnd_cnt += ca->ai + 1;
|
||||
if (tp->snd_cwnd_cnt >= tp->snd_cwnd) {
|
||||
tp->snd_cwnd_cnt -= tp->snd_cwnd;
|
||||
tp->snd_cwnd++;
|
||||
|
@ -280,10 +280,13 @@ static int inline rt6_check_neigh(struct rt6_info *rt)
|
||||
{
|
||||
struct neighbour *neigh = rt->rt6i_nexthop;
|
||||
int m = 0;
|
||||
if (neigh) {
|
||||
if (rt->rt6i_flags & RTF_NONEXTHOP ||
|
||||
!(rt->rt6i_flags & RTF_GATEWAY))
|
||||
m = 1;
|
||||
else if (neigh) {
|
||||
read_lock_bh(&neigh->lock);
|
||||
if (neigh->nud_state & NUD_VALID)
|
||||
m = 1;
|
||||
m = 2;
|
||||
read_unlock_bh(&neigh->lock);
|
||||
}
|
||||
return m;
|
||||
@ -292,15 +295,18 @@ static int inline rt6_check_neigh(struct rt6_info *rt)
|
||||
static int rt6_score_route(struct rt6_info *rt, int oif,
|
||||
int strict)
|
||||
{
|
||||
int m = rt6_check_dev(rt, oif);
|
||||
int m, n;
|
||||
|
||||
m = rt6_check_dev(rt, oif);
|
||||
if (!m && (strict & RT6_SELECT_F_IFACE))
|
||||
return -1;
|
||||
#ifdef CONFIG_IPV6_ROUTER_PREF
|
||||
m |= IPV6_DECODE_PREF(IPV6_EXTRACT_PREF(rt->rt6i_flags)) << 2;
|
||||
#endif
|
||||
if (rt6_check_neigh(rt))
|
||||
n = rt6_check_neigh(rt);
|
||||
if (n > 1)
|
||||
m |= 16;
|
||||
else if (strict & RT6_SELECT_F_REACHABLE)
|
||||
else if (!n && strict & RT6_SELECT_F_REACHABLE)
|
||||
return -1;
|
||||
return m;
|
||||
}
|
||||
|
Reference in New Issue
Block a user