# git rev-parse -q --verify 4b058c9f281f5b100efbf665dd5a1a05e1654d6d^{commit} 4b058c9f281f5b100efbf665dd5a1a05e1654d6d already have revision, skipping fetch # git checkout -q -f -B kisskb 4b058c9f281f5b100efbf665dd5a1a05e1654d6d # git clean -qxdf # < git log -1 # commit 4b058c9f281f5b100efbf665dd5a1a05e1654d6d # Author: Jason A. Donenfeld # Date: Wed Sep 25 19:50:22 2024 +0200 # # powerpc/vdso: allow r30 in vDSO code generation of getrandom # # For gettimeofday, -ffixed-r30 was passed to work around a bug in Go # code, where the vDSO trampoline forgot to save and restore this register # across function calls. But Go requires a different trampoline for every # call, and there's no reason that new Go code needs to be broken and add # more bugs. So remove -ffixed-r30 for getrandom. # # Fixes: 8072b39c3a75 ("powerpc/vdso: Wire up getrandom() vDSO implementation on VDSO64") # Signed-off-by: Jason A. Donenfeld # Signed-off-by: Michael Ellerman # Link: https://msgid.link/20240925175021.1526936-2-Jason@zx2c4.com # < /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld --version # < git log --format=%s --max-count=1 4b058c9f281f5b100efbf665dd5a1a05e1654d6d # make -s -j 32 ARCH=powerpc O=/kisskb/build/powerpc-fixes_85xx_ge_imp3a_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- 85xx/ge_imp3a_defconfig # < make -s -j 32 ARCH=powerpc O=/kisskb/build/powerpc-fixes_85xx_ge_imp3a_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- help # make -s -j 32 ARCH=powerpc O=/kisskb/build/powerpc-fixes_85xx_ge_imp3a_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- olddefconfig # make -s -j 32 ARCH=powerpc O=/kisskb/build/powerpc-fixes_85xx_ge_imp3a_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- /kisskb/src/kernel/locking/spinlock.c:68:17: warning: no previous prototype for '__raw_spin_lock' [-Wmissing-prototypes] void __lockfunc __raw_##op##_lock(locktype##_t *lock) \ ^ /kisskb/src/kernel/locking/spinlock.c:126:1: note: in expansion of macro 'BUILD_LOCK_OPS' BUILD_LOCK_OPS(spin, raw_spinlock); ^ /kisskb/src/kernel/locking/spinlock.c:80:26: warning: no previous prototype for '__raw_spin_lock_irqsave' [-Wmissing-prototypes] unsigned long __lockfunc __raw_##op##_lock_irqsave(locktype##_t *lock) \ ^ /kisskb/src/kernel/locking/spinlock.c:126:1: note: in expansion of macro 'BUILD_LOCK_OPS' BUILD_LOCK_OPS(spin, raw_spinlock); ^ /kisskb/src/kernel/locking/spinlock.c:98:17: warning: no previous prototype for '__raw_spin_lock_irq' [-Wmissing-prototypes] void __lockfunc __raw_##op##_lock_irq(locktype##_t *lock) \ ^ /kisskb/src/kernel/locking/spinlock.c:126:1: note: in expansion of macro 'BUILD_LOCK_OPS' BUILD_LOCK_OPS(spin, raw_spinlock); ^ /kisskb/src/kernel/locking/spinlock.c:103:17: warning: no previous prototype for '__raw_spin_lock_bh' [-Wmissing-prototypes] void __lockfunc __raw_##op##_lock_bh(locktype##_t *lock) \ ^ /kisskb/src/kernel/locking/spinlock.c:126:1: note: in expansion of macro 'BUILD_LOCK_OPS' BUILD_LOCK_OPS(spin, raw_spinlock); ^ /kisskb/src/kernel/locking/spinlock.c:68:17: warning: no previous prototype for '__raw_read_lock' [-Wmissing-prototypes] void __lockfunc __raw_##op##_lock(locktype##_t *lock) \ ^ /kisskb/src/kernel/locking/spinlock.c:129:1: note: in expansion of macro 'BUILD_LOCK_OPS' BUILD_LOCK_OPS(read, rwlock); ^ /kisskb/src/kernel/locking/spinlock.c:80:26: warning: no previous prototype for '__raw_read_lock_irqsave' [-Wmissing-prototypes] unsigned long __lockfunc __raw_##op##_lock_irqsave(locktype##_t *lock) \ ^ /kisskb/src/kernel/locking/spinlock.c:129:1: note: in expansion of macro 'BUILD_LOCK_OPS' BUILD_LOCK_OPS(read, rwlock); ^ /kisskb/src/kernel/locking/spinlock.c:98:17: warning: no previous prototype for '__raw_read_lock_irq' [-Wmissing-prototypes] void __lockfunc __raw_##op##_lock_irq(locktype##_t *lock) \ ^ /kisskb/src/kernel/locking/spinlock.c:129:1: note: in expansion of macro 'BUILD_LOCK_OPS' BUILD_LOCK_OPS(read, rwlock); ^ /kisskb/src/kernel/locking/spinlock.c:103:17: warning: no previous prototype for '__raw_read_lock_bh' [-Wmissing-prototypes] void __lockfunc __raw_##op##_lock_bh(locktype##_t *lock) \ ^ /kisskb/src/kernel/locking/spinlock.c:129:1: note: in expansion of macro 'BUILD_LOCK_OPS' BUILD_LOCK_OPS(read, rwlock); ^ /kisskb/src/kernel/locking/spinlock.c:68:17: warning: no previous prototype for '__raw_write_lock' [-Wmissing-prototypes] void __lockfunc __raw_##op##_lock(locktype##_t *lock) \ ^ /kisskb/src/kernel/locking/spinlock.c:130:1: note: in expansion of macro 'BUILD_LOCK_OPS' BUILD_LOCK_OPS(write, rwlock); ^ /kisskb/src/kernel/locking/spinlock.c:80:26: warning: no previous prototype for '__raw_write_lock_irqsave' [-Wmissing-prototypes] unsigned long __lockfunc __raw_##op##_lock_irqsave(locktype##_t *lock) \ ^ /kisskb/src/kernel/locking/spinlock.c:130:1: note: in expansion of macro 'BUILD_LOCK_OPS' BUILD_LOCK_OPS(write, rwlock); ^ /kisskb/src/kernel/locking/spinlock.c:98:17: warning: no previous prototype for '__raw_write_lock_irq' [-Wmissing-prototypes] void __lockfunc __raw_##op##_lock_irq(locktype##_t *lock) \ ^ /kisskb/src/kernel/locking/spinlock.c:130:1: note: in expansion of macro 'BUILD_LOCK_OPS' BUILD_LOCK_OPS(write, rwlock); ^ /kisskb/src/kernel/locking/spinlock.c:103:17: warning: no previous prototype for '__raw_write_lock_bh' [-Wmissing-prototypes] void __lockfunc __raw_##op##_lock_bh(locktype##_t *lock) \ ^ /kisskb/src/kernel/locking/spinlock.c:130:1: note: in expansion of macro 'BUILD_LOCK_OPS' BUILD_LOCK_OPS(write, rwlock); ^ cc1: warning: unrecognized command line option '-Wno-shift-negative-value' cc1: warning: unrecognized command line option '-Wno-stringop-overflow' Completed OK # rm -rf /kisskb/build/powerpc-fixes_85xx_ge_imp3a_defconfig_powerpc-gcc5 # Build took: 0:01:02.256652