From: Dan Carpenter <dan.carpenter@oracle.com>
To: Aditya Shankar <aditya.shankar@microchip.com>
Cc: Ganesh Krishna <ganesh.krishna@microchip.com>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
devel@driverdev.osuosl.org, linux-wireless@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH] staging: wilc1000: Connect to highest RSSI value for required SSID
Date: Thu, 5 Jan 2017 15:14:50 +0300 [thread overview]
Message-ID: <20170105121450.GF13756@mwanda> (raw)
In-Reply-To: <1483601621-27545-1-git-send-email-aditya.shankar@microchip.com>
On Thu, Jan 05, 2017 at 01:03:41PM +0530, Aditya Shankar wrote:
> Connect to the highest rssi with the required SSID in the shadow
> table if the connection criteria is based only on the SSID.
> For the first matching SSID, an index to the table is saved.
> Later the index is updated if matching SSID has a higher
> RSSI value than the last saved index.
>
> However if decision is made based on BSSID, there is only one match
> in the table and corresponding index is used.
>
> Signed-off-by: Aditya Shankar <aditya.shankar@microchip.com>
> ---
> drivers/staging/wilc1000/wilc_wfi_cfgoperations.c | 20 ++++++++++++++------
> 1 file changed, 14 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c b/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c
> index c1a24f7..32206b8 100644
> --- a/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c
> +++ b/drivers/staging/wilc1000/wilc_wfi_cfgoperations.c
> @@ -665,6 +665,7 @@ static int connect(struct wiphy *wiphy, struct net_device *dev,
> {
> s32 s32Error = 0;
> u32 i;
> + u32 sel_bssi_idx = last_scanned_cnt + 1;
My understanding from reading the code is that "last_scanned_cnt + 1"
is a randomly chosen invalid value. Just saying:
sel_bssi_idx = last_scanned_cnt;
would also work because it's also invalid and slightly shorter to type.
But I suggest that you go with something like UINT_MAX because that's
more clearly invalid.
> u8 u8security = NO_ENCRYPT;
> enum AUTHTYPE tenuAuth_type = ANY;
>
> @@ -688,18 +689,25 @@ static int connect(struct wiphy *wiphy, struct net_device *dev,
> memcmp(last_scanned_shadow[i].ssid,
> sme->ssid,
> sme->ssid_len) == 0) {
> - if (!sme->bssid)
> - break;
> - else
> + if (!sme->bssid) {
> + if (sel_bssi_idx == (last_scanned_cnt + 1))
> + sel_bssi_idx = i;
> + else if (last_scanned_shadow[i].rssi >
> + last_scanned_shadow[sel_bssi_idx].rssi)
> + sel_bssi_idx = i;
Combine these with an ||.
if (!sme->bssid) {
if (sel_bssi_idx == UINT_MAX ||
last_scanned_shadow[i].rssi >
last_scanned_shadow[sel_bssi_idx].rssi)
sel_bssi_idx = i;
In a separate patch, you can reverse the if statement at the start of
the loop:
if (sme->ssid_len != last_scanned_shadow[i].ssid_len ||
memcmp(last_scanned_shadow[i].ssid, sme->ssid,
sme->ssid_len) != 0)
continue;
That way you can pull these lines in a tab.
> + } else {
> if (memcmp(last_scanned_shadow[i].bssid,
> sme->bssid,
> - ETH_ALEN) == 0)
> + ETH_ALEN) == 0){
Add a space before the curly brace.
regards,
dan carpenter
next prev parent reply other threads:[~2017-01-05 12:15 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-01-05 7:33 [PATCH] staging: wilc1000: Connect to highest RSSI value for required SSID Aditya Shankar
2017-01-05 12:14 ` Dan Carpenter [this message]
2017-01-09 5:50 ` Aditya Shankar
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=20170105121450.GF13756@mwanda \
--to=dan.carpenter@oracle.com \
--cc=aditya.shankar@microchip.com \
--cc=devel@driverdev.osuosl.org \
--cc=ganesh.krishna@microchip.com \
--cc=gregkh@linuxfoundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-wireless@vger.kernel.org \
/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 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.