Skip to content

Commit

Permalink
Phonet: remove redumdant pep->pipe_state
Browse files Browse the repository at this point in the history
sk->sk_state already contains the pipe state.

Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Rémi Denis-Courmont authored and David S. Miller committed Feb 25, 2011
1 parent 14ba8fa commit 2feb618
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 28 deletions.
9 changes: 0 additions & 9 deletions include/net/phonet/pep.h
Original file line number Diff line number Diff line change
Expand Up @@ -45,9 +45,6 @@ struct pep_sock {
u8 tx_fc; /* TX flow control */
u8 init_enable; /* auto-enable at creation */
u8 aligned;
#ifdef CONFIG_PHONET_PIPECTRLR
u8 pipe_state;
#endif
};

static inline struct pep_sock *pep_sk(struct sock *sk)
Expand Down Expand Up @@ -177,12 +174,6 @@ enum {
#define PNS_PIPE_DISABLED_IND_UTID 0x11
#define PNS_PEP_DISCONNECT_UTID 0x06

/* Used for tracking state of a pipe */
enum {
PIPE_IDLE,
PIPE_DISABLED,
PIPE_ENABLED,
};
#endif /* CONFIG_PHONET_PIPECTRLR */

#endif
25 changes: 6 additions & 19 deletions net/phonet/pep.c
Original file line number Diff line number Diff line change
Expand Up @@ -527,7 +527,6 @@ static int pipe_do_rcv(struct sock *sk, struct sk_buff *skb)

#ifdef CONFIG_PHONET_PIPECTRLR
case PNS_PEP_DISCONNECT_RESP:
pn->pipe_state = PIPE_IDLE;
sk->sk_state = TCP_CLOSE;
break;
#endif
Expand All @@ -539,7 +538,6 @@ static int pipe_do_rcv(struct sock *sk, struct sk_buff *skb)

#ifdef CONFIG_PHONET_PIPECTRLR
case PNS_PEP_ENABLE_RESP:
pn->pipe_state = PIPE_ENABLED;
pipe_handler_send_ind(sk, PNS_PIPE_ENABLED_IND_UTID,
PNS_PIPE_ENABLED_IND);

Expand Down Expand Up @@ -574,7 +572,6 @@ static int pipe_do_rcv(struct sock *sk, struct sk_buff *skb)

#ifdef CONFIG_PHONET_PIPECTRLR
case PNS_PEP_DISABLE_RESP:
pn->pipe_state = PIPE_DISABLED;
atomic_set(&pn->tx_credits, 0);
pipe_handler_send_ind(sk, PNS_PIPE_DISABLED_IND_UTID,
PNS_PIPE_DISABLED_IND);
Expand Down Expand Up @@ -692,7 +689,6 @@ static int pep_connresp_rcv(struct sock *sk, struct sk_buff *skb)
remote_pref_rx_fc,
sizeof(host_pref_rx_fc));

pn->pipe_state = PIPE_DISABLED;
sk->sk_state = TCP_SYN_RECV;
sk->sk_backlog_rcv = pipe_do_rcv;
sk->sk_destruct = pipe_destruct;
Expand Down Expand Up @@ -941,21 +937,18 @@ static void pep_sock_close(struct sock *sk, long timeout)
sk_for_each_safe(sknode, p, n, &pn->ackq)
sk_del_node_init(sknode);
sk->sk_state = TCP_CLOSE;
} else if ((1 << sk->sk_state) & (TCPF_SYN_RECV|TCPF_ESTABLISHED))
} else if ((1 << sk->sk_state) & (TCPF_SYN_RECV|TCPF_ESTABLISHED)) {
#ifndef CONFIG_PHONET_PIPECTRLR
/* Forcefully remove dangling Phonet pipe */
pipe_do_remove(sk);

#ifdef CONFIG_PHONET_PIPECTRLR
if (pn->pipe_state != PIPE_IDLE) {
#else
/* send pep disconnect request */
pipe_handler_send_req(sk,
PNS_PEP_DISCONNECT_UTID, PNS_PEP_DISCONNECT_REQ,
GFP_KERNEL);

pn->pipe_state = PIPE_IDLE;
sk->sk_state = TCP_CLOSE;
}
#endif
}

ifindex = pn->ifindex;
pn->ifindex = 0;
Expand Down Expand Up @@ -1101,10 +1094,6 @@ static int pep_setsockopt(struct sock *sk, int level, int optname,
#ifdef CONFIG_PHONET_PIPECTRLR
case PNPIPE_PIPE_HANDLE:
if (val) {
if (pn->pipe_state > PIPE_IDLE) {
err = -EFAULT;
break;
}
pn->pipe_handle = val;
break;
}
Expand Down Expand Up @@ -1138,7 +1127,7 @@ static int pep_setsockopt(struct sock *sk, int level, int optname,

#ifdef CONFIG_PHONET_PIPECTRLR
case PNPIPE_ENABLE:
if (pn->pipe_state <= PIPE_IDLE) {
if ((1 << sk->sk_state) & ~(TCPF_SYN_RECV|TCPF_ESTABLISHED)) {
err = -ENOTCONN;
break;
}
Expand Down Expand Up @@ -1177,9 +1166,7 @@ static int pep_getsockopt(struct sock *sk, int level, int optname,

#ifdef CONFIG_PHONET_PIPECTRLR
case PNPIPE_ENABLE:
if (pn->pipe_state <= PIPE_IDLE)
return -ENOTCONN;
val = pn->pipe_state != PIPE_DISABLED;
val = sk->sk_state == TCP_ESTABLISHED;
break;
#endif

Expand Down

0 comments on commit 2feb618

Please sign in to comment.