Thread (1 message) 1 message, 1 author, 2005-03-23

Re: 2.6.12-rc1-mm1: hostap stack usage

From: Jouni Malinen <hidden>
Date: 2005-03-23 04:59:32
Also in: lkml

(netdev added to cc:)

On Tue, Mar 22, 2005 at 05:33:40PM +0100, Adrian Bunk wrote:
The stack usage in some files under drivers/net/wireless/hostap/ is
too high.
Thanks; I'll fix these and submit a patch (or two) after some testing.
drivers/net/wireless/hostap/hostap_ioctl.c:

prism2_ioctl_giwaplist:
        struct sockaddr addr[IW_MAX_AP];
        struct iw_quality qual[IW_MAX_AP];

64 * (16 + 4) Bytes = 1280 Bytes
OK.
prism2_ioctl_ethtool:
        struct ethtool_drvinfo info = { ETHTOOL_GDRVINFO };

196 Bytes
This seems to be somewhat obsolete now since most drivers have moved to
use get_drvinfo of ethtool_ops; I'll do the same.
__prism2_translate_scan:
        char buf[MAX_WPA_IE_LEN * 2 + 30];

(64 * 2) + 30 Bytes = 158 Bytes
OK.
drivers/net/wireless/hostap/hostap_cs.c:

prism2_config:
        cisparse_t parse;
        u_char buf[64];
        config_info_t conf;

The main offender seems to be "parse" (but I'm too lame counting how 
many bytes it's exactly) resulting in nearly 1 kB stack usage.
This is actually very common for PC Card drivers in the current kernel
tree.. I'll change Host AP to kmalloc this, but someone might consider
going through all *_cs.c drivers..
drivers/net/wireless/hostap/hostap_plx.c:

prism2_plx_check_cis:
#define CIS_MAX_LEN 256
        u8 cis[CIS_MAX_LEN];
OK.

-- 
Jouni Malinen                                            PGP id EFC895FA
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help