MPTCP Linux Development
 help / color / mirror / Atom feed
From: Geliang Tang <geliang@kernel.org>
To: mptcp@lists.linux.dev
Cc: Geliang Tang <tanggeliang@kylinos.cn>
Subject: [PATCH mptcp-next v4 00/11] cleanups for PM interfaces
Date: Sat, 12 Oct 2024 22:19:40 +0800	[thread overview]
Message-ID: <cover.1728742591.git.tanggeliang@kylinos.cn> (raw)

From: Geliang Tang <tanggeliang@kylinos.cn>

v4:
 - a new patch, add mptcp_for_each_address() and
   mptcp_for_each_address_safe() macros.
 - update commit logs.

v3:
 - a new patch, use sock_kfree_s instead of kfree.

v2:
 - add a new helper mptcp_userspace_pm_get_sock.

In order to implement BPF userspace path manager, it is necessary to
unify the interfaces of the path manager. This set contains some
cleanups for unify the interfaces.

struct mptcp_pm_ops {
        int (*address_announce)(struct mptcp_sock *msk,
                                struct mptcp_pm_addr_entry *local);
        int (*address_remove)(struct mptcp_sock *msk, u8 id);
        int (*subflow_create)(struct mptcp_sock *msk,
                              struct mptcp_pm_addr_entry *local,
                              struct mptcp_addr_info *remote);
        int (*subflow_destroy)(struct mptcp_sock *msk,
                               struct mptcp_pm_addr_entry *local,
                               struct mptcp_addr_info *remote);
        int (*get_local_id)(struct mptcp_sock *msk,
                            struct mptcp_pm_addr_entry *local);
        u8 (*get_flags)(struct mptcp_sock *msk,
                        struct mptcp_addr_info *skc);
        struct mptcp_pm_addr_entry *(*get_addr)(struct mptcp_sock *msk,
                                                u8 id);
        int (*dump_addr)(struct mptcp_sock *msk,
                         struct mptcp_id_bitmap *bitmap);
        int (*set_flags)(struct mptcp_sock *msk,
                         struct mptcp_pm_addr_entry *local,
                         struct mptcp_addr_info *remote);

        u8                      type;
        struct module           *owner;
        struct list_head        list;

        void (*init)(struct mptcp_sock *msk);
        void (*release)(struct mptcp_sock *msk);
} ____cacheline_aligned_in_smp;

Geliang Tang (11):
  mptcp: add struct mptcp_id_bitmap
  mptcp: add mptcp_userspace_pm_get_sock helper
  mptcp: use __lookup_addr in pm_netlink
  mptcp: add mptcp_for_each_address macros
  mptcp: use sock_kfree_s instead of kfree
  mptcp: add lookup_addr for userspace pm
  mptcp: change remote as mptcp_addr_info
  mptcp: change local as mptcp_pm_addr_entry
  mptcp: make three pm wrappers static
  mptcp: drop skb parameter of get_addr
  mptcp: drop skb parameter of set_flags

 net/mptcp/pm.c           |  25 +---
 net/mptcp/pm_netlink.c   |  99 +++++++++-------
 net/mptcp/pm_userspace.c | 250 ++++++++++++++++-----------------------
 net/mptcp/protocol.h     |  23 ++--
 4 files changed, 171 insertions(+), 226 deletions(-)

-- 
2.43.0


             reply	other threads:[~2024-10-12 14:20 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-10-12 14:19 Geliang Tang [this message]
2024-10-12 14:19 ` [PATCH mptcp-next v4 01/11] mptcp: add struct mptcp_id_bitmap Geliang Tang
2024-10-12 14:19 ` [PATCH mptcp-next v4 02/11] mptcp: add mptcp_userspace_pm_get_sock helper Geliang Tang
2024-10-12 14:19 ` [PATCH mptcp-next v4 03/11] mptcp: use __lookup_addr in pm_netlink Geliang Tang
2024-10-12 14:19 ` [PATCH mptcp-next v4 04/11] mptcp: add mptcp_for_each_address macros Geliang Tang
2024-10-12 14:19 ` [PATCH mptcp-next v4 05/11] mptcp: use sock_kfree_s instead of kfree Geliang Tang
2024-10-12 14:19 ` [PATCH mptcp-next v4 06/11] mptcp: add lookup_addr for userspace pm Geliang Tang
2024-10-12 14:19 ` [PATCH mptcp-next v4 07/11] mptcp: change remote as mptcp_addr_info Geliang Tang
2024-10-12 14:19 ` [PATCH mptcp-next v4 08/11] mptcp: change local as mptcp_pm_addr_entry Geliang Tang
2024-10-12 14:19 ` [PATCH mptcp-next v4 09/11] mptcp: make three pm wrappers static Geliang Tang
2024-10-12 14:19 ` [PATCH mptcp-next v4 10/11] mptcp: drop skb parameter of get_addr Geliang Tang
2024-10-12 14:19 ` [PATCH mptcp-next v4 11/11] mptcp: drop skb parameter of set_flags Geliang Tang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cover.1728742591.git.tanggeliang@kylinos.cn \
    --to=geliang@kernel.org \
    --cc=mptcp@lists.linux.dev \
    --cc=tanggeliang@kylinos.cn \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox