Description of problem: While compiling suricata on rawhide i686, rustc is segfaulting. This is the relevant build log (very bottom): https://kojipkgs.fedoraproject.org//work/tasks/7972/81987972/build.log error: could not compile `suricata` Caused by: process didn't exit successfully: `rustc <snip> (signal: 11, SIGSEGV: invalid memory reference) Version-Release number of selected component (if applicable): rust-1.58.1-1.fc36.i686 How reproducible: always Steps to Reproduce: 1. Build suricata for i686 Additional info: No idea if this is related to gcc12 mass rebuild issues.
Here's the backtrace from the log: /usr/lib/librustc_driver-c64b9d71ac7fefd1.so(+0x4d2d23)[0xf3c4ad23] linux-gate.so.1(__kernel_sigreturn+0x0)[0xf7f4c570] /usr/lib/libLLVM-13.so(+0xf564fe)[0xee31a4fe] /usr/lib/libLLVM-13.so(+0xf586ae)[0xee31c6ae] /usr/lib/libLLVM-13.so(+0x104900f)[0xee40d00f] /usr/lib/libLLVM-13.so(_ZN4llvm18ScheduleDAGSDNodes12EmitScheduleERNS_26MachineInstrBundleIteratorINS_12MachineInstrELb0EEE+0x382)[0xee40c1a2] /usr/lib/libLLVM-13.so(_ZN4llvm16SelectionDAGISel17CodeGenAndEmitDAGEv+0xa2a)[0xee4e4fca] /usr/lib/libLLVM-13.so(_ZN4llvm16SelectionDAGISel16SelectBasicBlockENS_14ilist_iteratorINS_12ilist_detail12node_optionsINS_11InstructionELb0ELb0EvEELb0ELb1EEES6_Rb+0x303)[0xee4e4543] /usr/lib/libLLVM-13.so(_ZN4llvm16SelectionDAGISel20SelectAllBasicBlocksERKNS_8FunctionE+0x2204)[0xee4e3d14] /usr/lib/libLLVM-13.so(_ZN4llvm16SelectionDAGISel20runOnMachineFunctionERNS_15MachineFunctionE+0xc22)[0xee4e0932] /usr/lib/libLLVM-13.so(+0x37b98e1)[0xf0b7d8e1] /usr/lib/libLLVM-13.so(_ZN4llvm19MachineFunctionPass13runOnFunctionERNS_8FunctionE+0x14b)[0xedf8fd0b] /usr/lib/libLLVM-13.so(_ZN4llvm13FPPassManager13runOnFunctionERNS_8FunctionE+0x598)[0xedcf27d8] /usr/lib/libLLVM-13.so(_ZN4llvm13FPPassManager11runOnModuleERNS_6ModuleE+0x48)[0xedcfa148] /usr/lib/libLLVM-13.so(_ZN4llvm6legacy15PassManagerImpl3runERNS_6ModuleE+0x43b)[0xedcf2fdb] /usr/lib/libLLVM-13.so(_ZN4llvm6legacy11PassManager3runERNS_6ModuleE+0x2b)[0xedcfa4fb] /usr/lib/librustc_driver-c64b9d71ac7fefd1.so(+0x56f02d)[0xf3ce702d] /usr/lib/librustc_driver-c64b9d71ac7fefd1.so(+0x8713ea)[0xf3fe93ea] /usr/lib/librustc_driver-c64b9d71ac7fefd1.so(+0x87703e)[0xf3fef03e] /usr/lib/librustc_driver-c64b9d71ac7fefd1.so(+0x88f267)[0xf4007267] /usr/lib/librustc_driver-c64b9d71ac7fefd1.so(+0x8887f4)[0xf40007f4] /usr/lib/librustc_driver-c64b9d71ac7fefd1.so(+0x7a5923)[0xf3f1d923] /usr/lib/librustc_driver-c64b9d71ac7fefd1.so(+0x81cc47)[0xf3f94c47] /usr/lib/libstd-03dbd655d09fff27.so(rust_metadata_std_cae909163af4ca9f+0x9d67b)[0xf368a67b] /usr/lib/libc.so.6(+0x8e7cd)[0xf348e7cd] /usr/lib/libc.so.6(+0x116d4c)[0xf3516d4c] I can reproduce this on F35 (gcc-11, llvm-13, rust-1.58.1): /usr/lib/librustc_driver-aa60110f3d39f30d.so(+0x4d2053)[0xf3c75053] linux-gate.so.1(__kernel_sigreturn+0x0)[0xf7f73570] /usr/lib/libLLVM-13.so(+0xe45336)[0xedaef336] /usr/lib/libLLVM-13.so(+0xe47f19)[0xedaf1f19] /usr/lib/libLLVM-13.so(+0xf06b0d)[0xedbb0b0d] /usr/lib/libLLVM-13.so(_ZN4llvm18ScheduleDAGSDNodes12EmitScheduleERNS_26MachineInstrBundleIteratorINS_12MachineInstrELb0EEE+0x4ca)[0xedbb3c2a] /usr/lib/libLLVM-13.so(_ZN4llvm16SelectionDAGISel17CodeGenAndEmitDAGEv+0x406)[0xedc67446] /usr/lib/libLLVM-13.so(_ZN4llvm16SelectionDAGISel20SelectAllBasicBlocksERKNS_8FunctionE+0x10a6)[0xedc6a8d6] /usr/lib/libLLVM-13.so(_ZN4llvm16SelectionDAGISel20runOnMachineFunctionERNS_15MachineFunctionE+0x5a4)[0xedc6ca54] /usr/lib/libLLVM-13.so(+0x33e91f2)[0xf00931f2] /usr/lib/libLLVM-13.so(+0xb03f2a)[0xed7adf2a] /usr/lib/libLLVM-13.so(_ZN4llvm13FPPassManager13runOnFunctionERNS_8FunctionE+0x360)[0xed54d130] /usr/lib/libLLVM-13.so(_ZN4llvm13FPPassManager11runOnModuleERNS_6ModuleE+0x35)[0xed54d375] /usr/lib/libLLVM-13.so(_ZN4llvm6legacy15PassManagerImpl3runERNS_6ModuleE+0x436)[0xed54da76] /usr/lib/librustc_driver-aa60110f3d39f30d.so(+0x56f47d)[0xf3d1247d] /usr/lib/librustc_driver-aa60110f3d39f30d.so(+0x87437a)[0xf401737a] /usr/lib/librustc_driver-aa60110f3d39f30d.so(+0x879fce)[0xf401cfce] /usr/lib/librustc_driver-aa60110f3d39f30d.so(+0x892237)[0xf4035237] /usr/lib/librustc_driver-aa60110f3d39f30d.so(+0x88b7b4)[0xf402e7b4] /usr/lib/librustc_driver-aa60110f3d39f30d.so(+0x7a8553)[0xf3f4b553] /usr/lib/librustc_driver-aa60110f3d39f30d.so(+0x81fcd7)[0xf3fc2cd7] /usr/lib/libstd-0212acdb22c5c4e7.so(rust_metadata_std_2c712ad581218e99+0x9d67b)[0xf36b567b] /usr/lib/libc.so.6(+0x8bbc1)[0xf34afbc1] /usr/lib/libc.so.6(+0x111f3c)[0xf3535f3c] And also on F34 (gcc-11, llvm-12, rust-1.58.1): /usr/lib/librustc_driver-d8b8ba19cd83dffa.so(+0x4c8703)[0xf3c32703] linux-gate.so.1(__kernel_sigreturn+0x0)[0xf7f30570] /usr/lib/libLLVM-12.so(+0xe7fe26)[0xee0c2e26] /usr/lib/libLLVM-12.so(+0xe839f9)[0xee0c69f9] /usr/lib/libLLVM-12.so(+0xf41e0d)[0xee184e0d] /usr/lib/libLLVM-12.so(_ZN4llvm18ScheduleDAGSDNodes12EmitScheduleERNS_26MachineInstrBundleIteratorINS_12MachineInstrELb0EEE+0x4de)[0xee187f9e] /usr/lib/libLLVM-12.so(_ZN4llvm16SelectionDAGISel17CodeGenAndEmitDAGEv+0x3cf)[0xee235b8f] /usr/lib/libLLVM-12.so(_ZN4llvm16SelectionDAGISel16SelectBasicBlockENS_14ilist_iteratorINS_12ilist_detail12node_optionsINS_11InstructionELb0ELb0EvEELb0ELb1EEES6_Rb+0x17f)[0xee235f5f] /usr/lib/libLLVM-12.so(_ZN4llvm16SelectionDAGISel20SelectAllBasicBlocksERKNS_8FunctionE+0x107d)[0xee238e5d] /usr/lib/libLLVM-12.so(_ZN4llvm16SelectionDAGISel20runOnMachineFunctionERNS_15MachineFunctionE+0x54c)[0xee23af0c] /usr/lib/libLLVM-12.so(+0x31860a2)[0xf03c90a2] /usr/lib/libLLVM-12.so(+0xb6c53a)[0xeddaf53a] /usr/lib/libLLVM-12.so(_ZN4llvm13FPPassManager13runOnFunctionERNS_8FunctionE+0x31e)[0xedb784fe] /usr/lib/libLLVM-12.so(_ZN4llvm13FPPassManager11runOnModuleERNS_6ModuleE+0x47)[0xedb789f7] /usr/lib/libLLVM-12.so(_ZN4llvm6legacy15PassManagerImpl3runERNS_6ModuleE+0x3ce)[0xedb77e8e] /usr/lib/libLLVM-12.so(_ZN4llvm6legacy11PassManager3runERNS_6ModuleE+0x23)[0xedb781d3] /usr/lib/librustc_driver-d8b8ba19cd83dffa.so(+0x565bdd)[0xf3ccfbdd] /usr/lib/librustc_driver-d8b8ba19cd83dffa.so(+0x867ada)[0xf3fd1ada] /usr/lib/librustc_driver-d8b8ba19cd83dffa.so(+0x86d59e)[0xf3fd759e] /usr/lib/librustc_driver-d8b8ba19cd83dffa.so(+0x8855d7)[0xf3fef5d7] /usr/lib/librustc_driver-d8b8ba19cd83dffa.so(+0x87ec4f)[0xf3fe8c4f] /usr/lib/librustc_driver-d8b8ba19cd83dffa.so(+0x79e673)[0xf3f08673] /usr/lib/librustc_driver-d8b8ba19cd83dffa.so(+0x8123e7)[0xf3f7c3e7] /usr/lib/libstd-5aca0bcc88cc9a9a.so(rust_metadata_std_34b3c830f6639626+0x9dd8b)[0xf367bd8b] /usr/lib/libpthread.so.0(+0x83d8)[0xecfe83d8] /usr/lib/libc.so.6(clone+0x6a)[0xf3515e2a] They're all within llvm::ScheduleDAGSDNodes::EmitSchedule. I'll see if I can extract LLVM IR and reproduce it with llc directly.
This bug appears to have been reported against 'rawhide' during the Fedora 36 development cycle. Changing version to 36.
I can't reproduce this anymore. Rawhide: https://koji.fedoraproject.org/koji/taskinfo?taskID=91412654 * gcc-12.2.1-1.fc38.i686 * llvm-libs-14.0.5-3.fc37.i686 * rust-1.63.0-1.fc38.i686 F36: https://koji.fedoraproject.org/koji/taskinfo?taskID=91412667 * gcc-12.2.1-1.fc36.i686 * llvm-libs-14.0.5-1.fc36.i686 * rust-1.63.0-1.fc36.i686 F35: https://koji.fedoraproject.org/koji/taskinfo?taskID=91412733 * gcc-11.3.1-2.fc35.i686 * llvm-libs-13.0.1-1.fc35.i686 * rust-1.63.0-1.fc35.i686