* [PATCH AUTOSEL 4.4 07/16] ath6kl: return error code in ath6kl_wmi_set_roam_lrssi_cmd()
[not found] <20210524145130.2499829-1-sashal@kernel.org>
@ 2021-05-24 14:51 ` Sasha Levin
2021-05-31 20:47 ` Pavel Machek
2021-05-24 14:51 ` [PATCH AUTOSEL 4.4 08/16] libertas: register sysfs groups properly Sasha Levin
1 sibling, 1 reply; 4+ messages in thread
From: Sasha Levin @ 2021-05-24 14:51 UTC (permalink / raw)
To: linux-kernel, stable
Cc: Anirudh Rayabharam, Kangjie Lu, Kalle Valo, Sasha Levin,
linux-wireless, netdev
From: Anirudh Rayabharam <mail@anirudhrb.com>
[ Upstream commit fc6a6521556c8250e356ddc6a3f2391aa62dc976 ]
ath6kl_wmi_cmd_send could fail, so let's return its error code upstream.
Signed-off-by: Kangjie Lu <kjlu@umn.edu>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
drivers/net/wireless/ath/ath6kl/debug.c | 5 ++++-
drivers/net/wireless/ath/ath6kl/wmi.c | 4 +---
2 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/drivers/net/wireless/ath/ath6kl/debug.c b/drivers/net/wireless/ath/ath6kl/debug.c
index e2b7809d7886..f3a786af7ece 100644
--- a/drivers/net/wireless/ath/ath6kl/debug.c
+++ b/drivers/net/wireless/ath/ath6kl/debug.c
@@ -1027,14 +1027,17 @@ static ssize_t ath6kl_lrssi_roam_write(struct file *file,
{
struct ath6kl *ar = file->private_data;
unsigned long lrssi_roam_threshold;
+ int ret;
if (kstrtoul_from_user(user_buf, count, 0, &lrssi_roam_threshold))
return -EINVAL;
ar->lrssi_roam_threshold = lrssi_roam_threshold;
- ath6kl_wmi_set_roam_lrssi_cmd(ar->wmi, ar->lrssi_roam_threshold);
+ ret = ath6kl_wmi_set_roam_lrssi_cmd(ar->wmi, ar->lrssi_roam_threshold);
+ if (ret)
+ return ret;
return count;
}
diff --git a/drivers/net/wireless/ath/ath6kl/wmi.c b/drivers/net/wireless/ath/ath6kl/wmi.c
index 7e1010475cfb..4aead53acf38 100644
--- a/drivers/net/wireless/ath/ath6kl/wmi.c
+++ b/drivers/net/wireless/ath/ath6kl/wmi.c
@@ -776,10 +776,8 @@ int ath6kl_wmi_set_roam_lrssi_cmd(struct wmi *wmi, u8 lrssi)
cmd->info.params.roam_rssi_floor = DEF_LRSSI_ROAM_FLOOR;
cmd->roam_ctrl = WMI_SET_LRSSI_SCAN_PARAMS;
- ath6kl_wmi_cmd_send(wmi, 0, skb, WMI_SET_ROAM_CTRL_CMDID,
+ return ath6kl_wmi_cmd_send(wmi, 0, skb, WMI_SET_ROAM_CTRL_CMDID,
NO_SYNC_WMIFLAG);
-
- return 0;
}
int ath6kl_wmi_force_roam_cmd(struct wmi *wmi, const u8 *bssid)
--
2.30.2
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH AUTOSEL 4.4 08/16] libertas: register sysfs groups properly
[not found] <20210524145130.2499829-1-sashal@kernel.org>
2021-05-24 14:51 ` [PATCH AUTOSEL 4.4 07/16] ath6kl: return error code in ath6kl_wmi_set_roam_lrssi_cmd() Sasha Levin
@ 2021-05-24 14:51 ` Sasha Levin
1 sibling, 0 replies; 4+ messages in thread
From: Sasha Levin @ 2021-05-24 14:51 UTC (permalink / raw)
To: linux-kernel, stable
Cc: Greg Kroah-Hartman, Kalle Valo, Sasha Levin, linux-wireless,
netdev
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
[ Upstream commit 7e79b38fe9a403b065ac5915465f620a8fb3de84 ]
The libertas driver was trying to register sysfs groups "by hand" which
causes them to be created _after_ the device is initialized and
announced to userspace, which causes races and can prevent userspace
tools from seeing the sysfs files correctly.
Fix this up by using the built-in sysfs_groups pointers in struct
net_device which were created for this very reason, fixing the race
condition, and properly allowing for any error that might have occured
to be handled properly.
Cc: Kalle Valo <kvalo@codeaurora.org>
Link: https://lore.kernel.org/r/20210503115736.2104747-54-gregkh@linuxfoundation.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
drivers/net/wireless/libertas/mesh.c | 28 ++++------------------------
1 file changed, 4 insertions(+), 24 deletions(-)
diff --git a/drivers/net/wireless/libertas/mesh.c b/drivers/net/wireless/libertas/mesh.c
index d0c881dd5846..f1e9cbcfdc16 100644
--- a/drivers/net/wireless/libertas/mesh.c
+++ b/drivers/net/wireless/libertas/mesh.c
@@ -797,19 +797,6 @@ static const struct attribute_group mesh_ie_group = {
.attrs = mesh_ie_attrs,
};
-static void lbs_persist_config_init(struct net_device *dev)
-{
- int ret;
- ret = sysfs_create_group(&(dev->dev.kobj), &boot_opts_group);
- ret = sysfs_create_group(&(dev->dev.kobj), &mesh_ie_group);
-}
-
-static void lbs_persist_config_remove(struct net_device *dev)
-{
- sysfs_remove_group(&(dev->dev.kobj), &boot_opts_group);
- sysfs_remove_group(&(dev->dev.kobj), &mesh_ie_group);
-}
-
/***************************************************************************
* Initializing and starting, stopping mesh
@@ -1021,6 +1008,10 @@ static int lbs_add_mesh(struct lbs_private *priv)
SET_NETDEV_DEV(priv->mesh_dev, priv->dev->dev.parent);
mesh_dev->flags |= IFF_BROADCAST | IFF_MULTICAST;
+ mesh_dev->sysfs_groups[0] = &lbs_mesh_attr_group;
+ mesh_dev->sysfs_groups[1] = &boot_opts_group;
+ mesh_dev->sysfs_groups[2] = &mesh_ie_group;
+
/* Register virtual mesh interface */
ret = register_netdev(mesh_dev);
if (ret) {
@@ -1028,19 +1019,10 @@ static int lbs_add_mesh(struct lbs_private *priv)
goto err_free_netdev;
}
- ret = sysfs_create_group(&(mesh_dev->dev.kobj), &lbs_mesh_attr_group);
- if (ret)
- goto err_unregister;
-
- lbs_persist_config_init(mesh_dev);
-
/* Everything successful */
ret = 0;
goto done;
-err_unregister:
- unregister_netdev(mesh_dev);
-
err_free_netdev:
free_netdev(mesh_dev);
@@ -1063,8 +1045,6 @@ void lbs_remove_mesh(struct lbs_private *priv)
lbs_deb_enter(LBS_DEB_MESH);
netif_stop_queue(mesh_dev);
netif_carrier_off(mesh_dev);
- sysfs_remove_group(&(mesh_dev->dev.kobj), &lbs_mesh_attr_group);
- lbs_persist_config_remove(mesh_dev);
unregister_netdev(mesh_dev);
priv->mesh_dev = NULL;
kfree(mesh_dev->ieee80211_ptr);
--
2.30.2
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH AUTOSEL 4.4 07/16] ath6kl: return error code in ath6kl_wmi_set_roam_lrssi_cmd()
2021-05-24 14:51 ` [PATCH AUTOSEL 4.4 07/16] ath6kl: return error code in ath6kl_wmi_set_roam_lrssi_cmd() Sasha Levin
@ 2021-05-31 20:47 ` Pavel Machek
2021-05-31 21:14 ` Sasha Levin
0 siblings, 1 reply; 4+ messages in thread
From: Pavel Machek @ 2021-05-31 20:47 UTC (permalink / raw)
To: Sasha Levin
Cc: linux-kernel, stable, Anirudh Rayabharam, Kangjie Lu, Kalle Valo,
linux-wireless, netdev
[-- Attachment #1: Type: text/plain, Size: 970 bytes --]
Hi!
> From: Anirudh Rayabharam <mail@anirudhrb.com>
>
> [ Upstream commit fc6a6521556c8250e356ddc6a3f2391aa62dc976 ]
>
> ath6kl_wmi_cmd_send could fail, so let's return its error code
> upstream.
Something went very wrong here.
Content is okay, but "upstream commit" label is wrong, pointing to
incomplete fix that was reverted (with different content and different
author).
commit fc6a6521556c8250e356ddc6a3f2391aa62dc976
Author: Kangjie Lu <kjlu@umn.edu>
Date: Wed Dec 26 00:43:28 2018 -0600
ath6kl: return error code in ath6kl_wmi_set_roam_lrssi_cmd()
ath6kl_wmi_cmd_send could fail, so let's return its error code
upstream.
Signed-off-by: Kangjie Lu <kjlu@umn.edu>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Best regards,
Pavel
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH AUTOSEL 4.4 07/16] ath6kl: return error code in ath6kl_wmi_set_roam_lrssi_cmd()
2021-05-31 20:47 ` Pavel Machek
@ 2021-05-31 21:14 ` Sasha Levin
0 siblings, 0 replies; 4+ messages in thread
From: Sasha Levin @ 2021-05-31 21:14 UTC (permalink / raw)
To: Pavel Machek
Cc: linux-kernel, stable, Anirudh Rayabharam, Kangjie Lu, Kalle Valo,
linux-wireless, netdev
On Mon, May 31, 2021 at 10:47:00PM +0200, Pavel Machek wrote:
>Hi!
>
>> From: Anirudh Rayabharam <mail@anirudhrb.com>
>>
>> [ Upstream commit fc6a6521556c8250e356ddc6a3f2391aa62dc976 ]
>>
>> ath6kl_wmi_cmd_send could fail, so let's return its error code
>> upstream.
>
>Something went very wrong here.
>
>Content is okay, but "upstream commit" label is wrong, pointing to
>incomplete fix that was reverted (with different content and different
>author).
Yup, what ended up happening here is that my scripts got confused by the
reverted commit and the real fix having the same subject line. I've
fixed up my scripts and this patch was dropped. Thanks!
--
Thanks,
Sasha
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2021-05-31 21:14 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20210524145130.2499829-1-sashal@kernel.org>
2021-05-24 14:51 ` [PATCH AUTOSEL 4.4 07/16] ath6kl: return error code in ath6kl_wmi_set_roam_lrssi_cmd() Sasha Levin
2021-05-31 20:47 ` Pavel Machek
2021-05-31 21:14 ` Sasha Levin
2021-05-24 14:51 ` [PATCH AUTOSEL 4.4 08/16] libertas: register sysfs groups properly Sasha Levin
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox