diff for duplicates of <20241119083547.3234013-12-matttbe@kernel.org> diff --git a/a/1.txt b/N1/1.txt index 0e43cd7..9fb23d6 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -1,87 +1,88 @@ -From: Geliang Tang <tanggeliang@kylinos.cn> +[ Sasha's backport helper bot ] -commit 06afe09091ee69dc7ab058b4be9917ae59cc81e5 upstream. +Hi, -Corresponding __lookup_addr_by_id() helper in the in-kernel netlink PM, -this patch adds a new helper mptcp_userspace_pm_lookup_addr_by_id() to -lookup the address entry with the given id on the userspace pm local -address list. +The upstream commit SHA1 provided is correct: 06afe09091ee69dc7ab058b4be9917ae59cc81e5 -Signed-off-by: Geliang Tang <tanggeliang@kylinos.cn> -Reviewed-by: Matthieu Baerts (NGI0) <matttbe@kernel.org> -Reviewed-by: Mat Martineau <martineau@kernel.org> -Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org> -Signed-off-by: David S. Miller <davem@davemloft.net> -Stable-dep-of: f642c5c4d528 ("mptcp: hold pm lock when deleting entry") -Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org> ---- - net/mptcp/pm_userspace.c | 31 ++++++++++++++++--------------- - 1 file changed, 16 insertions(+), 15 deletions(-) +WARNING: Author mismatch between patch and upstream commit: +Backport author: "Matthieu Baerts (NGI0)" <matttbe@kernel.org> +Commit author: Geliang Tang <tanggeliang@kylinos.cn> -diff --git a/net/mptcp/pm_userspace.c b/net/mptcp/pm_userspace.c -index 530f414e57d6..ca3e452d4edb 100644 ---- a/net/mptcp/pm_userspace.c -+++ b/net/mptcp/pm_userspace.c -@@ -106,22 +106,29 @@ static int mptcp_userspace_pm_delete_local_addr(struct mptcp_sock *msk, - return -EINVAL; - } - -+static struct mptcp_pm_addr_entry * -+mptcp_userspace_pm_lookup_addr_by_id(struct mptcp_sock *msk, unsigned int id) -+{ -+ struct mptcp_pm_addr_entry *entry; -+ -+ list_for_each_entry(entry, &msk->pm.userspace_pm_local_addr_list, list) { -+ if (entry->addr.id == id) -+ return entry; -+ } -+ return NULL; -+} + +Status in newer kernel trees: +6.11.y | Present (exact SHA1) +6.6.y | Not found +6.1.y | Not found + +Note: The patch differs from the upstream commit: +--- +--- - 2024-11-19 08:56:32.828886482 -0500 ++++ /tmp/tmp.3kjEa5Z2e2 2024-11-19 08:56:32.824223221 -0500 +@@ -1,3 +1,5 @@ ++commit 06afe09091ee69dc7ab058b4be9917ae59cc81e5 upstream. + - int mptcp_userspace_pm_get_flags_and_ifindex_by_id(struct mptcp_sock *msk, - unsigned int id, - u8 *flags, int *ifindex) - { -- struct mptcp_pm_addr_entry *entry, *match = NULL; -+ struct mptcp_pm_addr_entry *match; - - *flags = 0; - *ifindex = 0; + Corresponding __lookup_addr_by_id() helper in the in-kernel netlink PM, + this patch adds a new helper mptcp_userspace_pm_lookup_addr_by_id() to + lookup the address entry with the given id on the userspace pm local +@@ -8,15 +10,17 @@ + Reviewed-by: Mat Martineau <martineau@kernel.org> + Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org> + Signed-off-by: David S. Miller <davem@davemloft.net> ++Stable-dep-of: f642c5c4d528 ("mptcp: hold pm lock when deleting entry") ++Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org> + --- + net/mptcp/pm_userspace.c | 31 ++++++++++++++++--------------- + 1 file changed, 16 insertions(+), 15 deletions(-) - spin_lock_bh(&msk->pm.lock); -- list_for_each_entry(entry, &msk->pm.userspace_pm_local_addr_list, list) { -- if (id == entry->addr.id) { -- match = entry; -- break; -- } -- } -+ match = mptcp_userspace_pm_lookup_addr_by_id(msk, id); - spin_unlock_bh(&msk->pm.lock); - if (match) { - *flags = match->flags; -@@ -282,7 +289,7 @@ int mptcp_nl_cmd_remove(struct sk_buff *skb, struct genl_info *info) - { - struct nlattr *token = info->attrs[MPTCP_PM_ATTR_TOKEN]; - struct nlattr *id = info->attrs[MPTCP_PM_ATTR_LOC_ID]; -- struct mptcp_pm_addr_entry *match = NULL; -+ struct mptcp_pm_addr_entry *match; - struct mptcp_pm_addr_entry *entry; - struct mptcp_sock *msk; - LIST_HEAD(free_list); -@@ -319,13 +326,7 @@ int mptcp_nl_cmd_remove(struct sk_buff *skb, struct genl_info *info) - - lock_sock(sk); - -- list_for_each_entry(entry, &msk->pm.userspace_pm_local_addr_list, list) { -- if (entry->addr.id == id_val) { -- match = entry; -- break; -- } -- } -- -+ match = mptcp_userspace_pm_lookup_addr_by_id(msk, id_val); - if (!match) { - GENL_SET_ERR_MSG(info, "address with specified id not found"); - release_sock(sk); --- -2.45.2 + diff --git a/net/mptcp/pm_userspace.c b/net/mptcp/pm_userspace.c +-index 3bd13e94b5687..20cbcb62cd8c5 100644 ++index 530f414e57d6..ca3e452d4edb 100644 + --- a/net/mptcp/pm_userspace.c + +++ b/net/mptcp/pm_userspace.c +-@@ -106,19 +106,26 @@ static int mptcp_userspace_pm_delete_local_addr(struct mptcp_sock *msk, ++@@ -106,22 +106,29 @@ static int mptcp_userspace_pm_delete_local_addr(struct mptcp_sock *msk, + return -EINVAL; + } + +@@ -39,6 +43,9 @@ + - struct mptcp_pm_addr_entry *entry, *match = NULL; + + struct mptcp_pm_addr_entry *match; + ++ *flags = 0; ++ *ifindex = 0; ++ + spin_lock_bh(&msk->pm.lock); + - list_for_each_entry(entry, &msk->pm.userspace_pm_local_addr_list, list) { + - if (id == entry->addr.id) { +@@ -50,7 +57,7 @@ + spin_unlock_bh(&msk->pm.lock); + if (match) { + *flags = match->flags; +-@@ -261,7 +268,7 @@ int mptcp_pm_nl_remove_doit(struct sk_buff *skb, struct genl_info *info) ++@@ -282,7 +289,7 @@ int mptcp_nl_cmd_remove(struct sk_buff *skb, struct genl_info *info) + { + struct nlattr *token = info->attrs[MPTCP_PM_ATTR_TOKEN]; + struct nlattr *id = info->attrs[MPTCP_PM_ATTR_LOC_ID]; +@@ -59,7 +66,7 @@ + struct mptcp_pm_addr_entry *entry; + struct mptcp_sock *msk; + LIST_HEAD(free_list); +-@@ -298,13 +305,7 @@ int mptcp_pm_nl_remove_doit(struct sk_buff *skb, struct genl_info *info) ++@@ -319,13 +326,7 @@ int mptcp_nl_cmd_remove(struct sk_buff *skb, struct genl_info *info) + + lock_sock(sk); + +@@ -74,3 +81,6 @@ + if (!match) { + GENL_SET_ERR_MSG(info, "address with specified id not found"); + release_sock(sk); ++-- ++2.45.2 ++ +--- + +Results of testing on various branches: + +| Branch | Patch Apply | Build Test | +|---------------------------|-------------|------------| +| stable/linux-6.1.y | Success | Success | diff --git a/a/content_digest b/N1/content_digest index b1129bd..d35cf14 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -1,103 +1,98 @@ - "ref\020241119083547.3234013-9-matttbe@kernel.org\0" - "From\0Matthieu Baerts (NGI0) <matttbe@kernel.org>\0" - "Subject\0[PATCH 6.1.y 3/7] mptcp: add userspace_pm_lookup_addr_by_id helper\0" - "Date\0Tue, 19 Nov 2024 09:35:51 +0100\0" - "To\0mptcp@lists.linux.dev" - stable@vger.kernel.org - " gregkh@linuxfoundation.org\0" - "Cc\0Geliang Tang <tanggeliang@kylinos.cn>" - sashal@kernel.org - Matthieu Baerts <matttbe@kernel.org> - Mat Martineau <martineau@kernel.org> - " David S . Miller <davem@davemloft.net>\0" + "From\0Sasha Levin <sashal@kernel.org>\0" + "Subject\0Re: [PATCH 6.1.y 3/7] mptcp: add userspace_pm_lookup_addr_by_id helper\0" + "Date\0Tue, 19 Nov 2024 09:46:57 -0500\0" + "To\0stable@vger.kernel.org\0" + "Cc\0Matthieu Baerts (NGI0) <matttbe@kernel.org>" + " Sasha Levin <sashal@kernel.org>\0" "\00:1\0" "b\0" - "From: Geliang Tang <tanggeliang@kylinos.cn>\n" + "[ Sasha's backport helper bot ]\n" "\n" - "commit 06afe09091ee69dc7ab058b4be9917ae59cc81e5 upstream.\n" + "Hi,\n" "\n" - "Corresponding __lookup_addr_by_id() helper in the in-kernel netlink PM,\n" - "this patch adds a new helper mptcp_userspace_pm_lookup_addr_by_id() to\n" - "lookup the address entry with the given id on the userspace pm local\n" - "address list.\n" + "The upstream commit SHA1 provided is correct: 06afe09091ee69dc7ab058b4be9917ae59cc81e5\n" "\n" - "Signed-off-by: Geliang Tang <tanggeliang@kylinos.cn>\n" - "Reviewed-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>\n" - "Reviewed-by: Mat Martineau <martineau@kernel.org>\n" - "Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>\n" - "Signed-off-by: David S. Miller <davem@davemloft.net>\n" - "Stable-dep-of: f642c5c4d528 (\"mptcp: hold pm lock when deleting entry\")\n" - "Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>\n" - "---\n" - " net/mptcp/pm_userspace.c | 31 ++++++++++++++++---------------\n" - " 1 file changed, 16 insertions(+), 15 deletions(-)\n" + "WARNING: Author mismatch between patch and upstream commit:\n" + "Backport author: \"Matthieu Baerts (NGI0)\" <matttbe@kernel.org>\n" + "Commit author: Geliang Tang <tanggeliang@kylinos.cn>\n" "\n" - "diff --git a/net/mptcp/pm_userspace.c b/net/mptcp/pm_userspace.c\n" - "index 530f414e57d6..ca3e452d4edb 100644\n" - "--- a/net/mptcp/pm_userspace.c\n" - "+++ b/net/mptcp/pm_userspace.c\n" - "@@ -106,22 +106,29 @@ static int mptcp_userspace_pm_delete_local_addr(struct mptcp_sock *msk,\n" - " \treturn -EINVAL;\n" - " }\n" - " \n" - "+static struct mptcp_pm_addr_entry *\n" - "+mptcp_userspace_pm_lookup_addr_by_id(struct mptcp_sock *msk, unsigned int id)\n" - "+{\n" - "+\tstruct mptcp_pm_addr_entry *entry;\n" - "+\n" - "+\tlist_for_each_entry(entry, &msk->pm.userspace_pm_local_addr_list, list) {\n" - "+\t\tif (entry->addr.id == id)\n" - "+\t\t\treturn entry;\n" - "+\t}\n" - "+\treturn NULL;\n" - "+}\n" + "\n" + "Status in newer kernel trees:\n" + "6.11.y | Present (exact SHA1)\n" + "6.6.y | Not found\n" + "6.1.y | Not found\n" + "\n" + "Note: The patch differs from the upstream commit:\n" + "---\n" + "--- -\t2024-11-19 08:56:32.828886482 -0500\n" + "+++ /tmp/tmp.3kjEa5Z2e2\t2024-11-19 08:56:32.824223221 -0500\n" + "@@ -1,3 +1,5 @@\n" + "+commit 06afe09091ee69dc7ab058b4be9917ae59cc81e5 upstream.\n" "+\n" - " int mptcp_userspace_pm_get_flags_and_ifindex_by_id(struct mptcp_sock *msk,\n" - " \t\t\t\t\t\t unsigned int id,\n" - " \t\t\t\t\t\t u8 *flags, int *ifindex)\n" - " {\n" - "-\tstruct mptcp_pm_addr_entry *entry, *match = NULL;\n" - "+\tstruct mptcp_pm_addr_entry *match;\n" - " \n" - " \t*flags = 0;\n" - " \t*ifindex = 0;\n" + " Corresponding __lookup_addr_by_id() helper in the in-kernel netlink PM,\n" + " this patch adds a new helper mptcp_userspace_pm_lookup_addr_by_id() to\n" + " lookup the address entry with the given id on the userspace pm local\n" + "@@ -8,15 +10,17 @@\n" + " Reviewed-by: Mat Martineau <martineau@kernel.org>\n" + " Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>\n" + " Signed-off-by: David S. Miller <davem@davemloft.net>\n" + "+Stable-dep-of: f642c5c4d528 (\"mptcp: hold pm lock when deleting entry\")\n" + "+Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>\n" + " ---\n" + " net/mptcp/pm_userspace.c | 31 ++++++++++++++++---------------\n" + " 1 file changed, 16 insertions(+), 15 deletions(-)\n" " \n" - " \tspin_lock_bh(&msk->pm.lock);\n" - "-\tlist_for_each_entry(entry, &msk->pm.userspace_pm_local_addr_list, list) {\n" - "-\t\tif (id == entry->addr.id) {\n" - "-\t\t\tmatch = entry;\n" - "-\t\t\tbreak;\n" - "-\t\t}\n" - "-\t}\n" - "+\tmatch = mptcp_userspace_pm_lookup_addr_by_id(msk, id);\n" - " \tspin_unlock_bh(&msk->pm.lock);\n" - " \tif (match) {\n" - " \t\t*flags = match->flags;\n" - "@@ -282,7 +289,7 @@ int mptcp_nl_cmd_remove(struct sk_buff *skb, struct genl_info *info)\n" - " {\n" - " \tstruct nlattr *token = info->attrs[MPTCP_PM_ATTR_TOKEN];\n" - " \tstruct nlattr *id = info->attrs[MPTCP_PM_ATTR_LOC_ID];\n" - "-\tstruct mptcp_pm_addr_entry *match = NULL;\n" - "+\tstruct mptcp_pm_addr_entry *match;\n" - " \tstruct mptcp_pm_addr_entry *entry;\n" - " \tstruct mptcp_sock *msk;\n" - " \tLIST_HEAD(free_list);\n" - "@@ -319,13 +326,7 @@ int mptcp_nl_cmd_remove(struct sk_buff *skb, struct genl_info *info)\n" - " \n" - " \tlock_sock(sk);\n" - " \n" - "-\tlist_for_each_entry(entry, &msk->pm.userspace_pm_local_addr_list, list) {\n" - "-\t\tif (entry->addr.id == id_val) {\n" - "-\t\t\tmatch = entry;\n" - "-\t\t\tbreak;\n" - "-\t\t}\n" - "-\t}\n" - "-\n" - "+\tmatch = mptcp_userspace_pm_lookup_addr_by_id(msk, id_val);\n" - " \tif (!match) {\n" - " \t\tGENL_SET_ERR_MSG(info, \"address with specified id not found\");\n" - " \t\trelease_sock(sk);\n" - "-- \n" - 2.45.2 + " diff --git a/net/mptcp/pm_userspace.c b/net/mptcp/pm_userspace.c\n" + "-index 3bd13e94b5687..20cbcb62cd8c5 100644\n" + "+index 530f414e57d6..ca3e452d4edb 100644\n" + " --- a/net/mptcp/pm_userspace.c\n" + " +++ b/net/mptcp/pm_userspace.c\n" + "-@@ -106,19 +106,26 @@ static int mptcp_userspace_pm_delete_local_addr(struct mptcp_sock *msk,\n" + "+@@ -106,22 +106,29 @@ static int mptcp_userspace_pm_delete_local_addr(struct mptcp_sock *msk,\n" + " \treturn -EINVAL;\n" + " }\n" + " \n" + "@@ -39,6 +43,9 @@\n" + " -\tstruct mptcp_pm_addr_entry *entry, *match = NULL;\n" + " +\tstruct mptcp_pm_addr_entry *match;\n" + " \n" + "+ \t*flags = 0;\n" + "+ \t*ifindex = 0;\n" + "+ \n" + " \tspin_lock_bh(&msk->pm.lock);\n" + " -\tlist_for_each_entry(entry, &msk->pm.userspace_pm_local_addr_list, list) {\n" + " -\t\tif (id == entry->addr.id) {\n" + "@@ -50,7 +57,7 @@\n" + " \tspin_unlock_bh(&msk->pm.lock);\n" + " \tif (match) {\n" + " \t\t*flags = match->flags;\n" + "-@@ -261,7 +268,7 @@ int mptcp_pm_nl_remove_doit(struct sk_buff *skb, struct genl_info *info)\n" + "+@@ -282,7 +289,7 @@ int mptcp_nl_cmd_remove(struct sk_buff *skb, struct genl_info *info)\n" + " {\n" + " \tstruct nlattr *token = info->attrs[MPTCP_PM_ATTR_TOKEN];\n" + " \tstruct nlattr *id = info->attrs[MPTCP_PM_ATTR_LOC_ID];\n" + "@@ -59,7 +66,7 @@\n" + " \tstruct mptcp_pm_addr_entry *entry;\n" + " \tstruct mptcp_sock *msk;\n" + " \tLIST_HEAD(free_list);\n" + "-@@ -298,13 +305,7 @@ int mptcp_pm_nl_remove_doit(struct sk_buff *skb, struct genl_info *info)\n" + "+@@ -319,13 +326,7 @@ int mptcp_nl_cmd_remove(struct sk_buff *skb, struct genl_info *info)\n" + " \n" + " \tlock_sock(sk);\n" + " \n" + "@@ -74,3 +81,6 @@\n" + " \tif (!match) {\n" + " \t\tGENL_SET_ERR_MSG(info, \"address with specified id not found\");\n" + " \t\trelease_sock(sk);\n" + "+-- \n" + "+2.45.2\n" + "+\n" + "---\n" + "\n" + "Results of testing on various branches:\n" + "\n" + "| Branch | Patch Apply | Build Test |\n" + "|---------------------------|-------------|------------|\n" + | stable/linux-6.1.y | Success | Success | -a4d9ab7fa6a683eb5c40ad05d0377b65bb9c3ac67f9bfedf6b0b1eabd49b11f6 +2db34b88d5de6c25e92832119c8a7bb7ea708723fad7f8ce574dbec86e5b7d42
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.