# git rev-parse -q --verify 837bf7cc3b7504385ae0e829c72e470dfc27cf6c^{commit} 837bf7cc3b7504385ae0e829c72e470dfc27cf6c already have revision, skipping fetch # git checkout -q -f -B kisskb 837bf7cc3b7504385ae0e829c72e470dfc27cf6c # git clean -qxdf # < git log -1 # commit 837bf7cc3b7504385ae0e829c72e470dfc27cf6c # Author: Michael Büsch # Date: Thu Jun 14 20:08:11 2018 +0200 # # hwrng: core - Always drop the RNG in hwrng_unregister() # # enable_best_rng() is used in hwrng_unregister() to switch away from the # currently active RNG, if that is the one currently being removed. # However enable_best_rng() might fail, if the next RNG's init routine # fails. In that case enable_best_rng() will return an error code and # the currently active RNG will remain active. # After unregistering this might lead to crashes due to use-after-free. # # Fix this by dropping the currently active RNG, if enable_best_rng() # failed. This will result in no RNG to be active, if the next-best # one failed to initialize. # # This problem was introduced by 142a27f0a731ddcf467546960a5585970ca98e21 # # Fixes: 142a27f0a731 ("hwrng: core - Reset user selected rng by...") # Reported-by: Wirz # Tested-by: Wirz # Signed-off-by: Michael Büsch # Cc: stable@vger.kernel.org # Signed-off-by: Herbert Xu # < /opt/cross/kisskb/gcc-5.2.0-nolibc/powerpc64le-linux/bin/powerpc64le-linux-gcc --version # < git log --format=%s --max-count=1 837bf7cc3b7504385ae0e829c72e470dfc27cf6c # < make -s -j 48 ARCH=powerpc O=/kisskb/build/crypto_powernv_defconfig_ppc64le CROSS_COMPILE=/opt/cross/kisskb/gcc-5.2.0-nolibc/powerpc64le-linux/bin/powerpc64le-linux- powernv_defconfig # make -s -j 48 ARCH=powerpc O=/kisskb/build/crypto_powernv_defconfig_ppc64le CROSS_COMPILE=/opt/cross/kisskb/gcc-5.2.0-nolibc/powerpc64le-linux/bin/powerpc64le-linux- WARNING: modpost: Found 2 section mismatch(es). To see full details build your kernel with: 'make CONFIG_DEBUG_SECTION_MISMATCH=y' Completed OK # rm -rf /kisskb/build/crypto_powernv_defconfig_ppc64le # Build took: 0:02:36.713635