# git rev-parse -q --verify 4c388a8e740d3235a194f330c8ef327deef710f6^{commit} 4c388a8e740d3235a194f330c8ef327deef710f6 already have revision, skipping fetch # git checkout -q -f -B kisskb 4c388a8e740d3235a194f330c8ef327deef710f6 # git clean -qxdf # < git log -1 # commit 4c388a8e740d3235a194f330c8ef327deef710f6 # Merge: e26dd976580a 7416cdc9b9c1 # Author: Linus Torvalds # Date: Thu Nov 18 17:09:05 2021 -0800 # # Merge tag 'zstd-for-linus-5.16-rc1' of git://github.com/terrelln/linux # # Pull zstd fixes from Nick Terrell: # "Fix stack usage on parisc & improve code size bloat # # This contains three commits: # # 1. Fixes a minor unused variable warning reported by Kernel test # robot [0]. # # 2. Improves the reported code bloat (-88KB / 374KB) [1] by outlining # some functions that are unlikely to be used in performance # sensitive workloads. # # 3. Fixes the reported excess stack usage on parisc [2] by removing # -O3 from zstd's compilation flags. -O3 triggered bugs in the # hppa-linux-gnu gcc-8 compiler. -O2 performance is acceptable: # neutral compression, about -1% decompression speed. We also reduce # code bloat (-105KB / 374KB). # # After this our code bloat is cut from 374KB to 105KB with gcc-11. If # we wanted to cut the remaining 105KB we'd likely have to trade # signicant performance, so I want to say that this is enough for now. # # We should be able to get further gains without sacrificing speed, but # that will take some significant optimization effort, and isn't # suitable for a quick fix. I've opened an upstream issue [3] to track # the code size, and try to avoid future regressions, and improve it in # the long term" # # Link: https://lore.kernel.org/linux-mm/202111120312.833wII4i-lkp@intel.com/T/ [0] # Link: https://lkml.org/lkml/2021/11/15/710 [1] # Link: https://lkml.org/lkml/2021/11/14/189 [2] # Link: https://github.com/facebook/zstd/issues/2867 [3] # Link: https://lore.kernel.org/r/20211117014949.1169186-1-nickrterrell@gmail.com/ # Link: https://lore.kernel.org/r/20211117201459.1194876-1-nickrterrell@gmail.com/ # # * tag 'zstd-for-linus-5.16-rc1' of git://github.com/terrelln/linux: # lib: zstd: Don't add -O3 to cflags # lib: zstd: Don't inline functions in zstd_opt.c # lib: zstd: Fix unused variable warning # < /opt/cross/kisskb/korg/gcc-11.1.0-nolibc/x86_64-linux/bin/x86_64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-11.1.0-nolibc/x86_64-linux/bin/x86_64-linux-ld --version # < git log --format=%s --max-count=1 4c388a8e740d3235a194f330c8ef327deef710f6 # < make -s -j 24 ARCH=x86 O=/kisskb/build/linus_x86-allmodconfig_x86_64-gcc11 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-11.1.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 # < make -s -j 24 ARCH=x86 O=/kisskb/build/linus_x86-allmodconfig_x86_64-gcc11 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-11.1.0-nolibc/x86_64-linux/bin/x86_64-linux- help # make -s -j 24 ARCH=x86 O=/kisskb/build/linus_x86-allmodconfig_x86_64-gcc11 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-11.1.0-nolibc/x86_64-linux/bin/x86_64-linux- olddefconfig # make -s -j 24 ARCH=x86 O=/kisskb/build/linus_x86-allmodconfig_x86_64-gcc11 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-11.1.0-nolibc/x86_64-linux/bin/x86_64-linux- vmlinux.o: warning: objtool: __do_fast_syscall_32()+0xa: call to stackleak_track_stack() leaves .noinstr.text section vmlinux.o: warning: objtool: do_syscall_64()+0x9: call to stackleak_track_stack() leaves .noinstr.text section vmlinux.o: warning: objtool: do_int80_syscall_32()+0x9: call to stackleak_track_stack() leaves .noinstr.text section vmlinux.o: warning: objtool: xen_get_debugreg()+0xb: call to HYPERVISOR_get_debugreg() leaves .noinstr.text section vmlinux.o: warning: objtool: xen_set_debugreg()+0x15: call to HYPERVISOR_set_debugreg.isra.0() leaves .noinstr.text section vmlinux.o: warning: objtool: exc_general_protection()+0x22: call to stackleak_track_stack() leaves .noinstr.text section vmlinux.o: warning: objtool: fixup_bad_iret()+0x20: call to stackleak_track_stack() leaves .noinstr.text section vmlinux.o: warning: objtool: mce_setup()+0x18: call to memset() leaves .noinstr.text section vmlinux.o: warning: objtool: do_machine_check()+0x27: call to stackleak_track_stack() leaves .noinstr.text section vmlinux.o: warning: objtool: .entry.text+0x10e6: call to stackleak_erase() leaves .noinstr.text section vmlinux.o: warning: objtool: .entry.text+0x143: call to stackleak_erase() leaves .noinstr.text section vmlinux.o: warning: objtool: .entry.text+0x17d9: call to stackleak_erase() leaves .noinstr.text section Completed OK # rm -rf /kisskb/build/linus_x86-allmodconfig_x86_64-gcc11 # Build took: 0:33:01.544034