# git gc Expanding reachable commits in commit graph: 17229 Expanding reachable commits in commit graph: 35186 Expanding reachable commits in commit graph: 53688 Expanding reachable commits in commit graph: 72371 Expanding reachable commits in commit graph: 91665 Expanding reachable commits in commit graph: 110710 Expanding reachable commits in commit graph: 128441 Expanding reachable commits in commit graph: 148032 Expanding reachable commits in commit graph: 167511 Expanding reachable commits in commit graph: 187064 Expanding reachable commits in commit graph: 206597 Expanding reachable commits in commit graph: 226143 Expanding reachable commits in commit graph: 245916 Expanding reachable commits in commit graph: 264253 Expanding reachable commits in commit graph: 284283 Expanding reachable commits in commit graph: 303941 Expanding reachable commits in commit graph: 324328 Expanding reachable commits in commit graph: 344051 Expanding reachable commits in commit graph: 364238 Expanding reachable commits in commit graph: 384044 Expanding reachable commits in commit graph: 403941 Expanding reachable commits in commit graph: 424221 Expanding reachable commits in commit graph: 444534 Expanding reachable commits in commit graph: 464367 Expanding reachable commits in commit graph: 484619 Expanding reachable commits in commit graph: 505029 Expanding reachable commits in commit graph: 521974 Expanding reachable commits in commit graph: 542578 Expanding reachable commits in commit graph: 564621 Expanding reachable commits in commit graph: 592635 Expanding reachable commits in commit graph: 623102 Expanding reachable commits in commit graph: 656802 Expanding reachable commits in commit graph: 692512 Expanding reachable commits in commit graph: 726844 Expanding reachable commits in commit graph: 757028 Expanding reachable commits in commit graph: 784966 Expanding reachable commits in commit graph: 812110 Expanding reachable commits in commit graph: 844828 Expanding reachable commits in commit graph: 876313 Expanding reachable commits in commit graph: 903654 Expanding reachable commits in commit graph: 935682 Expanding reachable commits in commit graph: 966252 Expanding reachable commits in commit graph: 993215 Expanding reachable commits in commit graph: 1025800 Expanding reachable commits in commit graph: 1053746 Expanding reachable commits in commit graph: 1076413 Expanding reachable commits in commit graph: 1110673 Expanding reachable commits in commit graph: 1152051 Expanding reachable commits in commit graph: 1185984 Expanding reachable commits in commit graph: 1200022, done. Finding extra edges in commit graph: 0% (2576/1200022) Finding extra edges in commit graph: 1% (12001/1200022) Finding extra edges in commit graph: 2% (24001/1200022) Finding extra edges in commit graph: 3% (36001/1200022) Finding extra edges in commit graph: 4% (48001/1200022) Finding extra edges in commit graph: 5% (60002/1200022) Finding extra edges in commit graph: 6% (72002/1200022) Finding extra edges in commit graph: 7% (84002/1200022) Finding extra edges in commit graph: 8% (96002/1200022) Finding extra edges in commit graph: 9% (108002/1200022) Finding extra edges in commit graph: 10% (120003/1200022) Finding extra edges in commit graph: 11% (132003/1200022) Finding extra edges in commit graph: 12% (144003/1200022) Finding extra edges in commit graph: 13% (156003/1200022) Finding extra edges in commit graph: 14% (168004/1200022) Finding extra edges in commit graph: 15% (180004/1200022) Finding extra edges in commit graph: 16% (192004/1200022) Finding extra edges in commit graph: 17% (204004/1200022) Finding extra edges in commit graph: 18% (216004/1200022) Finding extra edges in commit graph: 19% (228005/1200022) Finding extra edges in commit graph: 20% (240005/1200022) Finding extra edges in commit graph: 21% (252005/1200022) Finding extra edges in commit graph: 22% (264005/1200022) Finding extra edges in commit graph: 23% (276006/1200022) Finding extra edges in commit graph: 24% (288006/1200022) Finding extra edges in commit graph: 25% (300006/1200022) Finding extra edges in commit graph: 26% (312006/1200022) Finding extra edges in commit graph: 27% (324006/1200022) Finding extra edges in commit graph: 28% (336007/1200022) Finding extra edges in commit graph: 29% (348007/1200022) Finding extra edges in commit graph: 30% (360007/1200022) Finding extra edges in commit graph: 31% (372007/1200022) Finding extra edges in commit graph: 32% (384008/1200022) Finding extra edges in commit graph: 33% (396008/1200022) Finding extra edges in commit graph: 34% (408008/1200022) Finding extra edges in commit graph: 35% (420008/1200022) Finding extra edges in commit graph: 36% (432008/1200022) Finding extra edges in commit graph: 37% (444009/1200022) Finding extra edges in commit graph: 38% (456009/1200022) Finding extra edges in commit graph: 39% (468009/1200022) Finding extra edges in commit graph: 40% (480009/1200022) Finding extra edges in commit graph: 41% (492010/1200022) Finding extra edges in commit graph: 42% (504010/1200022) Finding extra edges in commit graph: 43% (516010/1200022) Finding extra edges in commit graph: 44% (528010/1200022) Finding extra edges in commit graph: 45% (540010/1200022) Finding extra edges in commit graph: 46% (552011/1200022) Finding extra edges in commit graph: 47% (564011/1200022) Finding extra edges in commit graph: 48% (576011/1200022) Finding extra edges in commit graph: 49% (588011/1200022) Finding extra edges in commit graph: 50% (600011/1200022) Finding extra edges in commit graph: 51% (612012/1200022) Finding extra edges in commit graph: 52% (624012/1200022) Finding extra edges in commit graph: 53% (636012/1200022) Finding extra edges in commit graph: 54% (648012/1200022) Finding extra edges in commit graph: 55% (660013/1200022) Finding extra edges in commit graph: 56% (672013/1200022) Finding extra edges in commit graph: 57% (684013/1200022) Finding extra edges in commit graph: 58% (696013/1200022) Finding extra edges in commit graph: 59% (708013/1200022) Finding extra edges in commit graph: 60% (720014/1200022) Finding extra edges in commit graph: 61% (732014/1200022) Finding extra edges in commit graph: 62% (744014/1200022) Finding extra edges in commit graph: 63% (756014/1200022) Finding extra edges in commit graph: 64% (768015/1200022) Finding extra edges in commit graph: 65% (780015/1200022) Finding extra edges in commit graph: 66% (792015/1200022) Finding extra edges in commit graph: 67% (804015/1200022) Finding extra edges in commit graph: 68% (816015/1200022) Finding extra edges in commit graph: 69% (828016/1200022) Finding extra edges in commit graph: 70% (840016/1200022) Finding extra edges in commit graph: 71% (852016/1200022) Finding extra edges in commit graph: 72% (864016/1200022) Finding extra edges in commit graph: 73% (876017/1200022) Finding extra edges in commit graph: 74% (888017/1200022) Finding extra edges in commit graph: 75% (900017/1200022) Finding extra edges in commit graph: 76% (912017/1200022) Finding extra edges in commit graph: 77% (924017/1200022) Finding extra edges in commit graph: 78% (936018/1200022) Finding extra edges in commit graph: 79% (948018/1200022) Finding extra edges in commit graph: 80% (960018/1200022) Finding extra edges in commit graph: 81% (972018/1200022) Finding extra edges in commit graph: 82% (984019/1200022) Finding extra edges in commit graph: 83% (996019/1200022) Finding extra edges in commit graph: 84% (1008019/1200022) Finding extra edges in commit graph: 85% (1020019/1200022) Finding extra edges in commit graph: 86% (1032019/1200022) Finding extra edges in commit graph: 87% (1044020/1200022) Finding extra edges in commit graph: 88% (1056020/1200022) Finding extra edges in commit graph: 89% (1068020/1200022) Finding extra edges in commit graph: 90% (1080020/1200022) Finding extra edges in commit graph: 91% (1092021/1200022) Finding extra edges in commit graph: 92% (1104021/1200022) Finding extra edges in commit graph: 93% (1116021/1200022) Finding extra edges in commit graph: 94% (1128021/1200022) Finding extra edges in commit graph: 95% (1140021/1200022) Finding extra edges in commit graph: 96% (1152022/1200022) Finding extra edges in commit graph: 97% (1164022/1200022) Finding extra edges in commit graph: 98% (1176022/1200022) Finding extra edges in commit graph: 99% (1188022/1200022) Finding extra edges in commit graph: 100% (1200022/1200022) Finding extra edges in commit graph: 100% (1200022/1200022), done. Writing out commit graph in 4 passes: 50% (2425667/4800088) Writing out commit graph in 4 passes: 51% (2448045/4800088) Writing out commit graph in 4 passes: 52% (2496046/4800088) Writing out commit graph in 4 passes: 53% (2544047/4800088) Writing out commit graph in 4 passes: 54% (2592048/4800088) Writing out commit graph in 4 passes: 54% (2607603/4800088) Writing out commit graph in 4 passes: 55% (2640049/4800088) Writing out commit graph in 4 passes: 56% (2688050/4800088) Writing out commit graph in 4 passes: 57% (2736051/4800088) Writing out commit graph in 4 passes: 58% (2784052/4800088) Writing out commit graph in 4 passes: 58% (2808795/4800088) Writing out commit graph in 4 passes: 59% (2832052/4800088) Writing out commit graph in 4 passes: 60% (2880053/4800088) Writing out commit graph in 4 passes: 61% (2928054/4800088) Writing out commit graph in 4 passes: 62% (2976055/4800088) Writing out commit graph in 4 passes: 62% (2987260/4800088) Writing out commit graph in 4 passes: 63% (3024056/4800088) Writing out commit graph in 4 passes: 64% (3072057/4800088) Writing out commit graph in 4 passes: 65% (3120058/4800088) Writing out commit graph in 4 passes: 65% (3159221/4800088) Writing out commit graph in 4 passes: 66% (3168059/4800088) Writing out commit graph in 4 passes: 67% (3216059/4800088) Writing out commit graph in 4 passes: 68% (3264060/4800088) Writing out commit graph in 4 passes: 69% (3312061/4800088) Writing out commit graph in 4 passes: 69% (3321218/4800088) Writing out commit graph in 4 passes: 70% (3360062/4800088) Writing out commit graph in 4 passes: 71% (3408063/4800088) Writing out commit graph in 4 passes: 72% (3456064/4800088) Writing out commit graph in 4 passes: 72% (3498778/4800088) Writing out commit graph in 4 passes: 73% (3504065/4800088) Writing out commit graph in 4 passes: 74% (3552066/4800088) Writing out commit graph in 4 passes: 75% (3600066/4800088) Writing out commit graph in 4 passes: 76% (3648067/4800088) Writing out commit graph in 4 passes: 77% (3696068/4800088) Writing out commit graph in 4 passes: 78% (3744069/4800088) Writing out commit graph in 4 passes: 79% (3792070/4800088) Writing out commit graph in 4 passes: 80% (3840071/4800088) Writing out commit graph in 4 passes: 81% (3888072/4800088) Writing out commit graph in 4 passes: 82% (3936073/4800088) Writing out commit graph in 4 passes: 83% (3984074/4800088) Writing out commit graph in 4 passes: 84% (4032074/4800088) Writing out commit graph in 4 passes: 85% (4080075/4800088) Writing out commit graph in 4 passes: 86% (4128076/4800088) Writing out commit graph in 4 passes: 87% (4176077/4800088) Writing out commit graph in 4 passes: 88% (4224078/4800088) Writing out commit graph in 4 passes: 89% (4272079/4800088) Writing out commit graph in 4 passes: 90% (4320080/4800088) Writing out commit graph in 4 passes: 91% (4368081/4800088) Writing out commit graph in 4 passes: 92% (4416081/4800088) Writing out commit graph in 4 passes: 93% (4464082/4800088) Writing out commit graph in 4 passes: 94% (4512083/4800088) Writing out commit graph in 4 passes: 94% (4523149/4800088) Writing out commit graph in 4 passes: 95% (4560084/4800088) Writing out commit graph in 4 passes: 96% (4608085/4800088) Writing out commit graph in 4 passes: 97% (4656086/4800088) Writing out commit graph in 4 passes: 98% (4704087/4800088) Writing out commit graph in 4 passes: 99% (4752088/4800088) Writing out commit graph in 4 passes: 100% (4800088/4800088) Writing out commit graph in 4 passes: 100% (4800088/4800088), done. # git rev-parse -q --verify b6e6cc1f78c772e952495b7416c9ac9029f9390c^{commit} b6e6cc1f78c772e952495b7416c9ac9029f9390c already have revision, skipping fetch # git checkout -q -f -B kisskb b6e6cc1f78c772e952495b7416c9ac9029f9390c # git clean -qxdf # < git log -1 # commit b6e6cc1f78c772e952495b7416c9ac9029f9390c # Merge: be522ac7cdcc 535d0ae39185 # Author: Linus Torvalds # Date: Fri Jul 14 20:19:25 2023 -0700 # # Merge tag 'x86_urgent_for_6.5_rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip # # Pull x86 CFI fixes from Peter Zijlstra: # "Fix kCFI/FineIBT weaknesses # # The primary bug Alyssa noticed was that with FineIBT enabled function # prologues have a spurious ENDBR instruction: # # __cfi_foo: # endbr64 # subl $hash, %r10d # jz 1f # ud2 # nop # 1: # foo: # endbr64 <--- *sadface* # # This means that any indirect call that fails to target the __cfi # symbol and instead targets (the regular old) foo+0, will succeed due # to that second ENDBR. # # Fixing this led to the discovery of a single indirect call that was # still doing this: ret_from_fork(). Since that's an assembly stub the # compiler would not generate the proper kCFI indirect call magic and it # would not get patched. # # Brian came up with the most comprehensive fix -- convert the thing to # C with only a very thin asm wrapper. This ensures the kernel thread # boostrap is a proper kCFI call. # # While discussing all this, Kees noted that kCFI hashes could/should be # poisoned to seal all functions whose address is never taken, further # limiting the valid kCFI targets -- much like we already do for IBT. # # So what was a 'simple' observation and fix cascaded into a bunch of # inter-related CFI infrastructure fixes" # # * tag 'x86_urgent_for_6.5_rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: # x86/cfi: Only define poison_cfi() if CONFIG_X86_KERNEL_IBT=y # x86/fineibt: Poison ENDBR at +0 # x86: Rewrite ret_from_fork() in C # x86/32: Remove schedule_tail_wrapper() # x86/cfi: Extend ENDBR sealing to kCFI # x86/alternative: Rename apply_ibt_endbr() # x86/cfi: Extend {JMP,CAKK}_NOSPEC comment # < /opt/cross/kisskb/korg/gcc-11.3.0-nolibc/aarch64-linux/bin/aarch64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-11.3.0-nolibc/aarch64-linux/bin/aarch64-linux-ld --version # < git log --format=%s --max-count=1 b6e6cc1f78c772e952495b7416c9ac9029f9390c # make -s -j 160 ARCH=arm64 O=/kisskb/build/linus_allmodconfig_arm64-gcc11 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-11.3.0-nolibc/aarch64-linux/bin/aarch64-linux- allmodconfig # Added to kconfig CONFIG_GCC_PLUGINS=n # Added to kconfig # < make -s -j 160 ARCH=arm64 O=/kisskb/build/linus_allmodconfig_arm64-gcc11 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-11.3.0-nolibc/aarch64-linux/bin/aarch64-linux- help # make -s -j 160 ARCH=arm64 O=/kisskb/build/linus_allmodconfig_arm64-gcc11 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-11.3.0-nolibc/aarch64-linux/bin/aarch64-linux- olddefconfig # make -s -j 160 ARCH=arm64 O=/kisskb/build/linus_allmodconfig_arm64-gcc11 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-11.3.0-nolibc/aarch64-linux/bin/aarch64-linux- Completed OK # rm -rf /kisskb/build/linus_allmodconfig_arm64-gcc11 # Build took: 0:32:19.923620