lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <47FBD30A.1010003@trash.net>
Date:	Tue, 08 Apr 2008 22:18:18 +0200
From:	Patrick McHardy <kaber@...sh.net>
To:	Joe Perches <joe@...ches.com>
CC:	David Miller <davem@...emloft.net>, johannes@...solutions.net,
	harvey.harrison@...il.com, netdev@...r.kernel.org
Subject: Re: New sparse warning in net/mac80211/debugfs_sta.c

Joe Perches wrote:
> On Mon, 2008-02-25 at 12:47 +0100, Patrick McHardy wrote: 
>> It would be good if Joe could go through the remaining print_mac users
>> and convert the remaining unintended function calls in fastpaths back
>> to MAC_FMT. Grepping for "start_xmit" in commit 0795af5729b shows that
>> at least 10 hard_start_xmit functions are affected and I expect that
>> some of the changes in the wireless code affect fastpaths as well.
> 
> I don't mind doing that, as calling print_mac in these fastpaths in
> unintentional and undesirable.


Unfortunately the current tree still includes all the fallout,
are you planning on cleaning this up again any time soon?

I've attached a codiff of a tree with and without this change
(might not include all drivers, but I think I enabled all that
build on x86_64). The _probe and _init_one functions should
be harmless, but there are lots of functions that look like
they would prefer to avoid useless overhead. A small sample:

drivers/net/starfire.c:
   netdev_poll       |  +50

drivers/net/tokenring/olympic.c:
   olympic_interrupt |  +10

drivers/net/wan/pc300_drv.c:
   cpc_net_rx |  +11

drivers/net/wireless/ipw2200.c:
   ipw_net_hard_start_xmit |  +32

drivers/net/wireless/hostap/hostap_80211_rx.c:
   hostap_rx_frame_decrypt |  +27
   hostap_80211_rx         |  +96

drivers/net/wireless/hostap/hostap_80211_tx.c:
   hostap_master_start_xmit |  +18

drivers/net/wireless/hostap/hostap_ap.c:
   hostap_handle_sta_tx_exc |  +13
   hostap_ap_tx_cb_poll     |   +9
   hostap_rx                | +254
   hostap_ap_tx_cb_auth     |  +62
   hostap_ap_tx_cb_assoc    |  +26
   hostap_handle_sta_tx     |  +90
   hostap_handle_sta_rx     |  +63

<lots more wireless>

drivers/net/virtio_net.c:
   start_xmit |  +19

net/atm/lec.c:
   lec_start_xmit | +118
   lec_atm_send   |   +2

net/ieee80211/ieee80211_rx.c:
   ieee80211_rx |  +32



View attachment "diff" of type "text/plain" (13222 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