Message ID | 20241101022215.6667-1-jiapeng.chong@linux.alibaba.com (mailing list archive) |
---|---|
State | New |
Delegated to: | Kalle Valo |
Headers | show |
Series | [v2,-next] wifi: ipw2x00: fix bad alignments | expand |
Jiapeng Chong <jiapeng.chong@linux.alibaba.com> wrote: > This patch fixes incorrect code alignment. > > ./drivers/net/wireless/intel/ipw2x00/libipw_rx.c:871:2-3: code aligned with following code on line 882. > ./drivers/net/wireless/intel/ipw2x00/libipw_rx.c:886:2-3: code aligned with following code on line 900. > > Reported-by: Abaci Robot <abaci@linux.alibaba.com> > Closes: https://bugzilla.openanolis.cn/show_bug.cgi?id=11381 > Signed-off-by: Jiapeng Chong <jiapeng.chong@linux.alibaba.com> > --- > Changes in v2: > -Replace the & in the if statement with &&. I feel what Kalle meant is like this: if (ether_addr_equal(hdr->addr3, ieee->bssid) && (fc & (IEEE80211_FCTL_TODS + IEEE80211_FCTL_FROMDS)) == 0)
Jiapeng Chong <jiapeng.chong@linux.alibaba.com> writes: > This patch fixes incorrect code alignment. > > ./drivers/net/wireless/intel/ipw2x00/libipw_rx.c:871:2-3: code aligned with following code on line 882. > ./drivers/net/wireless/intel/ipw2x00/libipw_rx.c:886:2-3: code aligned with following code on line 900. > > Reported-by: Abaci Robot <abaci@linux.alibaba.com> > Closes: https://bugzilla.openanolis.cn/show_bug.cgi?id=11381 > Signed-off-by: Jiapeng Chong <jiapeng.chong@linux.alibaba.com> > --- > Changes in v2: > -Replace the & in the if statement with &&. Add 'wifi: ' to subject. > > .../net/wireless/intel/ipw2x00/libipw_rx.c | 44 +++++++++---------- > 1 file changed, 22 insertions(+), 22 deletions(-) > > diff --git a/drivers/net/wireless/intel/ipw2x00/libipw_rx.c b/drivers/net/wireless/intel/ipw2x00/libipw_rx.c > index 7e41cb7bbfe0..38731f67cb54 100644 > --- a/drivers/net/wireless/intel/ipw2x00/libipw_rx.c > +++ b/drivers/net/wireless/intel/ipw2x00/libipw_rx.c > @@ -868,34 +868,34 @@ void libipw_rx_any(struct libipw_device *ieee, > case IW_MODE_ADHOC: > /* our BSS and not from/to DS */ > if (ether_addr_equal(hdr->addr3, ieee->bssid)) > - if ((fc & (IEEE80211_FCTL_TODS+IEEE80211_FCTL_FROMDS)) == 0) { > - /* promisc: get all */ > - if (ieee->dev->flags & IFF_PROMISC) > - is_packet_for_us = 1; > - /* to us */ > - else if (ether_addr_equal(hdr->addr1, ieee->dev->dev_addr)) > - is_packet_for_us = 1; > - /* mcast */ > - else if (is_multicast_ether_addr(hdr->addr1)) > - is_packet_for_us = 1; > + if ((fc && (IEEE80211_FCTL_TODS + IEEE80211_FCTL_FROMDS)) == 0) { I meant instead of using two nested if statements you can use only one if statement with '&&' operator.
diff --git a/drivers/net/wireless/intel/ipw2x00/libipw_rx.c b/drivers/net/wireless/intel/ipw2x00/libipw_rx.c index 7e41cb7bbfe0..38731f67cb54 100644 --- a/drivers/net/wireless/intel/ipw2x00/libipw_rx.c +++ b/drivers/net/wireless/intel/ipw2x00/libipw_rx.c @@ -868,34 +868,34 @@ void libipw_rx_any(struct libipw_device *ieee, case IW_MODE_ADHOC: /* our BSS and not from/to DS */ if (ether_addr_equal(hdr->addr3, ieee->bssid)) - if ((fc & (IEEE80211_FCTL_TODS+IEEE80211_FCTL_FROMDS)) == 0) { - /* promisc: get all */ - if (ieee->dev->flags & IFF_PROMISC) - is_packet_for_us = 1; - /* to us */ - else if (ether_addr_equal(hdr->addr1, ieee->dev->dev_addr)) - is_packet_for_us = 1; - /* mcast */ - else if (is_multicast_ether_addr(hdr->addr1)) - is_packet_for_us = 1; + if ((fc && (IEEE80211_FCTL_TODS + IEEE80211_FCTL_FROMDS)) == 0) { + /* promisc: get all */ + if (ieee->dev->flags & IFF_PROMISC) + is_packet_for_us = 1; + /* to us */ + else if (ether_addr_equal(hdr->addr1, ieee->dev->dev_addr)) + is_packet_for_us = 1; + /* mcast */ + else if (is_multicast_ether_addr(hdr->addr1)) + is_packet_for_us = 1; } break; case IW_MODE_INFRA: /* our BSS (== from our AP) and from DS */ if (ether_addr_equal(hdr->addr2, ieee->bssid)) - if ((fc & (IEEE80211_FCTL_TODS+IEEE80211_FCTL_FROMDS)) == IEEE80211_FCTL_FROMDS) { - /* promisc: get all */ - if (ieee->dev->flags & IFF_PROMISC) - is_packet_for_us = 1; - /* to us */ - else if (ether_addr_equal(hdr->addr1, ieee->dev->dev_addr)) - is_packet_for_us = 1; - /* mcast */ - else if (is_multicast_ether_addr(hdr->addr1)) { - /* not our own packet bcasted from AP */ - if (!ether_addr_equal(hdr->addr3, ieee->dev->dev_addr)) + if ((fc && (IEEE80211_FCTL_TODS + IEEE80211_FCTL_FROMDS)) == IEEE80211_FCTL_FROMDS) { + /* promisc: get all */ + if (ieee->dev->flags & IFF_PROMISC) is_packet_for_us = 1; - } + /* to us */ + else if (ether_addr_equal(hdr->addr1, ieee->dev->dev_addr)) + is_packet_for_us = 1; + /* mcast */ + else if (is_multicast_ether_addr(hdr->addr1)) { + /* not our own packet bcasted from AP */ + if (!ether_addr_equal(hdr->addr3, ieee->dev->dev_addr)) + is_packet_for_us = 1; + } } break; default:
This patch fixes incorrect code alignment. ./drivers/net/wireless/intel/ipw2x00/libipw_rx.c:871:2-3: code aligned with following code on line 882. ./drivers/net/wireless/intel/ipw2x00/libipw_rx.c:886:2-3: code aligned with following code on line 900. Reported-by: Abaci Robot <abaci@linux.alibaba.com> Closes: https://bugzilla.openanolis.cn/show_bug.cgi?id=11381 Signed-off-by: Jiapeng Chong <jiapeng.chong@linux.alibaba.com> --- Changes in v2: -Replace the & in the if statement with &&. Add 'wifi: ' to subject. .../net/wireless/intel/ipw2x00/libipw_rx.c | 44 +++++++++---------- 1 file changed, 22 insertions(+), 22 deletions(-)