[PATCH] ieee802154: hwsim: fix GPF in hwsim_new_edge_nl

Subsystems: ieee 802.15.4 subsystem, networking drivers, the rest

STALE1872d LANDED

Landed in mainline as 889d0e7dc683 on 2021-07-08.

7 messages, 3 authors, 2021-07-08 · open the first message on its own page

[PATCH] ieee802154: hwsim: fix GPF in hwsim_new_edge_nl

From: Dongliang Mu <hidden>
Date: 2021-07-07 15:56:49

Both MAC802154_HWSIM_ATTR_RADIO_ID and MAC802154_HWSIM_ATTR_RADIO_EDGE
must be present to fix GPF.

Fixes: f25da51fdc38 ("ieee802154: hwsim: add replacement for fakelb")
Signed-off-by: Dongliang Mu <redacted>
---
 drivers/net/ieee802154/mac802154_hwsim.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ieee802154/mac802154_hwsim.c b/drivers/net/ieee802154/mac802154_hwsim.c
index cae52bfb871e..8caa61ec718f 100644
--- a/drivers/net/ieee802154/mac802154_hwsim.c
+++ b/drivers/net/ieee802154/mac802154_hwsim.c
@@ -418,7 +418,7 @@ static int hwsim_new_edge_nl(struct sk_buff *msg, struct genl_info *info)
 	struct hwsim_edge *e;
 	u32 v0, v1;
 
