Skip to content

Commit a28717d

Browse files
Geliang Tangkuba-moo
authored andcommitted
mptcp: add mptcp_for_each_userspace_pm_addr macro
Similar to mptcp_for_each_subflow() macro, this patch adds a new macro mptcp_for_each_userspace_pm_addr() for userspace PM to iterate over the address entries on the local address list userspace_pm_local_addr_list of the mptcp socket. This patch doesn't change the behaviour of the code, just refactoring. Signed-off-by: Geliang Tang <[email protected]> Reviewed-by: Matthieu Baerts (NGI0) <[email protected]> Signed-off-by: Matthieu Baerts (NGI0) <[email protected]> Link: https://patch.msgid.link/20241213-net-next-mptcp-pm-misc-cleanup-v1-2-ddb6d00109a8@kernel.org Signed-off-by: Jakub Kicinski <[email protected]>
1 parent e7b4083 commit a28717d

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

net/mptcp/pm_userspace.c

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,10 @@
88
#include "mib.h"
99
#include "mptcp_pm_gen.h"
1010

11+
#define mptcp_for_each_userspace_pm_addr(__msk, __entry) \
12+
list_for_each_entry(__entry, \
13+
&((__msk)->pm.userspace_pm_local_addr_list), list)
14+
1115
void mptcp_free_local_addr_list(struct mptcp_sock *msk)
1216
{
1317
struct mptcp_pm_addr_entry *entry, *tmp;
@@ -32,7 +36,7 @@ mptcp_userspace_pm_lookup_addr(struct mptcp_sock *msk,
3236
{
3337
struct mptcp_pm_addr_entry *entry;
3438

35-
list_for_each_entry(entry, &msk->pm.userspace_pm_local_addr_list, list) {
39+
mptcp_for_each_userspace_pm_addr(msk, entry) {
3640
if (mptcp_addresses_equal(&entry->addr, addr, false))
3741
return entry;
3842
}
@@ -54,7 +58,7 @@ static int mptcp_userspace_pm_append_new_local_addr(struct mptcp_sock *msk,
5458
bitmap_zero(id_bitmap, MPTCP_PM_MAX_ADDR_ID + 1);
5559

5660
spin_lock_bh(&msk->pm.lock);
57-
list_for_each_entry(e, &msk->pm.userspace_pm_local_addr_list, list) {
61+
mptcp_for_each_userspace_pm_addr(msk, e) {
5862
addr_match = mptcp_addresses_equal(&e->addr, &entry->addr, true);
5963
if (addr_match && entry->addr.id == 0 && needs_id)
6064
entry->addr.id = e->addr.id;
@@ -124,7 +128,7 @@ mptcp_userspace_pm_lookup_addr_by_id(struct mptcp_sock *msk, unsigned int id)
124128
{
125129
struct mptcp_pm_addr_entry *entry;
126130

127-
list_for_each_entry(entry, &msk->pm.userspace_pm_local_addr_list, list) {
131+
mptcp_for_each_userspace_pm_addr(msk, entry) {
128132
if (entry->addr.id == id)
129133
return entry;
130134
}
@@ -659,7 +663,7 @@ int mptcp_userspace_pm_dump_addr(struct sk_buff *msg,
659663

660664
lock_sock(sk);
661665
spin_lock_bh(&msk->pm.lock);
662-
list_for_each_entry(entry, &msk->pm.userspace_pm_local_addr_list, list) {
666+
mptcp_for_each_userspace_pm_addr(msk, entry) {
663667
if (test_bit(entry->addr.id, bitmap->map))
664668
continue;
665669

0 commit comments

Comments
 (0)