projects
/
firefly-linux-kernel-4.4.55.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[NET]: Introduce inet_connection_sock
[firefly-linux-kernel-4.4.55.git]
/
net
/
ipv4
/
tcp_diag.c
diff --git
a/net/ipv4/tcp_diag.c
b/net/ipv4/tcp_diag.c
index 60c6a797cc50e62eb3c697b1647627779cbbdc17..5f4c74f45e82e147b8688cf64a2e68fa0a309b7b 100644
(file)
--- a/
net/ipv4/tcp_diag.c
+++ b/
net/ipv4/tcp_diag.c
@@
-48,8
+48,9
@@
static struct sock *tcpnl;
static int tcpdiag_fill(struct sk_buff *skb, struct sock *sk,
int ext, u32 pid, u32 seq, u16 nlmsg_flags)
{
static int tcpdiag_fill(struct sk_buff *skb, struct sock *sk,
int ext, u32 pid, u32 seq, u16 nlmsg_flags)
{
- struct inet_sock *inet = inet_sk(sk);
+
const
struct inet_sock *inet = inet_sk(sk);
struct tcp_sock *tp = tcp_sk(sk);
struct tcp_sock *tp = tcp_sk(sk);
+ const struct inet_connection_sock *icsk = inet_csk(sk);
struct tcpdiagmsg *r;
struct nlmsghdr *nlh;
struct tcp_info *info = NULL;
struct tcpdiagmsg *r;
struct nlmsghdr *nlh;
struct tcp_info *info = NULL;
@@
-129,14
+130,14
@@
static int tcpdiag_fill(struct sk_buff *skb, struct sock *sk,
#define EXPIRES_IN_MS(tmo) ((tmo-jiffies)*1000+HZ-1)/HZ
#define EXPIRES_IN_MS(tmo) ((tmo-jiffies)*1000+HZ-1)/HZ
- if (
tp->pending == TCP
_TIME_RETRANS) {
+ if (
icsk->icsk_pending == ICSK
_TIME_RETRANS) {
r->tcpdiag_timer = 1;
r->tcpdiag_timer = 1;
- r->tcpdiag_retrans =
tp->
retransmits;
- r->tcpdiag_expires = EXPIRES_IN_MS(
tp->
timeout);
- } else if (
tp->pending == TCP
_TIME_PROBE0) {
+ r->tcpdiag_retrans =
icsk->icsk_
retransmits;
+ r->tcpdiag_expires = EXPIRES_IN_MS(
icsk->icsk_
timeout);
+ } else if (
icsk->icsk_pending == ICSK
_TIME_PROBE0) {
r->tcpdiag_timer = 4;
r->tcpdiag_retrans = tp->probes_out;
r->tcpdiag_timer = 4;
r->tcpdiag_retrans = tp->probes_out;
- r->tcpdiag_expires = EXPIRES_IN_MS(
tp->
timeout);
+ r->tcpdiag_expires = EXPIRES_IN_MS(
icsk->icsk_
timeout);
} else if (timer_pending(&sk->sk_timer)) {
r->tcpdiag_timer = 2;
r->tcpdiag_retrans = tp->probes_out;
} else if (timer_pending(&sk->sk_timer)) {
r->tcpdiag_timer = 2;
r->tcpdiag_retrans = tp->probes_out;
@@
-497,7
+498,7
@@
static int tcpdiag_dump_reqs(struct sk_buff *skb, struct sock *sk,
{
struct tcpdiag_entry entry;
struct tcpdiagreq *r = NLMSG_DATA(cb->nlh);
{
struct tcpdiag_entry entry;
struct tcpdiagreq *r = NLMSG_DATA(cb->nlh);
- struct
tcp_sock *tp = tcp_
sk(sk);
+ struct
inet_connection_sock *icsk = inet_c
sk(sk);
struct listen_sock *lopt;
struct rtattr *bc = NULL;
struct inet_sock *inet = inet_sk(sk);
struct listen_sock *lopt;
struct rtattr *bc = NULL;
struct inet_sock *inet = inet_sk(sk);
@@
-513,9
+514,9
@@
static int tcpdiag_dump_reqs(struct sk_buff *skb, struct sock *sk,
entry.family = sk->sk_family;
entry.family = sk->sk_family;
- read_lock_bh(&
tp->
accept_queue.syn_wait_lock);
+ read_lock_bh(&
icsk->icsk_
accept_queue.syn_wait_lock);
- lopt =
tp->
accept_queue.listen_opt;
+ lopt =
icsk->icsk_
accept_queue.listen_opt;
if (!lopt || !lopt->qlen)
goto out;
if (!lopt || !lopt->qlen)
goto out;
@@
-572,7
+573,7
@@
static int tcpdiag_dump_reqs(struct sk_buff *skb, struct sock *sk,
}
out:
}
out:
- read_unlock_bh(&
tp->
accept_queue.syn_wait_lock);
+ read_unlock_bh(&
icsk->icsk_
accept_queue.syn_wait_lock);
return err;
}
return err;
}