drivers/net/wireless/ath/ath5k/phy.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-)
coccinielle reported the following:
./drivers/net/wireless/ath/ath5k/phy.c:1573:25-26: WARNING opportunity for swap()
Signed-off-by: Mahmoud Maatuq <mahmoudmatook.mm@gmail.com>
---
drivers/net/wireless/ath/ath5k/phy.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/drivers/net/wireless/ath/ath5k/phy.c b/drivers/net/wireless/ath/ath5k/phy.c
index 5797ef9c73d7..f87eb684f223 100644
--- a/drivers/net/wireless/ath/ath5k/phy.c
+++ b/drivers/net/wireless/ath/ath5k/phy.c
@@ -1562,16 +1562,13 @@ static s16
ath5k_hw_get_median_noise_floor(struct ath5k_hw *ah)
{
s16 sort[ATH5K_NF_CAL_HIST_MAX];
- s16 tmp;
int i, j;
memcpy(sort, ah->ah_nfcal_hist.nfval, sizeof(sort));
for (i = 0; i < ATH5K_NF_CAL_HIST_MAX - 1; i++) {
for (j = 1; j < ATH5K_NF_CAL_HIST_MAX - i; j++) {
if (sort[j] > sort[j - 1]) {
- tmp = sort[j];
- sort[j] = sort[j - 1];
- sort[j - 1] = tmp;
+ swap(sort[j], sort[j - 1]);
}
}
}
--
2.34.1
On 07. 08. 23, 22:10, Mahmoud Maatuq wrote:
> coccinielle reported the following:
> ./drivers/net/wireless/ath/ath5k/phy.c:1573:25-26: WARNING opportunity for swap()
OK, once again:
https://lore.kernel.org/all/0c3acbd4-6ab2-5cc5-6293-54e30093cce2@kernel.org/
> Signed-off-by: Mahmoud Maatuq <mahmoudmatook.mm@gmail.com>
> ---
> drivers/net/wireless/ath/ath5k/phy.c | 5 +----
> 1 file changed, 1 insertion(+), 4 deletions(-)
>
> diff --git a/drivers/net/wireless/ath/ath5k/phy.c b/drivers/net/wireless/ath/ath5k/phy.c
> index 5797ef9c73d7..f87eb684f223 100644
> --- a/drivers/net/wireless/ath/ath5k/phy.c
> +++ b/drivers/net/wireless/ath/ath5k/phy.c
> @@ -1562,16 +1562,13 @@ static s16
> ath5k_hw_get_median_noise_floor(struct ath5k_hw *ah)
> {
> s16 sort[ATH5K_NF_CAL_HIST_MAX];
> - s16 tmp;
> int i, j;
>
> memcpy(sort, ah->ah_nfcal_hist.nfval, sizeof(sort));
> for (i = 0; i < ATH5K_NF_CAL_HIST_MAX - 1; i++) {
> for (j = 1; j < ATH5K_NF_CAL_HIST_MAX - i; j++) {
> if (sort[j] > sort[j - 1]) {
> - tmp = sort[j];
> - sort[j] = sort[j - 1];
> - sort[j - 1] = tmp;
> + swap(sort[j], sort[j - 1]);
> }
> }
> }
--
js
suse labs
On 08/08, Jiri Slaby wrote:
> On 07. 08. 23, 22:10, Mahmoud Maatuq wrote:
> > coccinielle reported the following:
> > ./drivers/net/wireless/ath/ath5k/phy.c:1573:25-26: WARNING opportunity for swap()
>
>
> OK, once again:
> https://lore.kernel.org/all/0c3acbd4-6ab2-5cc5-6293-54e30093cce2@kernel.org/
I had a look at the commit history, to see why the original developer
didn't use sort() function, and name the array variable sort but found
nothing.
I have some doubts that he might did that intentionally, so not to call
sort() function for such small array and avoid the cost of context
switching.
> > Signed-off-by: Mahmoud Maatuq <mahmoudmatook.mm@gmail.com>
> > ---
> > drivers/net/wireless/ath/ath5k/phy.c | 5 +----
> > 1 file changed, 1 insertion(+), 4 deletions(-)
> >
> > diff --git a/drivers/net/wireless/ath/ath5k/phy.c b/drivers/net/wireless/ath/ath5k/phy.c
> > index 5797ef9c73d7..f87eb684f223 100644
> > --- a/drivers/net/wireless/ath/ath5k/phy.c
> > +++ b/drivers/net/wireless/ath/ath5k/phy.c
> > @@ -1562,16 +1562,13 @@ static s16
> > ath5k_hw_get_median_noise_floor(struct ath5k_hw *ah)
> > {
> > s16 sort[ATH5K_NF_CAL_HIST_MAX];
> > - s16 tmp;
> > int i, j;
> > memcpy(sort, ah->ah_nfcal_hist.nfval, sizeof(sort));
> > for (i = 0; i < ATH5K_NF_CAL_HIST_MAX - 1; i++) {
> > for (j = 1; j < ATH5K_NF_CAL_HIST_MAX - i; j++) {
> > if (sort[j] > sort[j - 1]) {
> > - tmp = sort[j];
> > - sort[j] = sort[j - 1];
> > - sort[j - 1] = tmp;
> > + swap(sort[j], sort[j - 1]);
> > }
> > }
> > }
>
> --
> js
> suse labs
On 08. 08. 23, 21:42, Mahmoud Matook wrote:
>> On 08/08, Jiri Slaby wrote:
>>
>>>> On 07. 08. 23, 22:10, Mahmoud Maatuq wrote:
>>>> coccinielle reported the following:
>>>> ./drivers/net/wireless/ath/ath5k/phy.c:1573:25-26: WARNING opportunity for swap()
>>>>
>>>>
>>> OK, once again:
>>> https://lore.kernel.org/all/0c3acbd4-6ab2-5cc5-6293-54e30093cce2@kernel.org/
>>
>>
>> I had a look at the commit history, to see why the original developer
>> didn't use sort() function, and name the array variable sort but found
>> nothing.
>> I have some doubts that he might did that intentionally, so not to call
>> sort() function for such small array
> It happens once in 10 s and in a work. No worries about that.
if it's the case so make sense to use sort().
but should I send the modifications on the same thread?
as the subject needs to be changed.
ex: repalce double loop with sort function
replace bubble sort with heap sort.
>> and avoid the cost of context switching.
> What context switching?
I used the wrong expression, I meant function call overhead
e.g store/load registers.
>>>> diff --git a/drivers/net/wireless/ath/ath5k/phy.c b/drivers/net/wireless/ath/ath5k/phy.c
>>>> index 5797ef9c73d7..f87eb684f223 100644
>>>> --- a/drivers/net/wireless/ath/ath5k/phy.c
>>>> +++ b/drivers/net/wireless/ath/ath5k/phy.c
>>>> @@ -1562,16 +1562,13 @@ static s16
>>>> ath5k_hw_get_median_noise_floor(struct ath5k_hw *ah)
>>>> {
>>>> s16 sort[ATH5K_NF_CAL_HIST_MAX];
>>>> - s16 tmp;
>>>> int i, j;
>>>> memcpy(sort, ah->ah_nfcal_hist.nfval, sizeof(sort));
>>>> for (i = 0; i < ATH5K_NF_CAL_HIST_MAX - 1; i++) {
>>>> for (j = 1; j < ATH5K_NF_CAL_HIST_MAX - i; j++) {
>>>> if (sort[j] > sort[j - 1]) {
>>>> - tmp = sort[j];
>>>> - sort[j] = sort[j - 1];
>>>> - sort[j - 1] = tmp;
>>>> + swap(sort[j], sort[j - 1]);
>>>> }
>>>> }
>>>> }
>>>
>>> --
>>> js
>>> suse labs
>
> --
> js
> suse labs
On 08. 08. 23, 21:42, Mahmoud Matook wrote:
> On 08/08, Jiri Slaby wrote:
>
>> On 07. 08. 23, 22:10, Mahmoud Maatuq wrote:
>>> coccinielle reported the following:
>>> ./drivers/net/wireless/ath/ath5k/phy.c:1573:25-26: WARNING opportunity for swap()
>>
>>
>> OK, once again:
>> https://lore.kernel.org/all/0c3acbd4-6ab2-5cc5-6293-54e30093cce2@kernel.org/
>
>
> I had a look at the commit history, to see why the original developer
> didn't use sort() function, and name the array variable sort but found
> nothing.
> I have some doubts that he might did that intentionally, so not to call
> sort() function for such small array
It happens once in 10 s and in a work. No worries about that.
> and avoid the cost of context switching.
What context switching?
>>> diff --git a/drivers/net/wireless/ath/ath5k/phy.c b/drivers/net/wireless/ath/ath5k/phy.c
>>> index 5797ef9c73d7..f87eb684f223 100644
>>> --- a/drivers/net/wireless/ath/ath5k/phy.c
>>> +++ b/drivers/net/wireless/ath/ath5k/phy.c
>>> @@ -1562,16 +1562,13 @@ static s16
>>> ath5k_hw_get_median_noise_floor(struct ath5k_hw *ah)
>>> {
>>> s16 sort[ATH5K_NF_CAL_HIST_MAX];
>>> - s16 tmp;
>>> int i, j;
>>> memcpy(sort, ah->ah_nfcal_hist.nfval, sizeof(sort));
>>> for (i = 0; i < ATH5K_NF_CAL_HIST_MAX - 1; i++) {
>>> for (j = 1; j < ATH5K_NF_CAL_HIST_MAX - i; j++) {
>>> if (sort[j] > sort[j - 1]) {
>>> - tmp = sort[j];
>>> - sort[j] = sort[j - 1];
>>> - sort[j - 1] = tmp;
>>> + swap(sort[j], sort[j - 1]);
>>> }
>>> }
>>> }
>>
>> --
>> js
>> suse labs
--
js
suse labs
© 2016 - 2026 Red Hat, Inc.