On Mon, Feb 18, 2013 at 07:58:18 -0800, Johannes Berg wrote: > On Mon, 2013-02-18 at 16:49 +0100, Antonio Quartulli wrote: > > On Mon, Feb 18, 2013 at 07:43:26 -0800, Johannes Berg wrote: > > > > I did not like this approach because the sta_info struct is so big that > > > > when we want to fill the stats substruct only we will waste a lot of bytes. > > > > > > I don't understand your point. > > > > > > struct sta_info { > > > ... > > > struct stats stats; > > > }; > > > > My concern is about those "..." that we are allocating within the sta_info struct > > that we will never use for every non-peer station. > > > > While if we used the struct below (with its own hash table), we would allocate > > only the space needed for the stats. > > > > > > > > struct stats_entry { > > > struct hash/list/whatever; > > > struct stats stats; > > > }; > > > > > > > > > no? > > Maybe I misunderstood your idea? > > But I'm not saying that these are mutually exclusive, I'm saying both > should exist. Ah ok..Sorry, but I did not take this as an option :) So, if I understood correctly, this means one table lookup for peer stations, while two table lookups for non peers (first in sta_hash, which will fail). Right? This would save one look up for each peer, since we have to do perform one of them anyway (now I fully understood your previous statement!). Cheers, -- Antonio Quartulli ..each of us alone is worth nothing.. Ernesto "Che" Guevara