diff options
author | Noah Goldstein <goldstein.w.n@gmail.com> | 2023-08-10 19:28:24 -0500 |
---|---|---|
committer | Noah Goldstein <goldstein.w.n@gmail.com> | 2023-09-11 22:47:08 -0500 |
commit | 1a200935e135e8576556092e328155d150ce97de (patch) | |
tree | 656ec69d029606d0b3c22654ec945d5d23fde359 | |
parent | 6c8475a3f745afd08721d3cf33c25a175aee6d0a (diff) | |
download | glibc-1a200935e135e8576556092e328155d150ce97de.tar.gz glibc-1a200935e135e8576556092e328155d150ce97de.tar.xz glibc-1a200935e135e8576556092e328155d150ce97de.zip |
x86: Fix incorrect scope of setting `shared_per_thread` [BZ# 30745]
The: ``` if (shared_per_thread > 0 && threads > 0) shared_per_thread /= threads; ``` Code was accidentally moved to inside the else scope. This doesn't match how it was previously (before af992e7abd). This patch fixes that by putting the division after the `else` block. (cherry picked from commit 084fb31bc2c5f95ae0b9e6df4d3cf0ff43471ede)
-rw-r--r-- | sysdeps/x86/dl-cacheinfo.h | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/sysdeps/x86/dl-cacheinfo.h b/sysdeps/x86/dl-cacheinfo.h index c35bf73467..9841d8b282 100644 --- a/sysdeps/x86/dl-cacheinfo.h +++ b/sysdeps/x86/dl-cacheinfo.h @@ -675,11 +675,10 @@ get_common_cache_info (long int *shared_ptr, long int * shared_per_thread_ptr, u level. */ threads = ((cpu_features->features[CPUID_INDEX_1].cpuid.ebx >> 16) & 0xff); - - /* Get per-thread size of highest level cache. */ - if (shared_per_thread > 0 && threads > 0) - shared_per_thread /= threads; } + /* Get per-thread size of highest level cache. */ + if (shared_per_thread > 0 && threads > 0) + shared_per_thread /= threads; } /* Account for non-inclusive L2 and L3 caches. */ |