[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20111111.202235.1981500713669985784.davem@davemloft.net>
Date: Fri, 11 Nov 2011 20:22:35 -0500 (EST)
From: David Miller <davem@...emloft.net>
To: equinox@...c24.net
Cc: netdev@...r.kernel.org, kaber@...sh.net
Subject: Re: [PATCH 1/2] net: vlan: 802.1ad S-VLAN support
From: David Lamparter <equinox@...c24.net>
Date: Sat, 5 Nov 2011 17:54:14 +0100
> @@ -87,7 +97,8 @@ struct vlan_group {
> */
> unsigned int nr_vlans;
> struct hlist_node hlist; /* linked list */
> - struct net_device **vlan_devices_arrays[VLAN_GROUP_ARRAY_SPLIT_PARTS];
> + struct net_device **vlan_devices_arrays[VLAN_N_PROTOCOL]
> + [VLAN_GROUP_ARRAY_SPLIT_PARTS];
> struct rcu_head rcu;
> };
This is a terrible waste of memory. You're now using 5 times as much space,
the vast majority of which will be entirely unused.
I don't even think it's semantically correct, all these alias QinQ protocol
values don't provide completely new VLAN_ID name spaces at all. So this
layout doesn't even make any sense, you're allowing for something that isn't
even allowed.
Rework these datastructures to eliminate the wastage please.
--
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