On Thu, Aug 18, 2016 at 09:59:03AM +0800, f...@ikuai8.com wrote: > From: Gao Feng <f...@ikuai8.com> > > There are some codes in pppoe and l2tp which use the PPPOX_CONNECTED > as the value including assignment and condition check. > They should keep consistent with other codes. > > Signed-off-by: Gao Feng <f...@ikuai8.com> > --- > v1: Initial Patch > > drivers/net/ppp/pppoe.c | 2 +- > net/l2tp/l2tp_ppp.c | 4 ++-- > 2 files changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/net/ppp/pppoe.c b/drivers/net/ppp/pppoe.c > index 4ddae81..684b773 100644 > --- a/drivers/net/ppp/pppoe.c > +++ b/drivers/net/ppp/pppoe.c > @@ -697,7 +697,7 @@ static int pppoe_connect(struct socket *sock, struct > sockaddr *uservaddr, > goto err_put; > } > > - sk->sk_state = PPPOX_CONNECTED; > + sk->sk_state |= PPPOX_CONNECTED; > Using plain assignment makes it clear for the reader that other flags are unset. I see no reason for changing this.
> diff --git a/net/l2tp/l2tp_ppp.c b/net/l2tp/l2tp_ppp.c > index d9560aa..3984385 100644 > --- a/net/l2tp/l2tp_ppp.c > +++ b/net/l2tp/l2tp_ppp.c > @@ -774,7 +774,7 @@ static int pppol2tp_connect(struct socket *sock, struct > sockaddr *uservaddr, > out_no_ppp: > /* This is how we get the session context from the socket. */ > sk->sk_user_data = session; > - sk->sk_state = PPPOX_CONNECTED; > + sk->sk_state |= PPPOX_CONNECTED; > Same here. > @@ -856,7 +856,7 @@ static int pppol2tp_getname(struct socket *sock, struct > sockaddr *uaddr, > error = -ENOTCONN; > if (sk == NULL) > goto end; > - if (sk->sk_state != PPPOX_CONNECTED) > + if (!(sk->sk_state & PPPOX_CONNECTED)) > Looks like it was a bug. This one is worth a separate patch.