x86: remove read code from cpuid4_cache_lookup() ... and make num_cache_leaves local to the only function using it. Signed-off-by: Jan Beulich --- unstable.orig/xen/arch/x86/cpu/intel_cacheinfo.c 2017-03-03 14:08:33.000000000 +0100 +++ unstable/xen/arch/x86/cpu/intel_cacheinfo.c 2018-04-30 15:59:54.637217413 +0200 @@ -80,8 +80,6 @@ static const struct _cache_table cache_t { 0x00, 0, 0} }; -unsigned short num_cache_leaves; - int cpuid4_cache_lookup(int index, struct cpuid4_info *this_leaf) { union _cpuid4_leaf_eax eax; @@ -123,7 +121,7 @@ unsigned int init_intel_cacheinfo(struct unsigned int trace = 0, l1i = 0, l1d = 0, l2 = 0, l3 = 0; /* Cache sizes */ unsigned int new_l1d = 0, new_l1i = 0; /* Cache sizes from cpuid(4) */ unsigned int new_l2 = 0, new_l3 = 0, i; /* Cache sizes from cpuid(4) */ - unsigned int l2_id = 0, l3_id = 0, num_threads_sharing, index_msb; + static unsigned int num_cache_leaves; if (c->cpuid_level > 3) { static int is_initialized; @@ -156,15 +154,9 @@ unsigned int init_intel_cacheinfo(struct break; case 2: new_l2 = this_leaf.size/1024; - num_threads_sharing = 1 + this_leaf.eax.split.num_threads_sharing; - index_msb = get_count_order(num_threads_sharing); - l2_id = c->apicid >> index_msb; break; case 3: new_l3 = this_leaf.size/1024; - num_threads_sharing = 1 + this_leaf.eax.split.num_threads_sharing; - index_msb = get_count_order(num_threads_sharing); - l3_id = c->apicid >> index_msb; break; default: break;