# git rev-parse -q --verify 4a39ac5b7d62679c07a3e3d12b0f6982377d8a7d^{commit} 4a39ac5b7d62679c07a3e3d12b0f6982377d8a7d already have revision, skipping fetch # git checkout -q -f -B kisskb 4a39ac5b7d62679c07a3e3d12b0f6982377d8a7d # git clean -qxdf # < git log -1 # commit 4a39ac5b7d62679c07a3e3d12b0f6982377d8a7d # Merge: c8d8a35d0946 210860e7f733 # Author: Linus Torvalds # Date: Wed Sep 18 15:26:31 2024 +0200 # # Merge tag 'random-6.12-rc1-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/crng/random # # Pull random number generator updates from Jason Donenfeld: # "Originally I'd planned on sending each of the vDSO getrandom() # architecture ports to their respective arch trees. But as we started # to work on this, we found lots of interesting issues in the shared # code and infrastructure, the fixes for which the various archs needed # to base their work. # # So in the end, this turned into a nice collaborative effort fixing up # issues and porting to 5 new architectures -- arm64, powerpc64, # powerpc32, s390x, and loongarch64 -- with everybody pitching in and # commenting on each other's code. It was a fun development cycle. # # This contains: # # - Numerous fixups to the vDSO selftest infrastructure, getting it # running successfully on more platforms, and fixing bugs in it. # # - Additions to the vDSO getrandom & chacha selftests. Basically every # time manual review unearthed a bug in a revision of an arch patch, # or an ambiguity, the tests were augmented. # # By the time the last arch was submitted for review, s390x, v1 of # the series was essentially fine right out of the gate. # # - Fixes to the the generic C implementation of vDSO getrandom, to # build and run successfully on all archs, decoupling it from # assumptions we had (unintentionally) made on x86_64 that didn't # carry through to the other architectures. # # - Port of vDSO getrandom to LoongArch64, from Xi Ruoyao and acked by # Huacai Chen. # # - Port of vDSO getrandom to ARM64, from Adhemerval Zanella and acked # by Will Deacon. # # - Port of vDSO getrandom to PowerPC, in both 32-bit and 64-bit # varieties, from Christophe Leroy and acked by Michael Ellerman. # # - Port of vDSO getrandom to S390X from Heiko Carstens, the arch # maintainer. # # While it'd be natural for there to be things to fix up over the course # of the development cycle, these patches got a decent amount of review # from a fairly diverse crew of folks on the mailing lists, and, for the # most part, they've been cooking in linux-next, which has been helpful # for ironing out build issues. # # In terms of architectures, I think that mostly takes care of the # important 64-bit archs with hardware still being produced and running # production loads in settings where vDSO getrandom is likely to help. # # Arguably there's still RISC-V left, and we'll see for 6.13 whether # they find it useful and submit a port" # # * tag 'random-6.12-rc1-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/crng/random: (47 commits) # selftests: vDSO: check cpu caps before running chacha test # s390/vdso: Wire up getrandom() vdso implementation # s390/vdso: Move vdso symbol handling to separate header file # s390/vdso: Allow alternatives in vdso code # s390/module: Provide find_section() helper # s390/facility: Let test_facility() generate static branch if possible # s390/alternatives: Remove ALT_FACILITY_EARLY # s390/facility: Disable compile time optimization for decompressor code # selftests: vDSO: fix vdso_config for s390 # selftests: vDSO: fix ELF hash table entry size for s390x # powerpc/vdso: Wire up getrandom() vDSO implementation on VDSO64 # powerpc/vdso: Wire up getrandom() vDSO implementation on VDSO32 # powerpc/vdso: Refactor CFLAGS for CVDSO build # powerpc/vdso32: Add crtsavres # mm: Define VM_DROPPABLE for powerpc/32 # powerpc/vdso: Fix VDSO data access when running in a non-root time namespace # selftests: vDSO: don't include generated headers for chacha test # arm64: vDSO: Wire up getrandom() vDSO implementation # arm64: alternative: make alternative_has_cap_likely() VDSO compatible # selftests: vDSO: also test counter in vdso_test_chacha # ... # < /opt/cross/kisskb/korg/gcc-8.5.0-nolibc/x86_64-linux/bin/x86_64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-8.5.0-nolibc/x86_64-linux/bin/x86_64-linux-ld --version # < git log --format=%s --max-count=1 4a39ac5b7d62679c07a3e3d12b0f6982377d8a7d # make -s -j 24 ARCH=x86_64 O=/kisskb/build/linus_allmodconfig_x86_64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.5.0-nolibc/x86_64-linux/bin/x86_64-linux- allmodconfig # Added to kconfig CONFIG_BUILD_DOCSRC=n # Added to kconfig CONFIG_MODULE_SIG=n # Added to kconfig CONFIG_SAMPLES=n # Added to kconfig CONFIG_GCC_PLUGINS=n # Added to kconfig # < make -s -j 24 ARCH=x86_64 O=/kisskb/build/linus_allmodconfig_x86_64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.5.0-nolibc/x86_64-linux/bin/x86_64-linux- help # make -s -j 24 ARCH=x86_64 O=/kisskb/build/linus_allmodconfig_x86_64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.5.0-nolibc/x86_64-linux/bin/x86_64-linux- olddefconfig # make -s -j 24 ARCH=x86_64 O=/kisskb/build/linus_allmodconfig_x86_64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.5.0-nolibc/x86_64-linux/bin/x86_64-linux- Completed OK # rm -rf /kisskb/build/linus_allmodconfig_x86_64-gcc8 # Build took: 1:02:20.542581