-	if (!info->attrs[MAC802154_HWSIM_ATTR_RADIO_ID] &&
+	if (!info->attrs[MAC802154_HWSIM_ATTR_RADIO_ID] ||
 	    !info->attrs[MAC802154_HWSIM_ATTR_RADIO_EDGE])
 		return -EINVAL;
 
-- 
2.25.1

Re: [PATCH] ieee802154: hwsim: fix GPF in hwsim_new_edge_nl

From: Dongliang Mu <hidden>
Date: 2021-07-07 16:11:28

On Wed, Jul 7, 2021 at 11:56 PM Dongliang Mu [off-list ref] wrote:
Both MAC802154_HWSIM_ATTR_RADIO_ID and MAC802154_HWSIM_ATTR_RADIO_EDGE
must be present to fix GPF.
I double-check the whole file, and there is only one similar issue
left in Line 421.

 mac802154_hwsim.c      187 if (!info->attrs[MAC802154_HWSIM_ATTR_RADIO_ID])

mac802154_hwsim.c      299 if (!info->attrs[MAC802154_HWSIM_ATTR_RADIO_ID])

mac802154_hwsim.c      421 if (!info->attrs[MAC802154_HWSIM_ATTR_RADIO_ID] &&

mac802154_hwsim.c      483 if (!info->attrs[MAC802154_HWSIM_ATTR_RADIO_ID] ||

mac802154_hwsim.c      531 if (!info->attrs[MAC802154_HWSIM_ATTR_RADIO_ID]  ||

mac80211_hwsim.c      3575 if (!info->attrs[HWSIM_ATTR_ADDR_TRANSMITTER] ||

mac80211_hwsim.c      3663 if (!info->attrs[HWSIM_ATTR_ADDR_RECEIVER] ||

mac80211_hwsim.c      3982 if (!info->attrs[HWSIM_ATTR_RADIO_ID])

In addition, I check this pattern in the whole source code, it seems
if statements with "&&" in other files are correct. For example,

        if (!info->attrs[NFC_ATTR_DEVICE_INDEX] ||
            (!info->attrs[NFC_ATTR_LLC_PARAM_LTO] &&
             !info->attrs[NFC_ATTR_LLC_PARAM_RW] &&
             !info->attrs[NFC_ATTR_LLC_PARAM_MIUX]))
                return -EINVAL;
quoted hunk
Fixes: f25da51fdc38 ("ieee802154: hwsim: add replacement for fakelb")
Signed-off-by: Dongliang Mu <redacted>
---
 drivers/net/ieee802154/mac802154_hwsim.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ieee802154/mac802154_hwsim.c b/drivers/net/ieee802154/mac802154_hwsim.c
index cae52bfb871e..8caa61ec718f 100644
--- a/drivers/net/ieee802154/mac802154_hwsim.c
+++ b/drivers/net/ieee802154/mac802154_hwsim.c
@@ -418,7 +418,7 @@ static int hwsim_new_edge_nl(struct sk_buff *msg, struct genl_info *info)
        struct hwsim_edge *e;
        u32 v0, v1;

-       if (!info->attrs[MAC802154_HWSIM_ATTR_RADIO_ID] &&
+       if (!info->attrs[MAC802154_HWSIM_ATTR_RADIO_ID] ||
            !info->attrs[MAC802154_HWSIM_ATTR_RADIO_EDGE])
                return -EINVAL;

--
2.25.1

Re: [PATCH] ieee802154: hwsim: fix GPF in hwsim_new_edge_nl

From: Alexander Aring <alex.aring@gmail.com>
Date: 2021-07-07 18:55:33

Hi,

On Wed, 7 Jul 2021 at 12:11, Dongliang Mu [off-list ref] wrote:
On Wed, Jul 7, 2021 at 11:56 PM Dongliang Mu [off-list ref] wrote:
quoted
Both MAC802154_HWSIM_ATTR_RADIO_ID and MAC802154_HWSIM_ATTR_RADIO_EDGE
must be present to fix GPF.
I double-check the whole file, and there is only one similar issue
left in Line 421.
What about "hwsim_del_edge_nl()" line 483, I think it has the same issue?

- Alex

Re: [PATCH] ieee802154: hwsim: fix GPF in hwsim_new_edge_nl

From: Dongliang Mu <hidden>
Date: 2021-07-07 23:15:16

On Thu, Jul 8, 2021 at 2:55 AM Alexander Aring [off-list ref] wrote:
Hi,

On Wed, 7 Jul 2021 at 12:11, Dongliang Mu [off-list ref] wrote:
quoted
On Wed, Jul 7, 2021 at 11:56 PM Dongliang Mu [off-list ref] wrote:
quoted
Both MAC802154_HWSIM_ATTR_RADIO_ID and MAC802154_HWSIM_ATTR_RADIO_EDGE
must be present to fix GPF.
I double-check the whole file, and there is only one similar issue
left in Line 421.
What about "hwsim_del_edge_nl()" line 483, I think it has the same issue?
Eric already submitted a patch [1] to fix this function and the patch
is already merged in the mainline.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=0303b30375dff5351a79cc2c3c87dfa4fda29bed
- Alex

Re: [PATCH] ieee802154: hwsim: fix GPF in hwsim_new_edge_nl

From: Alexander Aring <alex.aring@gmail.com>
Date: 2021-07-07 23:32:39

Hi,

On Wed, 7 Jul 2021 at 19:15, Dongliang Mu [off-list ref] wrote:
On Thu, Jul 8, 2021 at 2:55 AM Alexander Aring [off-list ref] wrote:
quoted
Hi,

On Wed, 7 Jul 2021 at 12:11, Dongliang Mu [off-list ref] wrote:
quoted
On Wed, Jul 7, 2021 at 11:56 PM Dongliang Mu [off-list ref] wrote:
quoted
Both MAC802154_HWSIM_ATTR_RADIO_ID and MAC802154_HWSIM_ATTR_RADIO_EDGE
must be present to fix GPF.
I double-check the whole file, and there is only one similar issue
left in Line 421.
What about "hwsim_del_edge_nl()" line 483, I think it has the same issue?
Eric already submitted a patch [1] to fix this function and the patch
is already merged in the mainline.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=0303b30375dff5351a79cc2c3c87dfa4fda29bed
ah, yes. Thanks.

- Alex

Re: [PATCH] ieee802154: hwsim: fix GPF in hwsim_new_edge_nl

From: Alexander Aring <alex.aring@gmail.com>
Date: 2021-07-07 23:34:44

Hi,

On Wed, 7 Jul 2021 at 11:56, Dongliang Mu [off-list ref] wrote:
Both MAC802154_HWSIM_ATTR_RADIO_ID and MAC802154_HWSIM_ATTR_RADIO_EDGE
must be present to fix GPF.

Fixes: f25da51fdc38 ("ieee802154: hwsim: add replacement for fakelb")
Signed-off-by: Dongliang Mu <redacted>
Acked-by: Alexander Aring <aahringo@redhat.com>

- Alex

Re: [PATCH] ieee802154: hwsim: fix GPF in hwsim_new_edge_nl

From: Stefan Schmidt <stefan@datenfreihafen.org>
Date: 2021-07-08 07:40:40

Hello.

On 08.07.21 01:34, Alexander Aring wrote:
Hi,

On Wed, 7 Jul 2021 at 11:56, Dongliang Mu [off-list ref] wrote:
quoted
Both MAC802154_HWSIM_ATTR_RADIO_ID and MAC802154_HWSIM_ATTR_RADIO_EDGE
must be present to fix GPF.

Fixes: f25da51fdc38 ("ieee802154: hwsim: add replacement for fakelb")
Signed-off-by: Dongliang Mu <redacted>
Acked-by: Alexander Aring <aahringo@redhat.com>
This patch has been applied to the wpan tree and will be
part of the next pull request to net. Thanks!

regards
Stefan Schmidt
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help