Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Conflicts: drivers/net/tg3.c drivers/net/wireless/rt2x00/rt2x00dev.c net/mac80211/ieee80211_i.h
This commit is contained in:
@@ -94,6 +94,28 @@ extern void addrconf_join_solict(struct net_device *dev,
|
||||
extern void addrconf_leave_solict(struct inet6_dev *idev,
|
||||
struct in6_addr *addr);
|
||||
|
||||
static inline unsigned long addrconf_timeout_fixup(u32 timeout,
|
||||
unsigned unit)
|
||||
{
|
||||
if (timeout == 0xffffffff)
|
||||
return ~0UL;
|
||||
|
||||
/*
|
||||
* Avoid arithmetic overflow.
|
||||
* Assuming unit is constant and non-zero, this "if" statement
|
||||
* will go away on 64bit archs.
|
||||
*/
|
||||
if (0xfffffffe > LONG_MAX / unit && timeout > LONG_MAX / unit)
|
||||
return LONG_MAX / unit;
|
||||
|
||||
return timeout;
|
||||
}
|
||||
|
||||
static inline int addrconf_finite_timeout(unsigned long timeout)
|
||||
{
|
||||
return ~timeout;
|
||||
}
|
||||
|
||||
/*
|
||||
* IPv6 Address Label subsystem (addrlabel.c)
|
||||
*/
|
||||
|
||||
@@ -162,9 +162,9 @@ static inline int genlmsg_end(struct sk_buff *skb, void *hdr)
|
||||
* @skb: socket buffer the message is stored in
|
||||
* @hdr: generic netlink message header
|
||||
*/
|
||||
static inline int genlmsg_cancel(struct sk_buff *skb, void *hdr)
|
||||
static inline void genlmsg_cancel(struct sk_buff *skb, void *hdr)
|
||||
{
|
||||
return nlmsg_cancel(skb, hdr - GENL_HDRLEN - NLMSG_HDRLEN);
|
||||
nlmsg_cancel(skb, hdr - GENL_HDRLEN - NLMSG_HDRLEN);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
+9
-11
@@ -556,14 +556,12 @@ static inline void *nlmsg_get_pos(struct sk_buff *skb)
|
||||
* @skb: socket buffer the message is stored in
|
||||
* @mark: mark to trim to
|
||||
*
|
||||
* Trims the message to the provided mark. Returns -1.
|
||||
* Trims the message to the provided mark.
|
||||
*/
|
||||
static inline int nlmsg_trim(struct sk_buff *skb, const void *mark)
|
||||
static inline void nlmsg_trim(struct sk_buff *skb, const void *mark)
|
||||
{
|
||||
if (mark)
|
||||
skb_trim(skb, (unsigned char *) mark - skb->data);
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -572,11 +570,11 @@ static inline int nlmsg_trim(struct sk_buff *skb, const void *mark)
|
||||
* @nlh: netlink message header
|
||||
*
|
||||
* Removes the complete netlink message including all
|
||||
* attributes from the socket buffer again. Returns -1.
|
||||
* attributes from the socket buffer again.
|
||||
*/
|
||||
static inline int nlmsg_cancel(struct sk_buff *skb, struct nlmsghdr *nlh)
|
||||
static inline void nlmsg_cancel(struct sk_buff *skb, struct nlmsghdr *nlh)
|
||||
{
|
||||
return nlmsg_trim(skb, nlh);
|
||||
nlmsg_trim(skb, nlh);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -775,7 +773,7 @@ static inline int __nla_parse_nested_compat(struct nlattr *tb[], int maxtype,
|
||||
int nested_len = nla_len(nla) - NLA_ALIGN(len);
|
||||
|
||||
if (nested_len < 0)
|
||||
return -1;
|
||||
return -EINVAL;
|
||||
if (nested_len >= nla_attr_size(0))
|
||||
return nla_parse(tb, maxtype, nla_data(nla) + NLA_ALIGN(len),
|
||||
nested_len, policy);
|
||||
@@ -1080,11 +1078,11 @@ static inline int nla_nest_compat_end(struct sk_buff *skb, struct nlattr *start)
|
||||
* @start: container attribute
|
||||
*
|
||||
* Removes the container attribute and including all nested
|
||||
* attributes. Returns -1.
|
||||
* attributes. Returns -EMSGSIZE
|
||||
*/
|
||||
static inline int nla_nest_cancel(struct sk_buff *skb, struct nlattr *start)
|
||||
static inline void nla_nest_cancel(struct sk_buff *skb, struct nlattr *start)
|
||||
{
|
||||
return nlmsg_trim(skb, start);
|
||||
nlmsg_trim(skb, start);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -549,7 +549,8 @@ struct sctp_af {
|
||||
struct dst_entry *(*get_dst) (struct sctp_association *asoc,
|
||||
union sctp_addr *daddr,
|
||||
union sctp_addr *saddr);
|
||||
void (*get_saddr) (struct sctp_association *asoc,
|
||||
void (*get_saddr) (struct sctp_sock *sk,
|
||||
struct sctp_association *asoc,
|
||||
struct dst_entry *dst,
|
||||
union sctp_addr *daddr,
|
||||
union sctp_addr *saddr);
|
||||
@@ -588,6 +589,7 @@ struct sctp_af {
|
||||
int (*is_ce) (const struct sk_buff *sk);
|
||||
void (*seq_dump_addr)(struct seq_file *seq,
|
||||
union sctp_addr *addr);
|
||||
void (*ecn_capable)(struct sock *sk);
|
||||
__u16 net_header_len;
|
||||
int sockaddr_len;
|
||||
sa_family_t sa_family;
|
||||
@@ -902,7 +904,10 @@ struct sctp_transport {
|
||||
* calculation completes (i.e. the DATA chunk
|
||||
* is SACK'd) clear this flag.
|
||||
*/
|
||||
int rto_pending;
|
||||
__u8 rto_pending;
|
||||
|
||||
/* Flag to track the current fast recovery state */
|
||||
__u8 fast_recovery;
|
||||
|
||||
/*
|
||||
* These are the congestion stats.
|
||||
@@ -921,6 +926,9 @@ struct sctp_transport {
|
||||
/* Data that has been sent, but not acknowledged. */
|
||||
__u32 flight_size;
|
||||
|
||||
/* TSN marking the fast recovery exit point */
|
||||
__u32 fast_recovery_exit;
|
||||
|
||||
/* Destination */
|
||||
struct dst_entry *dst;
|
||||
/* Source address. */
|
||||
@@ -1046,7 +1054,7 @@ void sctp_transport_route(struct sctp_transport *, union sctp_addr *,
|
||||
struct sctp_sock *);
|
||||
void sctp_transport_pmtu(struct sctp_transport *);
|
||||
void sctp_transport_free(struct sctp_transport *);
|
||||
void sctp_transport_reset_timers(struct sctp_transport *);
|
||||
void sctp_transport_reset_timers(struct sctp_transport *, int);
|
||||
void sctp_transport_hold(struct sctp_transport *);
|
||||
void sctp_transport_put(struct sctp_transport *);
|
||||
void sctp_transport_update_rto(struct sctp_transport *, __u32);
|
||||
@@ -1136,6 +1144,9 @@ struct sctp_outq {
|
||||
/* How many unackd bytes do we have in-flight? */
|
||||
__u32 outstanding_bytes;
|
||||
|
||||
/* Are we doing fast-rtx on this queue */
|
||||
char fast_rtx;
|
||||
|
||||
/* Corked? */
|
||||
char cork;
|
||||
|
||||
|
||||
@@ -40,7 +40,8 @@ extern int datagram_recv_ctl(struct sock *sk,
|
||||
struct msghdr *msg,
|
||||
struct sk_buff *skb);
|
||||
|
||||
extern int datagram_send_ctl(struct msghdr *msg,
|
||||
extern int datagram_send_ctl(struct net *net,
|
||||
struct msghdr *msg,
|
||||
struct flowi *fl,
|
||||
struct ipv6_txoptions *opt,
|
||||
int *hlimit, int *tclass);
|
||||
|
||||
@@ -135,6 +135,7 @@ extern void udp_err(struct sk_buff *, u32);
|
||||
|
||||
extern int udp_sendmsg(struct kiocb *iocb, struct sock *sk,
|
||||
struct msghdr *msg, size_t len);
|
||||
extern void udp_flush_pending_frames(struct sock *sk);
|
||||
|
||||
extern int udp_rcv(struct sk_buff *skb);
|
||||
extern int udp_ioctl(struct sock *sk, int cmd, unsigned long arg);
|
||||
|
||||
Reference in New Issue
Block a user