diff options
author | Noah Goldstein <goldstein.w.n@gmail.com> | 2023-08-11 18:42:52 -0500 |
---|---|---|
committer | Noah Goldstein <goldstein.w.n@gmail.com> | 2023-09-11 22:47:26 -0500 |
commit | 077f1f78bbecaf2f36dc01a27900cf73314cc713 (patch) | |
tree | 3d01e257dc75e6f40a675ce27388d04e5e2fbf5d | |
parent | ed4ceabea12dc3748f7ee390187744c8d1911510 (diff) | |
download | glibc-077f1f78bbecaf2f36dc01a27900cf73314cc713.zip glibc-077f1f78bbecaf2f36dc01a27900cf73314cc713.tar.gz glibc-077f1f78bbecaf2f36dc01a27900cf73314cc713.tar.bz2 |
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/cacheinfo.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/sysdeps/x86/cacheinfo.c b/sysdeps/x86/cacheinfo.c index 6c0a80d..84c2d3c 100644 --- a/sysdeps/x86/cacheinfo.c +++ b/sysdeps/x86/cacheinfo.c @@ -736,12 +736,11 @@ get_common_cache_info (long int *shared_ptr, long int * shared_per_thread_ptr, u threads = ((cpu_features->features[COMMON_CPUID_INDEX_1].cpuid.ebx >> 16) & 0xff); - - /* Cap usage of highest cache level to the number of supported - threads. */ - if (shared_per_thread > 0 && threads > 0) - shared_per_thread /= threads; } + /* Cap usage of highest cache level to the number of supported + threads. */ + if (shared_per_thread > 0 && threads > 0) + shared_per_thread /= threads; } /* Account for non-inclusive L2 and L3 caches. */ |