mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-09 22:14:36 -04:00
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
* 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: (45 commits)
[NETFILTER]: xt_time should not assume CONFIG_KTIME_SCALAR
[NET]: Move unneeded data to initdata section.
[NET]: Cleanup pernet operation without CONFIG_NET_NS
[TEHUTI]: Fix incorrect usage of strncat in bdx_get_drvinfo()
[MYRI_SBUS]: Prevent that myri_do_handshake lies about ticks.
[NETFILTER]: bridge: fix double POSTROUTING hook invocation
[NETFILTER]: Consolidate nf_sockopt and compat_nf_sockopt
[NETFILTER]: nf_nat: fix memset error
[INET]: Use list_head-s in inetpeer.c
[IPVS]: Remove unused exports.
[NET]: Unexport sysctl_{r,w}mem_max.
[TG3]: Update version to 3.86
[TG3]: MII => TP
[TG3]: Add A1 revs
[TG3]: Increase the PCI MRRS
[TG3]: Prescaler fix
[TG3]: Limit 5784 / 5764 to MAC LED mode
[TG3]: Disable GPHY autopowerdown
[TG3]: CPMU adjustments for loopback tests
[TG3]: Fix nvram selftest failures
...
This commit is contained in:
@@ -95,6 +95,12 @@ enum sock_type {
|
||||
|
||||
#endif /* ARCH_HAS_SOCKET_TYPES */
|
||||
|
||||
enum sock_shutdown_cmd {
|
||||
SHUT_RD = 0,
|
||||
SHUT_WR = 1,
|
||||
SHUT_RDWR = 2,
|
||||
};
|
||||
|
||||
/**
|
||||
* struct socket - general BSD socket
|
||||
* @state: socket state (%SS_CONNECTED, etc)
|
||||
@@ -223,6 +229,8 @@ extern int kernel_setsockopt(struct socket *sock, int level, int optname,
|
||||
extern int kernel_sendpage(struct socket *sock, struct page *page, int offset,
|
||||
size_t size, int flags);
|
||||
extern int kernel_sock_ioctl(struct socket *sock, int cmd, unsigned long arg);
|
||||
extern int kernel_sock_shutdown(struct socket *sock,
|
||||
enum sock_shutdown_cmd how);
|
||||
|
||||
#ifndef CONFIG_SMP
|
||||
#define SOCKOPS_WRAPPED(name) name
|
||||
|
||||
@@ -491,9 +491,11 @@ struct nduseroptmsg
|
||||
unsigned char nduseropt_family;
|
||||
unsigned char nduseropt_pad1;
|
||||
unsigned short nduseropt_opts_len; /* Total length of options */
|
||||
int nduseropt_ifindex;
|
||||
__u8 nduseropt_icmp_type;
|
||||
__u8 nduseropt_icmp_code;
|
||||
unsigned short nduseropt_pad2;
|
||||
unsigned int nduseropt_pad3;
|
||||
/* Followed by one or more ND options */
|
||||
};
|
||||
|
||||
|
||||
@@ -13,9 +13,6 @@ struct sock;
|
||||
struct sockaddr;
|
||||
struct socket;
|
||||
|
||||
extern void inet_remove_sock(struct sock *sk1);
|
||||
extern void inet_put_sock(unsigned short num,
|
||||
struct sock *sk);
|
||||
extern int inet_release(struct socket *sock);
|
||||
extern int inet_stream_connect(struct socket *sock,
|
||||
struct sockaddr * uaddr,
|
||||
@@ -30,7 +27,6 @@ extern int inet_sendmsg(struct kiocb *iocb,
|
||||
struct msghdr *msg,
|
||||
size_t size);
|
||||
extern int inet_shutdown(struct socket *sock, int how);
|
||||
extern unsigned int inet_poll(struct file * file, struct socket *sock, struct poll_table_struct *wait);
|
||||
extern int inet_listen(struct socket *sock, int backlog);
|
||||
|
||||
extern void inet_sock_destruct(struct sock *sk);
|
||||
|
||||
@@ -22,7 +22,7 @@ struct inet_peer
|
||||
__be32 v4daddr; /* peer's address */
|
||||
__u16 avl_height;
|
||||
__u16 ip_id_count; /* IP ID for the next packet */
|
||||
struct inet_peer *unused_next, **unused_prevp;
|
||||
struct list_head unused;
|
||||
__u32 dtime; /* the time of last use of not
|
||||
* referenced entries */
|
||||
atomic_t refcnt;
|
||||
|
||||
@@ -119,9 +119,11 @@ static inline struct net *maybe_get_net(struct net *net)
|
||||
#ifdef CONFIG_NET_NS
|
||||
#define __net_init
|
||||
#define __net_exit
|
||||
#define __net_initdata
|
||||
#else
|
||||
#define __net_init __init
|
||||
#define __net_exit __exit_refok
|
||||
#define __net_initdata __initdata
|
||||
#endif
|
||||
|
||||
struct pernet_operations {
|
||||
|
||||
@@ -103,6 +103,7 @@ typedef enum {
|
||||
SCTP_CMD_ASSOC_CHANGE, /* generate and send assoc_change event */
|
||||
SCTP_CMD_ADAPTATION_IND, /* generate and send adaptation event */
|
||||
SCTP_CMD_ASSOC_SHKEY, /* generate the association shared keys */
|
||||
SCTP_CMD_T1_RETRAN, /* Mark for retransmission after T1 timeout */
|
||||
SCTP_CMD_LAST
|
||||
} sctp_verb_t;
|
||||
|
||||
|
||||
@@ -186,6 +186,8 @@ typedef enum {
|
||||
SCTP_IERROR_AUTH_BAD_HMAC,
|
||||
SCTP_IERROR_AUTH_BAD_KEYID,
|
||||
SCTP_IERROR_PROTO_VIOLATION,
|
||||
SCTP_IERROR_ERROR,
|
||||
SCTP_IERROR_ABORT,
|
||||
} sctp_ierror_t;
|
||||
|
||||
|
||||
@@ -407,6 +409,7 @@ typedef enum {
|
||||
SCTP_RTXR_T3_RTX,
|
||||
SCTP_RTXR_FAST_RTX,
|
||||
SCTP_RTXR_PMTUD,
|
||||
SCTP_RTXR_T1_RTX,
|
||||
} sctp_retransmit_reason_t;
|
||||
|
||||
/* Reasons to lower cwnd. */
|
||||
|
||||
@@ -65,7 +65,6 @@
|
||||
|
||||
|
||||
#ifdef TEST_FRAME
|
||||
#undef CONFIG_PROC_FS
|
||||
#undef CONFIG_SCTP_DBG_OBJCNT
|
||||
#undef CONFIG_SYSCTL
|
||||
#endif /* TEST_FRAME */
|
||||
@@ -267,6 +266,7 @@ enum
|
||||
SCTP_MIB_T5_SHUTDOWN_GUARD_EXPIREDS,
|
||||
SCTP_MIB_DELAY_SACK_EXPIREDS,
|
||||
SCTP_MIB_AUTOCLOSE_EXPIREDS,
|
||||
SCTP_MIB_T1_RETRANSMITS,
|
||||
SCTP_MIB_T3_RETRANSMITS,
|
||||
SCTP_MIB_PMTUD_RETRANSMITS,
|
||||
SCTP_MIB_FAST_RETRANSMITS,
|
||||
@@ -664,6 +664,9 @@ static inline int sctp_vtag_hashfn(__u16 lport, __u16 rport, __u32 vtag)
|
||||
return (h & (sctp_assoc_hashsize-1));
|
||||
}
|
||||
|
||||
#define sctp_for_each_hentry(epb, node, head) \
|
||||
hlist_for_each_entry(epb, node, head, node)
|
||||
|
||||
/* Is a socket of this style? */
|
||||
#define sctp_style(sk, style) __sctp_style((sk), (SCTP_SOCKET_##style))
|
||||
static inline int __sctp_style(const struct sock *sk, sctp_socket_type_t style)
|
||||
|
||||
@@ -100,20 +100,19 @@ struct crypto_hash;
|
||||
struct sctp_bind_bucket {
|
||||
unsigned short port;
|
||||
unsigned short fastreuse;
|
||||
struct sctp_bind_bucket *next;
|
||||
struct sctp_bind_bucket **pprev;
|
||||
struct hlist_node node;
|
||||
struct hlist_head owner;
|
||||
};
|
||||
|
||||
struct sctp_bind_hashbucket {
|
||||
spinlock_t lock;
|
||||
struct sctp_bind_bucket *chain;
|
||||
struct hlist_head chain;
|
||||
};
|
||||
|
||||
/* Used for hashing all associations. */
|
||||
struct sctp_hashbucket {
|
||||
rwlock_t lock;
|
||||
struct sctp_ep_common *chain;
|
||||
struct hlist_head chain;
|
||||
} __attribute__((__aligned__(8)));
|
||||
|
||||
|
||||
@@ -212,6 +211,7 @@ extern struct sctp_globals {
|
||||
|
||||
/* Flag to indicate if addip is enabled. */
|
||||
int addip_enable;
|
||||
int addip_noauth_enable;
|
||||
|
||||
/* Flag to indicate if PR-SCTP is enabled. */
|
||||
int prsctp_enable;
|
||||
@@ -249,6 +249,7 @@ extern struct sctp_globals {
|
||||
#define sctp_local_addr_list (sctp_globals.local_addr_list)
|
||||
#define sctp_local_addr_lock (sctp_globals.addr_list_lock)
|
||||
#define sctp_addip_enable (sctp_globals.addip_enable)
|
||||
#define sctp_addip_noauth (sctp_globals.addip_noauth_enable)
|
||||
#define sctp_prsctp_enable (sctp_globals.prsctp_enable)
|
||||
#define sctp_auth_enable (sctp_globals.auth_enable)
|
||||
|
||||
@@ -873,10 +874,11 @@ struct sctp_transport {
|
||||
* address list derived from the INIT or INIT ACK chunk, a
|
||||
* number of data elements needs to be maintained including:
|
||||
*/
|
||||
__u32 rtt; /* This is the most recent RTT. */
|
||||
|
||||
/* RTO : The current retransmission timeout value. */
|
||||
unsigned long rto;
|
||||
unsigned long last_rto;
|
||||
|
||||
__u32 rtt; /* This is the most recent RTT. */
|
||||
|
||||
/* RTTVAR : The current RTT variation. */
|
||||
__u32 rttvar;
|
||||
@@ -1184,9 +1186,7 @@ int sctp_bind_addr_copy(struct sctp_bind_addr *dest,
|
||||
int flags);
|
||||
int sctp_add_bind_addr(struct sctp_bind_addr *, union sctp_addr *,
|
||||
__u8 use_as_src, gfp_t gfp);
|
||||
int sctp_del_bind_addr(struct sctp_bind_addr *, union sctp_addr *,
|
||||
void fastcall (*rcu_call)(struct rcu_head *,
|
||||
void (*func)(struct rcu_head *)));
|
||||
int sctp_del_bind_addr(struct sctp_bind_addr *, union sctp_addr *);
|
||||
int sctp_bind_addr_match(struct sctp_bind_addr *, const union sctp_addr *,
|
||||
struct sctp_sock *);
|
||||
union sctp_addr *sctp_find_unmatch_addr(struct sctp_bind_addr *bp,
|
||||
@@ -1229,8 +1229,7 @@ typedef enum {
|
||||
|
||||
struct sctp_ep_common {
|
||||
/* Fields to help us manage our entries in the hash tables. */
|
||||
struct sctp_ep_common *next;
|
||||
struct sctp_ep_common **pprev;
|
||||
struct hlist_node node;
|
||||
int hashent;
|
||||
|
||||
/* Runtime type information. What kind of endpoint is this? */
|
||||
@@ -1541,7 +1540,6 @@ struct sctp_association {
|
||||
__u8 asconf_capable; /* Does peer support ADDIP? */
|
||||
__u8 prsctp_capable; /* Can peer do PR-SCTP? */
|
||||
__u8 auth_capable; /* Is peer doing SCTP-AUTH? */
|
||||
__u8 addip_capable; /* Can peer do ADD-IP */
|
||||
|
||||
__u32 adaptation_ind; /* Adaptation Code point. */
|
||||
|
||||
|
||||
Reference in New Issue
Block a user