Skip to content

Commit 6f0d719

Browse files
Florian Westphaldavem330
authored andcommitted
mptcp: setsockopt: add SO_INCOMING_CPU
Replicate to all subflows. Acked-by: Paolo Abeni <[email protected]> Signed-off-by: Florian Westphal <[email protected]> Signed-off-by: Mat Martineau <[email protected]> Signed-off-by: David S. Miller <[email protected]>
1 parent 3670441 commit 6f0d719

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

net/mptcp/sockopt.c

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,9 @@ static void mptcp_sol_socket_sync_intval(struct mptcp_sock *msk, int optname, in
101101
sk_dst_reset(ssk);
102102
}
103103
break;
104+
case SO_INCOMING_CPU:
105+
WRITE_ONCE(ssk->sk_incoming_cpu, val);
106+
break;
104107
}
105108

106109
subflow->setsockopt_seq = msk->setsockopt_seq;
@@ -125,6 +128,15 @@ static int mptcp_sol_socket_intval(struct mptcp_sock *msk, int optname, int val)
125128
return 0;
126129
}
127130

131+
static void mptcp_so_incoming_cpu(struct mptcp_sock *msk, int val)
132+
{
133+
struct sock *sk = (struct sock *)msk;
134+
135+
WRITE_ONCE(sk->sk_incoming_cpu, val);
136+
137+
mptcp_sol_socket_sync_intval(msk, SO_INCOMING_CPU, val);
138+
}
139+
128140
static int mptcp_setsockopt_sol_socket_int(struct mptcp_sock *msk, int optname,
129141
sockptr_t optval, unsigned int optlen)
130142
{
@@ -145,6 +157,9 @@ static int mptcp_setsockopt_sol_socket_int(struct mptcp_sock *msk, int optname,
145157
case SO_RCVBUF:
146158
case SO_RCVBUFFORCE:
147159
return mptcp_sol_socket_intval(msk, optname, val);
160+
case SO_INCOMING_CPU:
161+
mptcp_so_incoming_cpu(msk, val);
162+
return 0;
148163
}
149164

150165
return -ENOPROTOOPT;
@@ -230,6 +245,7 @@ static int mptcp_setsockopt_sol_socket(struct mptcp_sock *msk, int optname,
230245
case SO_RCVBUF:
231246
case SO_RCVBUFFORCE:
232247
case SO_MARK:
248+
case SO_INCOMING_CPU:
233249
return mptcp_setsockopt_sol_socket_int(msk, optname, optval, optlen);
234250
case SO_LINGER:
235251
return mptcp_setsockopt_sol_socket_linger(msk, optval, optlen);

0 commit comments

Comments
 (0)