diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/inet_diag.h | 14 | ||||
-rw-r--r-- | include/linux/phy.h | 7 | ||||
-rw-r--r-- | include/linux/pkt_sched.h | 20 | ||||
-rw-r--r-- | include/net/bluetooth/hci_core.h | 4 | ||||
-rw-r--r-- | include/net/red.h | 3 |
5 files changed, 37 insertions, 11 deletions
diff --git a/include/linux/inet_diag.h b/include/linux/inet_diag.h index 34e8d52c1925..f1362b5447fc 100644 --- a/include/linux/inet_diag.h +++ b/include/linux/inet_diag.h | |||
@@ -22,7 +22,7 @@ struct inet_diag_sockid { | |||
22 | 22 | ||
23 | /* Request structure */ | 23 | /* Request structure */ |
24 | 24 | ||
25 | struct inet_diag_req_compat { | 25 | struct inet_diag_req { |
26 | __u8 idiag_family; /* Family of addresses. */ | 26 | __u8 idiag_family; /* Family of addresses. */ |
27 | __u8 idiag_src_len; | 27 | __u8 idiag_src_len; |
28 | __u8 idiag_dst_len; | 28 | __u8 idiag_dst_len; |
@@ -34,7 +34,7 @@ struct inet_diag_req_compat { | |||
34 | __u32 idiag_dbs; /* Tables to dump (NI) */ | 34 | __u32 idiag_dbs; /* Tables to dump (NI) */ |
35 | }; | 35 | }; |
36 | 36 | ||
37 | struct inet_diag_req { | 37 | struct inet_diag_req_v2 { |
38 | __u8 sdiag_family; | 38 | __u8 sdiag_family; |
39 | __u8 sdiag_protocol; | 39 | __u8 sdiag_protocol; |
40 | __u8 idiag_ext; | 40 | __u8 idiag_ext; |
@@ -143,12 +143,12 @@ struct netlink_callback; | |||
143 | struct inet_diag_handler { | 143 | struct inet_diag_handler { |
144 | void (*dump)(struct sk_buff *skb, | 144 | void (*dump)(struct sk_buff *skb, |
145 | struct netlink_callback *cb, | 145 | struct netlink_callback *cb, |
146 | struct inet_diag_req *r, | 146 | struct inet_diag_req_v2 *r, |
147 | struct nlattr *bc); | 147 | struct nlattr *bc); |
148 | 148 | ||
149 | int (*dump_one)(struct sk_buff *in_skb, | 149 | int (*dump_one)(struct sk_buff *in_skb, |
150 | const struct nlmsghdr *nlh, | 150 | const struct nlmsghdr *nlh, |
151 | struct inet_diag_req *req); | 151 | struct inet_diag_req_v2 *req); |
152 | 152 | ||
153 | void (*idiag_get_info)(struct sock *sk, | 153 | void (*idiag_get_info)(struct sock *sk, |
154 | struct inet_diag_msg *r, | 154 | struct inet_diag_msg *r, |
@@ -158,15 +158,15 @@ struct inet_diag_handler { | |||
158 | 158 | ||
159 | struct inet_connection_sock; | 159 | struct inet_connection_sock; |
160 | int inet_sk_diag_fill(struct sock *sk, struct inet_connection_sock *icsk, | 160 | int inet_sk_diag_fill(struct sock *sk, struct inet_connection_sock *icsk, |
161 | struct sk_buff *skb, struct inet_diag_req *req, | 161 | struct sk_buff *skb, struct inet_diag_req_v2 *req, |
162 | u32 pid, u32 seq, u16 nlmsg_flags, | 162 | u32 pid, u32 seq, u16 nlmsg_flags, |
163 | const struct nlmsghdr *unlh); | 163 | const struct nlmsghdr *unlh); |
164 | void inet_diag_dump_icsk(struct inet_hashinfo *h, struct sk_buff *skb, | 164 | void inet_diag_dump_icsk(struct inet_hashinfo *h, struct sk_buff *skb, |
165 | struct netlink_callback *cb, struct inet_diag_req *r, | 165 | struct netlink_callback *cb, struct inet_diag_req_v2 *r, |
166 | struct nlattr *bc); | 166 | struct nlattr *bc); |
167 | int inet_diag_dump_one_icsk(struct inet_hashinfo *hashinfo, | 167 | int inet_diag_dump_one_icsk(struct inet_hashinfo *hashinfo, |
168 | struct sk_buff *in_skb, const struct nlmsghdr *nlh, | 168 | struct sk_buff *in_skb, const struct nlmsghdr *nlh, |
169 | struct inet_diag_req *req); | 169 | struct inet_diag_req_v2 *req); |
170 | 170 | ||
171 | int inet_diag_bc_sk(const struct nlattr *_bc, struct sock *sk); | 171 | int inet_diag_bc_sk(const struct nlattr *_bc, struct sock *sk); |
172 | 172 | ||
diff --git a/include/linux/phy.h b/include/linux/phy.h index 79f337c47388..c599f7eca1e7 100644 --- a/include/linux/phy.h +++ b/include/linux/phy.h | |||
@@ -129,7 +129,12 @@ struct mii_bus { | |||
129 | }; | 129 | }; |
130 | #define to_mii_bus(d) container_of(d, struct mii_bus, dev) | 130 | #define to_mii_bus(d) container_of(d, struct mii_bus, dev) |
131 | 131 | ||
132 | struct mii_bus *mdiobus_alloc(void); | 132 | struct mii_bus *mdiobus_alloc_size(size_t); |
133 | static inline struct mii_bus *mdiobus_alloc(void) | ||
134 | { | ||
135 | return mdiobus_alloc_size(0); | ||
136 | } | ||
137 | |||
133 | int mdiobus_register(struct mii_bus *bus); | 138 | int mdiobus_register(struct mii_bus *bus); |
134 | void mdiobus_unregister(struct mii_bus *bus); | 139 | void mdiobus_unregister(struct mii_bus *bus); |
135 | void mdiobus_free(struct mii_bus *bus); | 140 | void mdiobus_free(struct mii_bus *bus); |
diff --git a/include/linux/pkt_sched.h b/include/linux/pkt_sched.h index 8f1b928f777c..0d5b79365d03 100644 --- a/include/linux/pkt_sched.h +++ b/include/linux/pkt_sched.h | |||
@@ -162,10 +162,30 @@ struct tc_sfq_qopt { | |||
162 | unsigned flows; /* Maximal number of flows */ | 162 | unsigned flows; /* Maximal number of flows */ |
163 | }; | 163 | }; |
164 | 164 | ||
165 | struct tc_sfqred_stats { | ||
166 | __u32 prob_drop; /* Early drops, below max threshold */ | ||
167 | __u32 forced_drop; /* Early drops, after max threshold */ | ||
168 | __u32 prob_mark; /* Marked packets, below max threshold */ | ||
169 | __u32 forced_mark; /* Marked packets, after max threshold */ | ||
170 | __u32 prob_mark_head; /* Marked packets, below max threshold */ | ||
171 | __u32 forced_mark_head;/* Marked packets, after max threshold */ | ||
172 | }; | ||
173 | |||
165 | struct tc_sfq_qopt_v1 { | 174 | struct tc_sfq_qopt_v1 { |
166 | struct tc_sfq_qopt v0; | 175 | struct tc_sfq_qopt v0; |
167 | unsigned int depth; /* max number of packets per flow */ | 176 | unsigned int depth; /* max number of packets per flow */ |
168 | unsigned int headdrop; | 177 | unsigned int headdrop; |
178 | /* SFQRED parameters */ | ||
179 | __u32 limit; /* HARD maximal flow queue length (bytes) */ | ||
180 | __u32 qth_min; /* Min average length threshold (bytes) */ | ||
181 | __u32 qth_max; /* Max average length threshold (bytes) */ | ||
182 | unsigned char Wlog; /* log(W) */ | ||
183 | unsigned char Plog; /* log(P_max/(qth_max-qth_min)) */ | ||
184 | unsigned char Scell_log; /* cell size for idle damping */ | ||
185 | unsigned char flags; | ||
186 | __u32 max_P; /* probability, high resolution */ | ||
187 | /* SFQRED stats */ | ||
188 | struct tc_sfqred_stats stats; | ||
169 | }; | 189 | }; |
170 | 190 | ||
171 | 191 | ||
diff --git a/include/net/bluetooth/hci_core.h b/include/net/bluetooth/hci_core.h index 5e2e98458496..ea9231f4935f 100644 --- a/include/net/bluetooth/hci_core.h +++ b/include/net/bluetooth/hci_core.h | |||
@@ -127,7 +127,7 @@ struct hci_dev { | |||
127 | __u8 major_class; | 127 | __u8 major_class; |
128 | __u8 minor_class; | 128 | __u8 minor_class; |
129 | __u8 features[8]; | 129 | __u8 features[8]; |
130 | __u8 extfeatures[8]; | 130 | __u8 host_features[8]; |
131 | __u8 commands[64]; | 131 | __u8 commands[64]; |
132 | __u8 ssp_mode; | 132 | __u8 ssp_mode; |
133 | __u8 hci_ver; | 133 | __u8 hci_ver; |
@@ -676,7 +676,7 @@ void hci_conn_del_sysfs(struct hci_conn *conn); | |||
676 | #define lmp_le_capable(dev) ((dev)->features[4] & LMP_LE) | 676 | #define lmp_le_capable(dev) ((dev)->features[4] & LMP_LE) |
677 | 677 | ||
678 | /* ----- Extended LMP capabilities ----- */ | 678 | /* ----- Extended LMP capabilities ----- */ |
679 | #define lmp_host_le_capable(dev) ((dev)->extfeatures[0] & LMP_HOST_LE) | 679 | #define lmp_host_le_capable(dev) ((dev)->host_features[0] & LMP_HOST_LE) |
680 | 680 | ||
681 | /* ----- HCI protocols ----- */ | 681 | /* ----- HCI protocols ----- */ |
682 | static inline int hci_proto_connect_ind(struct hci_dev *hdev, bdaddr_t *bdaddr, | 682 | static inline int hci_proto_connect_ind(struct hci_dev *hdev, bdaddr_t *bdaddr, |
diff --git a/include/net/red.h b/include/net/red.h index baab385a4736..28068ec614b2 100644 --- a/include/net/red.h +++ b/include/net/red.h | |||
@@ -199,7 +199,8 @@ static inline void red_set_parms(struct red_parms *p, | |||
199 | p->Scell_log = Scell_log; | 199 | p->Scell_log = Scell_log; |
200 | p->Scell_max = (255 << Scell_log); | 200 | p->Scell_max = (255 << Scell_log); |
201 | 201 | ||
202 | memcpy(p->Stab, stab, sizeof(p->Stab)); | 202 | if (stab) |
203 | memcpy(p->Stab, stab, sizeof(p->Stab)); | ||
203 | } | 204 | } |
204 | 205 | ||
205 | static inline int red_is_idling(const struct red_vars *v) | 206 | static inline int red_is_idling(const struct red_vars *v) |