# git rev-parse -q --verify 46d8c4b28652d35dc6cfb5adf7f54e102fc04384^{commit} 46d8c4b28652d35dc6cfb5adf7f54e102fc04384 already have revision, skipping fetch # git checkout -q -f -B kisskb 46d8c4b28652d35dc6cfb5adf7f54e102fc04384 # git clean -qxdf # < git log -1 # commit 46d8c4b28652d35dc6cfb5adf7f54e102fc04384 # Author: Herbert Xu # Date: Fri Jul 13 16:12:32 2018 +0800 # # crypto: padlock-aes - Fix Nano workaround data corruption # # This was detected by the self-test thanks to Ard's chunking patch. # # I finally got around to testing this out on my ancient Via box. It # turns out that the workaround got the assembly wrong and we end up # doing count + initial cycles of the loop instead of just count. # # This obviously causes corruption, either by overwriting the source # that is yet to be processed, or writing over the end of the buffer. # # On CPUs that don't require the workaround only ECB is affected. # On Nano CPUs both ECB and CBC are affected. # # This patch fixes it by doing the subtraction prior to the assembly. # # Fixes: a76c1c23d0c3 ("crypto: padlock-aes - work around Nano CPU...") # Cc: # Reported-by: Jamie Heilman # 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 46d8c4b28652d35dc6cfb5adf7f54e102fc04384 # < make -s -j 10 ARCH=powerpc O=/kisskb/build/crypto_powernv_defconfig+NO_PERF_ppc64le CROSS_COMPILE=/opt/cross/kisskb/gcc-5.2.0-nolibc/powerpc64le-linux/bin/powerpc64le-linux- powernv_defconfig # Added to kconfig CONFIG_PERF_EVENTS=n # yes \n | make -s -j 10 ARCH=powerpc O=/kisskb/build/crypto_powernv_defconfig+NO_PERF_ppc64le CROSS_COMPILE=/opt/cross/kisskb/gcc-5.2.0-nolibc/powerpc64le-linux/bin/powerpc64le-linux- oldconfig yes: standard output: Broken pipe yes: write error # make -s -j 10 ARCH=powerpc O=/kisskb/build/crypto_powernv_defconfig+NO_PERF_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+NO_PERF_ppc64le # Build took: 0:02:54.673068