| Summary: | udev & logrotate crashes with trap invalid opcode after "emerge --update" | ||
|---|---|---|---|
| Product: | Gentoo Linux | Reporter: | Dan Johansson <Dan.Johansson> |
| Component: | [OLD] Core system | Assignee: | Gentoo Linux bug wranglers <bug-wranglers> |
| Status: | RESOLVED DUPLICATE | ||
| Severity: | normal | CC: | patrick |
| Priority: | Normal | ||
| Version: | unspecified | ||
| Hardware: | AMD64 | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Package list: | Runtime testing required: | --- | |
|
Description
Dan Johansson
2013-06-27 09:11:43 UTC
This looks like you're running within QEMU / KVM, and using -march=native in CFLAGS. Most likely there's some CPU misdetection happening, you should use more conservative CFLAGS for that setup Thanks for your support. That is correct, this is a system that is running under QEMU/KVM on an AMD Opteron "host"-system. Until now I have had no problems running with "CFLAGS="-march=native -O2 -pipe"" Do you have a suggestion on what CFLAGS to use instead for a setup like mine? And can I just change the CFLAGS and do an "emerge --emptytree"? -- Dan I think dropping -march=native would be a good start, then try to rebuild udev and its dependencies; since the trap is in the udev daemon, it should be in that package or one of its dependencies. From there on you can optionally try to identify which package is failing and also try to identify which specific flag that -march=native picks that produced the invalid opcode. Alternatively, you may be able to find this problem to be documented on the internet to spare out the work needed to figure this out. Thanks for your feedback, will try to rebuild udev and it's dependencies. -- Dan The problem seems to be with udev itself. Compiling udev with CFLAGS="-march=native -O2 -pipe" causes udev to crash with "traps: udevd[7785] trap invalid opcode ip:7f7760fb0b37 sp:7fff81250cd0 error:0 in udevd[7f7760fa4000+30000]". Compile it with CFLAGS="-O2 -pipe" and it starts just fine. Any suggestion on how to find out the offending flag? -- Dan (In reply to Dan Johansson from comment #5) > Any suggestion on how to find out the offending flag? `gcc -march=native -E -v - </dev/null 2>&1 | grep cc1` will show you what flags are used, you could try half of the flags to see if you can find the flag; alternatively, you could also try to use -march=native and attempt to negate some flags. Divide and conquer, trial and error; good luck! :) After some research I found this: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56068 I think that is the issue that I am having as well (QEMU/KVM is not returning the correct cpu-id). -- Dan *** This bug has been marked as a duplicate of bug 384149 *** |