* Denys Vlasenko <dvlas...@redhat.com> wrote: > @@ -56,16 +56,34 @@ early_param("numa", numa_setup); > /* > * apicid, cpu, node mappings > */ > -s16 __apicid_to_node[MAX_LOCAL_APICID] = { > - [0 ... MAX_LOCAL_APICID-1] = NUMA_NO_NODE > + > +struct apicid_to_node __apicid_to_node[NR_CPUS] = { > + [0 ... NR_CPUS-1] = {-1, NUMA_NO_NODE} > }; > > +void set_apicid_to_node(int apicid, s16 node) > +{ > + static int ent;
having such statics inside functions is really obscure and makes review harder. I had to look twice to see it. Please move it outside and also name it appropriately. > + /* Protect against small kernel on large system */ > + if (ent >= NR_CPUS) > + return; > + > + __apicid_to_node[ent].apicid = apicid; > + __apicid_to_node[ent].node = node; > + ent++; > +} So what happens if we run a small kernel and run out of entries? We just silently seem to return, no warning, no nothing - the system will likely fail to boot in myserious ways, right? Thanks, Ingo -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/