Thread (2 messages) 2 messages, 2 authors, 2018-08-01

RE: [PATCH] cfg80211: read wmm rules from regulatory database

From: Dreyfuss, Haim <hidden>
Date: 2018-08-01 13:23:23
Also in: linux-wireless, lkml

-----Original Message-----
From: Colin Ian King [mailto:colin.king@canonical.com]
Sent: Tuesday, July 31, 2018 2:28 PM
To: Dreyfuss, Haim <redacted>; David S. Miller
[off-list ref]; Johannes Berg [off-list ref];
netdev@vger.kernel.org; linux-wireless@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Subject: re: [PATCH] cfg80211: read wmm rules from regulatory database

Hi Haim,

I think there may be an issue with the commit:

From 230ebaa189af44d50dccb4a1846e39ca594e347b Mon Sep 17 00:00:00
2001
From: Haim Dreyfuss <redacted>
Date: Wed, 28 Mar 2018 13:24:09 +0300
Subject: [PATCH] cfg80211: read wmm rules from regulatory database

specifically in function: reg_copy_regd()

+       for (i = 0; i < src_regd->n_reg_rules; i++) {
                memcpy(&regd->reg_rules[i], &src_regd->reg_rules[i],
                       sizeof(struct ieee80211_reg_rule));
+               if (!src_regd->reg_rules[i].wmm_rule)
+                       continue;

+               regd->reg_rules[i].wmm_rule = d_wmm +
+                       (src_regd->reg_rules[i].wmm_rule - s_wmm) /
+                       sizeof(struct ieee80211_wmm_rule);
+       }

The pointer arithmetic (src_regd->reg_rules[i].wmm_rule - s_wmm) is
performed in terms of the size of struct ieee80211_wmm_rule and not in
bytes and I believe that the division by sizeof(struct
ieee80211_wmm_rule) is not required.

This issue was detected by static analysis with Coverity Scan,
CID#1467451 ("Extra sizeof expression"), 'suspicious_division'

I'm not 100% sure that is this a false positive or not, but I think it looks
incorrect to me.
Yeah you're right, this is not false positive.
Johannes already fixed that and Luca will probably send it in the coming week.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help