[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <200907291720.09704.opurdila@ixiacom.com>
Date: Wed, 29 Jul 2009 17:20:09 +0300
From: Octavian Purdila <opurdila@...acom.com>
To: Joe Perches <joe@...ches.com>
Cc: David Miller <davem@...emloft.net>, lgrijincu@...acom.com,
netdev@...r.kernel.org, eric.dumazet@...il.com
Subject: Re: [PATCH] net: shrink net_device by #ifdef-ing protocol-specific members
On Tuesday 28 July 2009 19:49:15 Joe Perches wrote:
> > We are looking into that as well since we have a pretty aggressive goal
> > (get net_device to 450 bytes or so), but we thought of starting with the
> > low hanging fruits.
> > Any suggestions in this area?
>
> Some maybe not so good ones:
>
> Perhaps:
> struct timer_list watchdog_timer;
> might become a
> struct timer_list *watchdog_timer;
>
> Maybe all the protocol/mac/bridge/vlan/garp/wireless specific
> pointers might become a pointer to a list or array of pointers
> allocated on demand.
>
> Maybe combine perm_addr/broadcast/mc_list/uc addresses into a
> single list with type information. Maybe include dev_addrs,
> but it's iterated with an rcu lock held.
>
> Gaining less than 0, except maybe for weird network testing devices,
> use a pointer to struct net_device_stats.
Thanks for the suggestions.
BTW, we've noticed that the biggest net_device consumer is struct device with
176 bytes consumed on our arch (powerpc) and the only things that are used
from it seems to be the numa node id and the driver name. Some drivers also
use it but most of the usage seems to be related to sysfs.
Do you think its worth trying to make dev dependent on CONFIG_SYSFS?
tavi
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists