mptcp: pass addr to mptcp_pm_alloc_anno_list
authorGeliang Tang <geliang.tang@suse.com>
Tue, 20 Jun 2023 16:30:22 +0000 (18:30 +0200)
committerJakub Kicinski <kuba@kernel.org>
Thu, 22 Jun 2023 05:45:58 +0000 (22:45 -0700)
Pass addr parameter to mptcp_pm_alloc_anno_list() instead of entry. We
can reduce the scope, e.g. in mptcp_pm_alloc_anno_list(), we only access
"entry->addr", we can then restrict to the pointer to "addr" then.

Signed-off-by: Geliang Tang <geliang.tang@suse.com>
Reviewed-by: Matthieu Baerts <matthieu.baerts@tessares.net>
Signed-off-by: Matthieu Baerts <matthieu.baerts@tessares.net>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/mptcp/pm_netlink.c
net/mptcp/pm_userspace.c
net/mptcp/protocol.h

index a56718f..547e51c 100644 (file)
@@ -341,7 +341,7 @@ mptcp_pm_del_add_timer(struct mptcp_sock *msk,
 }
 
 bool mptcp_pm_alloc_anno_list(struct mptcp_sock *msk,
-                             const struct mptcp_pm_addr_entry *entry)
+                             const struct mptcp_addr_info *addr)
 {
        struct mptcp_pm_add_entry *add_entry = NULL;
        struct sock *sk = (struct sock *)msk;
@@ -349,7 +349,7 @@ bool mptcp_pm_alloc_anno_list(struct mptcp_sock *msk,
 
        lockdep_assert_held(&msk->pm.lock);
 
-       add_entry = mptcp_lookup_anno_list_by_saddr(msk, &entry->addr);
+       add_entry = mptcp_lookup_anno_list_by_saddr(msk, addr);
 
        if (add_entry) {
                if (mptcp_pm_is_kernel(msk))
@@ -366,7 +366,7 @@ bool mptcp_pm_alloc_anno_list(struct mptcp_sock *msk,
 
        list_add(&add_entry->list, &msk->pm.anno_list);
 
-       add_entry->addr = entry->addr;
+       add_entry->addr = *addr;
        add_entry->sock = msk;
        add_entry->retrans_times = 0;
 
@@ -576,7 +576,7 @@ static void mptcp_pm_create_subflow_or_signal_addr(struct mptcp_sock *msk)
                        return;
 
                if (local) {
-                       if (mptcp_pm_alloc_anno_list(msk, local)) {
+                       if (mptcp_pm_alloc_anno_list(msk, &local->addr)) {
                                __clear_bit(local->addr.id, msk->pm.id_avail_bitmap);
                                msk->pm.add_addr_signaled++;
                                mptcp_pm_announce_addr(msk, &local->addr, false);
index 47a883a..b5a8aa4 100644 (file)
@@ -193,7 +193,7 @@ int mptcp_nl_cmd_announce(struct sk_buff *skb, struct genl_info *info)
        lock_sock((struct sock *)msk);
        spin_lock_bh(&msk->pm.lock);
 
-       if (mptcp_pm_alloc_anno_list(msk, &addr_val)) {
+       if (mptcp_pm_alloc_anno_list(msk, &addr_val.addr)) {
                msk->pm.add_addr_signaled++;
                mptcp_pm_announce_addr(msk, &addr_val.addr, false);
                mptcp_pm_nl_addr_send_ack(msk);
index bb4cacd..3a1a64c 100644 (file)
@@ -817,7 +817,7 @@ int mptcp_pm_nl_mp_prio_send_ack(struct mptcp_sock *msk,
                                 struct mptcp_addr_info *rem,
                                 u8 bkup);
 bool mptcp_pm_alloc_anno_list(struct mptcp_sock *msk,
-                             const struct mptcp_pm_addr_entry *entry);
+                             const struct mptcp_addr_info *addr);
 void mptcp_pm_free_anno_list(struct mptcp_sock *msk);
 bool mptcp_pm_sport_in_anno_list(struct mptcp_sock *msk, const struct sock *sk);
 struct mptcp_pm_add_entry *