From: Mark Wooding Date: Fri, 27 Sep 2019 00:25:58 +0000 (+0100) Subject: Merge branch '2.4.x' into 2.5.x X-Git-Tag: 2.5.1~4 X-Git-Url: https://git.distorted.org.uk/~mdw/catacomb/commitdiff_plain/6af2607b63ce649a919513949d5f8a8deb2e6663?hp=ad7da99a043dab9addc7fce6b22b30f12c7676e6 Merge branch '2.4.x' into 2.5.x * 2.4.x: base/dispatch.c: Check for XMM registers after CPUID probe. rand/noise.c: Fix foolish bug in the `getentropy' code. --- diff --git a/base/dispatch.c b/base/dispatch.c index 9f2ac71b..bea97b40 100644 --- a/base/dispatch.c +++ b/base/dispatch.c @@ -547,22 +547,22 @@ int cpu_feature_p(int feat) switch (feat) { #if CPUFAM_X86 || CPUFAM_AMD64 CASE_CPUFEAT(X86_SSE2, "x86:sse2", - xmm_registers_available_p() && - cpuid_features_p(CPUID1D_SSE2, 0)); + cpuid_features_p(CPUID1D_SSE2, 0) && + xmm_registers_available_p()); CASE_CPUFEAT(X86_AESNI, "x86:aesni", - xmm_registers_available_p() && - cpuid_features_p(CPUID1D_SSE2, CPUID1C_AESNI)); + cpuid_features_p(CPUID1D_SSE2, CPUID1C_AESNI) && + xmm_registers_available_p()); CASE_CPUFEAT(X86_RDRAND, "x86:rdrand", cpuid_features_p(0, CPUID1C_RDRAND)); CASE_CPUFEAT(X86_AVX, "x86:avx", - xmm_registers_available_p() && - cpuid_features_p(0, CPUID1C_AVX)); + cpuid_features_p(0, CPUID1C_AVX) && + xmm_registers_available_p()); CASE_CPUFEAT(X86_SSSE3, "x86:ssse3", - xmm_registers_available_p() && - cpuid_features_p(0, CPUID1C_SSSE3)); + cpuid_features_p(0, CPUID1C_SSSE3) && + xmm_registers_available_p()); CASE_CPUFEAT(X86_PCLMUL, "x86:pclmul", - xmm_registers_available_p() && - cpuid_features_p(0, CPUID1C_PCLMUL)); + cpuid_features_p(0, CPUID1C_PCLMUL) && + xmm_registers_available_p()); #endif #ifdef CAPMAP # define FEATP__CASE(feat, tok) \ diff --git a/rand/noise.c b/rand/noise.c index 280c49cb..c120e6f2 100644 --- a/rand/noise.c +++ b/rand/noise.c @@ -217,7 +217,7 @@ int noise_devrandom(rand_pool *r) /* --- OpenBSD-flavoured shinies --- */ while (n < sizeof(buf)) { - nn = sizeof(buf) - nn; + nn = sizeof(buf) - n; if (nn > 256) nn = 256; if (getentropy(buf + n, nn)) break; n += nn;