QEMU Virtual CPU support
Open
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 10.7k
- Forks
- 662
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 2
Description
I'm getting a crash in my KVM virtual machine:
# rr record sleep
rr: Saving execution to trace directory `/root/.local/share/rr/sleep-0'.
[FATAL /home/roc/rr/rr/src/PerfCounters.cc:136:get_cpu_microarch() errno: ENOTTY] CPU 0x660 unknown.
Aborted (core dumped)
# cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 6
model name : QEMU Virtual CPU version 2.1.0
stepping : 3
microcode : 0x1
cpu MHz : 2693.764
cache size : 4096 KB
physical id : 0
siblings : 1
core id : 0
cpu cores : 1
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 4
wp : yes
flags : fpu de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pse36 clflush mmx fxsr sse sse2 syscall nx lm rep_good nopl pni cx16 x2apic popcnt hypervisor lahf_lm abm
bogomips : 5387.52
clflush size : 64
cache_alignment : 64
address sizes : 40 bits physical, 48 bits virtual
power management:
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the failure with rr record sleep on the reported QEMU Virtual CPU, then inspect rr/src/PerfCounters.cc around get_cpu_microarch() at line 136. Compare the reported CPU identifier with the microarchitecture handling there. Done means recording no longer aborts for this CPU, with a regression test if the existing test structure supports it.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, linux
- Domain
- devtools, operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100