/root/src/xen/xen/include/asm/msr.h
Line | Count | Source (jump to first uncovered line) |
1 | | #ifndef __ASM_MSR_H |
2 | | #define __ASM_MSR_H |
3 | | |
4 | | #include "msr-index.h" |
5 | | |
6 | | #ifndef __ASSEMBLY__ |
7 | | |
8 | | #include <xen/types.h> |
9 | | #include <xen/percpu.h> |
10 | | #include <xen/errno.h> |
11 | | #include <asm/asm_defns.h> |
12 | | #include <asm/cpufeature.h> |
13 | | |
14 | | #define rdmsr(msr,val1,val2) \ |
15 | 95 | __asm__ __volatile__("rdmsr" \ |
16 | 95 | : "=a" (val1), "=d" (val2) \ |
17 | 95 | : "c" (msr)) |
18 | | |
19 | 39.8k | #define rdmsrl(msr,val) do { unsigned long a__,b__; \ |
20 | 39.8k | __asm__ __volatile__("rdmsr" \ |
21 | 39.8k | : "=a" (a__), "=d" (b__) \ |
22 | 39.8k | : "c" (msr)); \ |
23 | 39.8k | val = a__ | ((u64)b__<<32); \ |
24 | 39.8k | } while(0) |
25 | | |
26 | | #define wrmsr(msr,val1,val2) \ |
27 | 6.28M | __asm__ __volatile__("wrmsr" \ |
28 | 6.28M | : /* no outputs */ \ |
29 | 6.28M | : "c" (msr), "a" (val1), "d" (val2)) |
30 | | |
31 | | static inline void wrmsrl(unsigned int msr, __u64 val) |
32 | 6.28M | { |
33 | 6.28M | __u32 lo, hi; |
34 | 6.28M | lo = (__u32)val; |
35 | 6.28M | hi = (__u32)(val >> 32); |
36 | 6.28M | wrmsr(msr, lo, hi); |
37 | 6.28M | } Unexecuted instantiation: mmconfig-shared.c:wrmsrl Unexecuted instantiation: cpupool.c:wrmsrl Unexecuted instantiation: domctl.c:wrmsrl Unexecuted instantiation: domain.c:wrmsrl Unexecuted instantiation: event_2l.c:wrmsrl Unexecuted instantiation: event_channel.c:wrmsrl Unexecuted instantiation: event_fifo.c:wrmsrl Unexecuted instantiation: grant_table.c:wrmsrl Unexecuted instantiation: guestcopy.c:wrmsrl Line | Count | Source | 32 | 1 | { | 33 | 1 | __u32 lo, hi; | 34 | 1 | lo = (__u32)val; | 35 | 1 | hi = (__u32)(val >> 32); | 36 | 1 | wrmsr(msr, lo, hi); | 37 | 1 | } |
Unexecuted instantiation: kernel.c:wrmsrl Unexecuted instantiation: keyhandler.c:wrmsrl Unexecuted instantiation: kexec.c:wrmsrl Unexecuted instantiation: kimage.c:wrmsrl Unexecuted instantiation: mem_access.c:wrmsrl Unexecuted instantiation: memory.c:wrmsrl Unexecuted instantiation: monitor.c:wrmsrl Unexecuted instantiation: multicall.c:wrmsrl Unexecuted instantiation: page_alloc.c:wrmsrl Unexecuted instantiation: preempt.c:wrmsrl Unexecuted instantiation: random.c:wrmsrl Unexecuted instantiation: rangeset.c:wrmsrl Unexecuted instantiation: rcupdate.c:wrmsrl Unexecuted instantiation: rwlock.c:wrmsrl Unexecuted instantiation: sched_arinc653.c:wrmsrl Unexecuted instantiation: sched_credit.c:wrmsrl Unexecuted instantiation: sched_credit2.c:wrmsrl Unexecuted instantiation: sched_rt.c:wrmsrl Unexecuted instantiation: sched_null.c:wrmsrl Unexecuted instantiation: schedule.c:wrmsrl Unexecuted instantiation: shutdown.c:wrmsrl Unexecuted instantiation: softirq.c:wrmsrl Unexecuted instantiation: spinlock.c:wrmsrl Unexecuted instantiation: stop_machine.c:wrmsrl Unexecuted instantiation: symbols.c:wrmsrl Unexecuted instantiation: sysctl.c:wrmsrl Unexecuted instantiation: tasklet.c:wrmsrl Line | Count | Source | 32 | 351 | { | 33 | 351 | __u32 lo, hi; | 34 | 351 | lo = (__u32)val; | 35 | 351 | hi = (__u32)(val >> 32); | 36 | 351 | wrmsr(msr, lo, hi); | 37 | 351 | } |
Unexecuted instantiation: timer.c:wrmsrl Unexecuted instantiation: trace.c:wrmsrl Unexecuted instantiation: vm_event.c:wrmsrl Unexecuted instantiation: vsprintf.c:wrmsrl Unexecuted instantiation: wait.c:wrmsrl Unexecuted instantiation: xenoprof.c:wrmsrl Unexecuted instantiation: xmalloc_tlsf.c:wrmsrl Unexecuted instantiation: tmem.c:wrmsrl Unexecuted instantiation: tmem_xen.c:wrmsrl Unexecuted instantiation: tmem_control.c:wrmsrl Unexecuted instantiation: llvm.c:wrmsrl Unexecuted instantiation: libelf-loader.c:wrmsrl Unexecuted instantiation: console.c:wrmsrl Unexecuted instantiation: ns16550.c:wrmsrl Unexecuted instantiation: ehci-dbgp.c:wrmsrl Unexecuted instantiation: cpufreq.c:wrmsrl Unexecuted instantiation: cpufreq_ondemand.c:wrmsrl Unexecuted instantiation: cpufreq_misc_governors.c:wrmsrl Unexecuted instantiation: utility.c:wrmsrl Unexecuted instantiation: pci.c:wrmsrl Unexecuted instantiation: vpci.c:wrmsrl Unexecuted instantiation: header.c:wrmsrl Line | Count | Source | 32 | 3.84k | { | 33 | 3.84k | __u32 lo, hi; | 34 | 3.84k | lo = (__u32)val; | 35 | 3.84k | hi = (__u32)(val >> 32); | 36 | 3.84k | wrmsr(msr, lo, hi); | 37 | 3.84k | } |
Unexecuted instantiation: msix.c:wrmsrl Unexecuted instantiation: iommu.c:wrmsrl Unexecuted instantiation: io.c:wrmsrl Unexecuted instantiation: dmar.c:wrmsrl Unexecuted instantiation: utils.c:wrmsrl Unexecuted instantiation: qinval.c:wrmsrl Unexecuted instantiation: intremap.c:wrmsrl Unexecuted instantiation: quirks.c:wrmsrl Unexecuted instantiation: vtd.c:wrmsrl Unexecuted instantiation: ats.c:wrmsrl Unexecuted instantiation: iommu_init.c:wrmsrl Unexecuted instantiation: iommu_map.c:wrmsrl Unexecuted instantiation: pci_amd_iommu.c:wrmsrl Unexecuted instantiation: iommu_intr.c:wrmsrl Unexecuted instantiation: iommu_cmd.c:wrmsrl Unexecuted instantiation: iommu_guest.c:wrmsrl Unexecuted instantiation: pmstat.c:wrmsrl Unexecuted instantiation: reboot.c:wrmsrl Unexecuted instantiation: erst.c:wrmsrl Unexecuted instantiation: apei-io.c:wrmsrl Unexecuted instantiation: vga.c:wrmsrl Unexecuted instantiation: xsm_core.c:wrmsrl Line | Count | Source | 32 | 3.73M | { | 33 | 3.73M | __u32 lo, hi; | 34 | 3.73M | lo = (__u32)val; | 35 | 3.73M | hi = (__u32)(val >> 32); | 36 | 3.73M | wrmsr(msr, lo, hi); | 37 | 3.73M | } |
Unexecuted instantiation: cpuid.c:wrmsrl Unexecuted instantiation: compat.c:wrmsrl Unexecuted instantiation: crash.c:wrmsrl Unexecuted instantiation: debug.c:wrmsrl Unexecuted instantiation: delay.c:wrmsrl Unexecuted instantiation: domain_page.c:wrmsrl Unexecuted instantiation: e820.c:wrmsrl Unexecuted instantiation: flushtlb.c:wrmsrl Unexecuted instantiation: hypercall.c:wrmsrl Unexecuted instantiation: i387.c:wrmsrl Unexecuted instantiation: i8259.c:wrmsrl Line | Count | Source | 32 | 9.36k | { | 33 | 9.36k | __u32 lo, hi; | 34 | 9.36k | lo = (__u32)val; | 35 | 9.36k | hi = (__u32)(val >> 32); | 36 | 9.36k | wrmsr(msr, lo, hi); | 37 | 9.36k | } |
Unexecuted instantiation: msr.c:wrmsrl Unexecuted instantiation: ioport_emulate.c:wrmsrl Unexecuted instantiation: machine_kexec.c:wrmsrl Unexecuted instantiation: microcode_amd.c:wrmsrl Unexecuted instantiation: microcode_intel.c:wrmsrl Unexecuted instantiation: microcode.c:wrmsrl Unexecuted instantiation: mm.c:wrmsrl Unexecuted instantiation: mpparse.c:wrmsrl Unexecuted instantiation: nmi.c:wrmsrl Unexecuted instantiation: numa.c:wrmsrl Unexecuted instantiation: physdev.c:wrmsrl Unexecuted instantiation: platform_hypercall.c:wrmsrl Unexecuted instantiation: psr.c:wrmsrl Unexecuted instantiation: setup.c:wrmsrl Line | Count | Source | 32 | 1.97M | { | 33 | 1.97M | __u32 lo, hi; | 34 | 1.97M | lo = (__u32)val; | 35 | 1.97M | hi = (__u32)(val >> 32); | 36 | 1.97M | wrmsr(msr, lo, hi); | 37 | 1.97M | } |
Line | Count | Source | 32 | 88 | { | 33 | 88 | __u32 lo, hi; | 34 | 88 | lo = (__u32)val; | 35 | 88 | hi = (__u32)(val >> 32); | 36 | 88 | wrmsr(msr, lo, hi); | 37 | 88 | } |
Line | Count | Source | 32 | 138 | { | 33 | 138 | __u32 lo, hi; | 34 | 138 | lo = (__u32)val; | 35 | 138 | hi = (__u32)(val >> 32); | 36 | 138 | wrmsr(msr, lo, hi); | 37 | 138 | } |
Unexecuted instantiation: usercopy.c:wrmsrl Unexecuted instantiation: x86_emulate.c:wrmsrl Unexecuted instantiation: tboot.c:wrmsrl Unexecuted instantiation: hpet.c:wrmsrl Unexecuted instantiation: xstate.c:wrmsrl Unexecuted instantiation: lib.c:wrmsrl Unexecuted instantiation: power.c:wrmsrl Unexecuted instantiation: suspend.c:wrmsrl Unexecuted instantiation: cpu_idle.c:wrmsrl Unexecuted instantiation: cpuidle_menu.c:wrmsrl Unexecuted instantiation: powernow.c:wrmsrl Unexecuted instantiation: amd.c:wrmsrl Unexecuted instantiation: centaur.c:wrmsrl Line | Count | Source | 32 | 12 | { | 33 | 12 | __u32 lo, hi; | 34 | 12 | lo = (__u32)val; | 35 | 12 | hi = (__u32)(val >> 32); | 36 | 12 | wrmsr(msr, lo, hi); | 37 | 12 | } |
Unexecuted instantiation: intel.c:wrmsrl Line | Count | Source | 32 | 12 | { | 33 | 12 | __u32 lo, hi; | 34 | 12 | lo = (__u32)val; | 35 | 12 | hi = (__u32)(val >> 32); | 36 | 12 | wrmsr(msr, lo, hi); | 37 | 12 | } |
Unexecuted instantiation: vpmu.c:wrmsrl Unexecuted instantiation: vpmu_amd.c:wrmsrl Unexecuted instantiation: vpmu_intel.c:wrmsrl Unexecuted instantiation: amd_nonfatal.c:wrmsrl Unexecuted instantiation: mce_amd.c:wrmsrl Unexecuted instantiation: mcaction.c:wrmsrl Unexecuted instantiation: barrier.c:wrmsrl Unexecuted instantiation: mctelem.c:wrmsrl Unexecuted instantiation: mce.c:wrmsrl Unexecuted instantiation: mce-apei.c:wrmsrl Line | Count | Source | 32 | 422 | { | 33 | 422 | __u32 lo, hi; | 34 | 422 | lo = (__u32)val; | 35 | 422 | hi = (__u32)(val >> 32); | 36 | 422 | wrmsr(msr, lo, hi); | 37 | 422 | } |
Unexecuted instantiation: non-fatal.c:wrmsrl Unexecuted instantiation: util.c:wrmsrl Unexecuted instantiation: vmce.c:wrmsrl Unexecuted instantiation: generic.c:wrmsrl Unexecuted instantiation: main.c:wrmsrl Unexecuted instantiation: bigsmp.c:wrmsrl Line | Count | Source | 32 | 254k | { | 33 | 254k | __u32 lo, hi; | 34 | 254k | lo = (__u32)val; | 35 | 254k | hi = (__u32)(val >> 32); | 36 | 254k | wrmsr(msr, lo, hi); | 37 | 254k | } |
Unexecuted instantiation: default.c:wrmsrl Unexecuted instantiation: delivery.c:wrmsrl Unexecuted instantiation: probe.c:wrmsrl Unexecuted instantiation: asid.c:wrmsrl Unexecuted instantiation: dm.c:wrmsrl Unexecuted instantiation: emulate.c:wrmsrl Unexecuted instantiation: hvm.c:wrmsrl Unexecuted instantiation: i8254.c:wrmsrl Unexecuted instantiation: intercept.c:wrmsrl Unexecuted instantiation: ioreq.c:wrmsrl Unexecuted instantiation: mtrr.c:wrmsrl Unexecuted instantiation: nestedhvm.c:wrmsrl Unexecuted instantiation: pmtimer.c:wrmsrl Unexecuted instantiation: rtc.c:wrmsrl Unexecuted instantiation: save.c:wrmsrl Unexecuted instantiation: stdvga.c:wrmsrl Unexecuted instantiation: vioapic.c:wrmsrl Unexecuted instantiation: viridian.c:wrmsrl Unexecuted instantiation: vlapic.c:wrmsrl Unexecuted instantiation: vmsi.c:wrmsrl Unexecuted instantiation: vpic.c:wrmsrl Unexecuted instantiation: vpt.c:wrmsrl Unexecuted instantiation: intr.c:wrmsrl Unexecuted instantiation: nestedsvm.c:wrmsrl Unexecuted instantiation: svm.c:wrmsrl Unexecuted instantiation: svmdebug.c:wrmsrl Unexecuted instantiation: vmcb.c:wrmsrl Unexecuted instantiation: realmode.c:wrmsrl Unexecuted instantiation: vmcs.c:wrmsrl Line | Count | Source | 32 | 296k | { | 33 | 296k | __u32 lo, hi; | 34 | 296k | lo = (__u32)val; | 35 | 296k | hi = (__u32)(val >> 32); | 36 | 296k | wrmsr(msr, lo, hi); | 37 | 296k | } |
Unexecuted instantiation: vvmx.c:wrmsrl Unexecuted instantiation: paging.c:wrmsrl Unexecuted instantiation: p2m.c:wrmsrl Unexecuted instantiation: p2m-pt.c:wrmsrl Unexecuted instantiation: p2m-ept.c:wrmsrl Unexecuted instantiation: p2m-pod.c:wrmsrl Unexecuted instantiation: altp2m.c:wrmsrl Unexecuted instantiation: guest_walk.c:wrmsrl Unexecuted instantiation: mem_paging.c:wrmsrl Unexecuted instantiation: mem_sharing.c:wrmsrl Unexecuted instantiation: multi.c:wrmsrl Unexecuted instantiation: hap.c:wrmsrl Unexecuted instantiation: nested_hap.c:wrmsrl Unexecuted instantiation: nested_ept.c:wrmsrl Unexecuted instantiation: nmi_int.c:wrmsrl Unexecuted instantiation: op_model_p4.c:wrmsrl Unexecuted instantiation: op_model_ppro.c:wrmsrl Unexecuted instantiation: op_model_athlon.c:wrmsrl Unexecuted instantiation: backtrace.c:wrmsrl Unexecuted instantiation: callback.c:wrmsrl Unexecuted instantiation: descriptor-tables.c:wrmsrl Unexecuted instantiation: emul-gate-op.c:wrmsrl Unexecuted instantiation: emul-inv-op.c:wrmsrl Unexecuted instantiation: emul-priv-op.c:wrmsrl Unexecuted instantiation: iret.c:wrmsrl Unexecuted instantiation: misc-hypercalls.c:wrmsrl Unexecuted instantiation: ro-page-fault.c:wrmsrl Unexecuted instantiation: acpi_mmcfg.c:wrmsrl Unexecuted instantiation: mmconf-fam10h.c:wrmsrl Unexecuted instantiation: mmconfig_64.c:wrmsrl Unexecuted instantiation: cpu.c:wrmsrl |
38 | | |
39 | | /* rdmsr with exception handling */ |
40 | 2 | #define rdmsr_safe(msr,val) ({\ |
41 | 2 | int _rc; \ |
42 | 2 | uint32_t lo, hi; \ |
43 | 2 | __asm__ __volatile__( \ |
44 | 2 | "1: rdmsr\n2:\n" \ |
45 | 2 | ".section .fixup,\"ax\"\n" \ |
46 | 2 | "3: xorl %0,%0\n; xorl %1,%1\n" \ |
47 | 2 | " movl %5,%2\n; jmp 2b\n" \ |
48 | 2 | ".previous\n" \ |
49 | 2 | _ASM_EXTABLE(1b, 3b) \ |
50 | 2 | : "=a" (lo), "=d" (hi), "=&r" (_rc) \ |
51 | 2 | : "c" (msr), "2" (0), "i" (-EFAULT)); \ |
52 | 2 | val = lo | ((uint64_t)hi << 32); \ |
53 | 2 | _rc; }) |
54 | | |
55 | | /* wrmsr with exception handling */ |
56 | | static inline int wrmsr_safe(unsigned int msr, uint64_t val) |
57 | 25 | { |
58 | 25 | int _rc; |
59 | 25 | uint32_t lo, hi; |
60 | 25 | lo = (uint32_t)val; |
61 | 25 | hi = (uint32_t)(val >> 32); |
62 | 25 | |
63 | 25 | __asm__ __volatile__( |
64 | 25 | "1: wrmsr\n2:\n" |
65 | 25 | ".section .fixup,\"ax\"\n" |
66 | 25 | "3: movl %5,%0\n; jmp 2b\n" |
67 | 25 | ".previous\n" |
68 | 25 | _ASM_EXTABLE(1b, 3b) |
69 | 25 | : "=&r" (_rc) |
70 | 25 | : "c" (msr), "a" (lo), "d" (hi), "0" (0), "i" (-EFAULT)); |
71 | 25 | return _rc; |
72 | 25 | } Unexecuted instantiation: cpupool.c:wrmsr_safe Unexecuted instantiation: domctl.c:wrmsr_safe Unexecuted instantiation: domain.c:wrmsr_safe Unexecuted instantiation: event_2l.c:wrmsr_safe Unexecuted instantiation: event_channel.c:wrmsr_safe Unexecuted instantiation: event_fifo.c:wrmsr_safe Unexecuted instantiation: grant_table.c:wrmsr_safe Unexecuted instantiation: guestcopy.c:wrmsr_safe Unexecuted instantiation: irq.c:wrmsr_safe Unexecuted instantiation: kernel.c:wrmsr_safe Unexecuted instantiation: keyhandler.c:wrmsr_safe Unexecuted instantiation: kexec.c:wrmsr_safe Unexecuted instantiation: kimage.c:wrmsr_safe Unexecuted instantiation: mem_access.c:wrmsr_safe Unexecuted instantiation: memory.c:wrmsr_safe Unexecuted instantiation: monitor.c:wrmsr_safe Unexecuted instantiation: multicall.c:wrmsr_safe Unexecuted instantiation: page_alloc.c:wrmsr_safe Unexecuted instantiation: preempt.c:wrmsr_safe Unexecuted instantiation: random.c:wrmsr_safe Unexecuted instantiation: rangeset.c:wrmsr_safe Unexecuted instantiation: rcupdate.c:wrmsr_safe Unexecuted instantiation: rwlock.c:wrmsr_safe Unexecuted instantiation: sched_arinc653.c:wrmsr_safe Unexecuted instantiation: sched_credit.c:wrmsr_safe Unexecuted instantiation: sched_credit2.c:wrmsr_safe Unexecuted instantiation: sched_rt.c:wrmsr_safe Unexecuted instantiation: sched_null.c:wrmsr_safe Unexecuted instantiation: schedule.c:wrmsr_safe Unexecuted instantiation: shutdown.c:wrmsr_safe Unexecuted instantiation: softirq.c:wrmsr_safe Unexecuted instantiation: spinlock.c:wrmsr_safe Unexecuted instantiation: stop_machine.c:wrmsr_safe Unexecuted instantiation: symbols.c:wrmsr_safe Unexecuted instantiation: sysctl.c:wrmsr_safe Unexecuted instantiation: tasklet.c:wrmsr_safe Line | Count | Source | 57 | 1 | { | 58 | 1 | int _rc; | 59 | 1 | uint32_t lo, hi; | 60 | 1 | lo = (uint32_t)val; | 61 | 1 | hi = (uint32_t)(val >> 32); | 62 | 1 | | 63 | 1 | __asm__ __volatile__( | 64 | 1 | "1: wrmsr\n2:\n" | 65 | 1 | ".section .fixup,\"ax\"\n" | 66 | 1 | "3: movl %5,%0\n; jmp 2b\n" | 67 | 1 | ".previous\n" | 68 | 1 | _ASM_EXTABLE(1b, 3b) | 69 | 1 | : "=&r" (_rc) | 70 | 1 | : "c" (msr), "a" (lo), "d" (hi), "0" (0), "i" (-EFAULT)); | 71 | 1 | return _rc; | 72 | 1 | } |
Unexecuted instantiation: timer.c:wrmsr_safe Unexecuted instantiation: trace.c:wrmsr_safe Unexecuted instantiation: vm_event.c:wrmsr_safe Unexecuted instantiation: vsprintf.c:wrmsr_safe Unexecuted instantiation: wait.c:wrmsr_safe Unexecuted instantiation: xenoprof.c:wrmsr_safe Unexecuted instantiation: xmalloc_tlsf.c:wrmsr_safe Unexecuted instantiation: tmem.c:wrmsr_safe Unexecuted instantiation: tmem_xen.c:wrmsr_safe Unexecuted instantiation: tmem_control.c:wrmsr_safe Unexecuted instantiation: llvm.c:wrmsr_safe Unexecuted instantiation: libelf-loader.c:wrmsr_safe Unexecuted instantiation: console.c:wrmsr_safe Unexecuted instantiation: ns16550.c:wrmsr_safe Unexecuted instantiation: ehci-dbgp.c:wrmsr_safe Unexecuted instantiation: cpufreq.c:wrmsr_safe Unexecuted instantiation: cpufreq_ondemand.c:wrmsr_safe Unexecuted instantiation: cpufreq_misc_governors.c:wrmsr_safe Unexecuted instantiation: utility.c:wrmsr_safe Unexecuted instantiation: pci.c:wrmsr_safe Unexecuted instantiation: vpci.c:wrmsr_safe Unexecuted instantiation: header.c:wrmsr_safe Unexecuted instantiation: msi.c:wrmsr_safe Unexecuted instantiation: msix.c:wrmsr_safe Unexecuted instantiation: iommu.c:wrmsr_safe Unexecuted instantiation: io.c:wrmsr_safe Unexecuted instantiation: dmar.c:wrmsr_safe Unexecuted instantiation: utils.c:wrmsr_safe Unexecuted instantiation: qinval.c:wrmsr_safe Unexecuted instantiation: intremap.c:wrmsr_safe Unexecuted instantiation: quirks.c:wrmsr_safe Unexecuted instantiation: vtd.c:wrmsr_safe Unexecuted instantiation: ats.c:wrmsr_safe Unexecuted instantiation: iommu_init.c:wrmsr_safe Unexecuted instantiation: iommu_map.c:wrmsr_safe Unexecuted instantiation: pci_amd_iommu.c:wrmsr_safe Unexecuted instantiation: iommu_intr.c:wrmsr_safe Unexecuted instantiation: iommu_cmd.c:wrmsr_safe Unexecuted instantiation: iommu_guest.c:wrmsr_safe Unexecuted instantiation: pmstat.c:wrmsr_safe Unexecuted instantiation: reboot.c:wrmsr_safe Unexecuted instantiation: erst.c:wrmsr_safe Unexecuted instantiation: apei-io.c:wrmsr_safe Unexecuted instantiation: vga.c:wrmsr_safe Unexecuted instantiation: xsm_core.c:wrmsr_safe Unexecuted instantiation: apic.c:wrmsr_safe Unexecuted instantiation: cpuid.c:wrmsr_safe Unexecuted instantiation: compat.c:wrmsr_safe Unexecuted instantiation: crash.c:wrmsr_safe Unexecuted instantiation: debug.c:wrmsr_safe Unexecuted instantiation: delay.c:wrmsr_safe Unexecuted instantiation: domain_page.c:wrmsr_safe Unexecuted instantiation: e820.c:wrmsr_safe Unexecuted instantiation: flushtlb.c:wrmsr_safe Unexecuted instantiation: hypercall.c:wrmsr_safe Unexecuted instantiation: i387.c:wrmsr_safe Unexecuted instantiation: i8259.c:wrmsr_safe Unexecuted instantiation: io_apic.c:wrmsr_safe Unexecuted instantiation: msr.c:wrmsr_safe Unexecuted instantiation: ioport_emulate.c:wrmsr_safe Unexecuted instantiation: machine_kexec.c:wrmsr_safe Unexecuted instantiation: microcode_amd.c:wrmsr_safe Unexecuted instantiation: microcode_intel.c:wrmsr_safe Unexecuted instantiation: microcode.c:wrmsr_safe Unexecuted instantiation: mm.c:wrmsr_safe Unexecuted instantiation: mpparse.c:wrmsr_safe Unexecuted instantiation: nmi.c:wrmsr_safe Unexecuted instantiation: numa.c:wrmsr_safe Unexecuted instantiation: physdev.c:wrmsr_safe Unexecuted instantiation: platform_hypercall.c:wrmsr_safe Unexecuted instantiation: psr.c:wrmsr_safe Unexecuted instantiation: setup.c:wrmsr_safe Unexecuted instantiation: smp.c:wrmsr_safe Unexecuted instantiation: smpboot.c:wrmsr_safe Unexecuted instantiation: traps.c:wrmsr_safe Unexecuted instantiation: usercopy.c:wrmsr_safe Unexecuted instantiation: x86_emulate.c:wrmsr_safe Unexecuted instantiation: tboot.c:wrmsr_safe Unexecuted instantiation: hpet.c:wrmsr_safe Unexecuted instantiation: xstate.c:wrmsr_safe Unexecuted instantiation: lib.c:wrmsr_safe Unexecuted instantiation: power.c:wrmsr_safe Unexecuted instantiation: suspend.c:wrmsr_safe Unexecuted instantiation: cpu_idle.c:wrmsr_safe Unexecuted instantiation: cpuidle_menu.c:wrmsr_safe Unexecuted instantiation: powernow.c:wrmsr_safe Unexecuted instantiation: amd.c:wrmsr_safe Unexecuted instantiation: centaur.c:wrmsr_safe Unexecuted instantiation: common.c:wrmsr_safe Unexecuted instantiation: intel.c:wrmsr_safe Unexecuted instantiation: mwait-idle.c:wrmsr_safe Unexecuted instantiation: vpmu.c:wrmsr_safe Unexecuted instantiation: vpmu_amd.c:wrmsr_safe Unexecuted instantiation: vpmu_intel.c:wrmsr_safe Unexecuted instantiation: amd_nonfatal.c:wrmsr_safe Unexecuted instantiation: mce_amd.c:wrmsr_safe Unexecuted instantiation: mcaction.c:wrmsr_safe Unexecuted instantiation: barrier.c:wrmsr_safe Unexecuted instantiation: mctelem.c:wrmsr_safe Unexecuted instantiation: mce.c:wrmsr_safe Unexecuted instantiation: mce-apei.c:wrmsr_safe Unexecuted instantiation: mce_intel.c:wrmsr_safe Unexecuted instantiation: non-fatal.c:wrmsr_safe Unexecuted instantiation: util.c:wrmsr_safe Unexecuted instantiation: vmce.c:wrmsr_safe Line | Count | Source | 57 | 24 | { | 58 | 24 | int _rc; | 59 | 24 | uint32_t lo, hi; | 60 | 24 | lo = (uint32_t)val; | 61 | 24 | hi = (uint32_t)(val >> 32); | 62 | 24 | | 63 | 24 | __asm__ __volatile__( | 64 | 24 | "1: wrmsr\n2:\n" | 65 | 24 | ".section .fixup,\"ax\"\n" | 66 | 24 | "3: movl %5,%0\n; jmp 2b\n" | 67 | 24 | ".previous\n" | 68 | 24 | _ASM_EXTABLE(1b, 3b) | 69 | 24 | : "=&r" (_rc) | 70 | 24 | : "c" (msr), "a" (lo), "d" (hi), "0" (0), "i" (-EFAULT)); | 71 | 24 | return _rc; | 72 | 24 | } |
Unexecuted instantiation: main.c:wrmsr_safe Unexecuted instantiation: bigsmp.c:wrmsr_safe Unexecuted instantiation: x2apic.c:wrmsr_safe Unexecuted instantiation: default.c:wrmsr_safe Unexecuted instantiation: delivery.c:wrmsr_safe Unexecuted instantiation: probe.c:wrmsr_safe Unexecuted instantiation: asid.c:wrmsr_safe Unexecuted instantiation: dm.c:wrmsr_safe Unexecuted instantiation: emulate.c:wrmsr_safe Unexecuted instantiation: hvm.c:wrmsr_safe Unexecuted instantiation: i8254.c:wrmsr_safe Unexecuted instantiation: intercept.c:wrmsr_safe Unexecuted instantiation: ioreq.c:wrmsr_safe Unexecuted instantiation: mtrr.c:wrmsr_safe Unexecuted instantiation: nestedhvm.c:wrmsr_safe Unexecuted instantiation: pmtimer.c:wrmsr_safe Unexecuted instantiation: rtc.c:wrmsr_safe Unexecuted instantiation: save.c:wrmsr_safe Unexecuted instantiation: stdvga.c:wrmsr_safe Unexecuted instantiation: vioapic.c:wrmsr_safe Unexecuted instantiation: viridian.c:wrmsr_safe Unexecuted instantiation: vlapic.c:wrmsr_safe Unexecuted instantiation: vmsi.c:wrmsr_safe Unexecuted instantiation: vpic.c:wrmsr_safe Unexecuted instantiation: vpt.c:wrmsr_safe Unexecuted instantiation: intr.c:wrmsr_safe Unexecuted instantiation: nestedsvm.c:wrmsr_safe Unexecuted instantiation: svm.c:wrmsr_safe Unexecuted instantiation: svmdebug.c:wrmsr_safe Unexecuted instantiation: vmcb.c:wrmsr_safe Unexecuted instantiation: realmode.c:wrmsr_safe Unexecuted instantiation: vmcs.c:wrmsr_safe Unexecuted instantiation: vmx.c:wrmsr_safe Unexecuted instantiation: vvmx.c:wrmsr_safe Unexecuted instantiation: paging.c:wrmsr_safe Unexecuted instantiation: p2m.c:wrmsr_safe Unexecuted instantiation: p2m-pt.c:wrmsr_safe Unexecuted instantiation: p2m-ept.c:wrmsr_safe Unexecuted instantiation: p2m-pod.c:wrmsr_safe Unexecuted instantiation: altp2m.c:wrmsr_safe Unexecuted instantiation: guest_walk.c:wrmsr_safe Unexecuted instantiation: mem_paging.c:wrmsr_safe Unexecuted instantiation: mem_sharing.c:wrmsr_safe Unexecuted instantiation: multi.c:wrmsr_safe Unexecuted instantiation: hap.c:wrmsr_safe Unexecuted instantiation: nested_hap.c:wrmsr_safe Unexecuted instantiation: nested_ept.c:wrmsr_safe Unexecuted instantiation: nmi_int.c:wrmsr_safe Unexecuted instantiation: op_model_p4.c:wrmsr_safe Unexecuted instantiation: op_model_ppro.c:wrmsr_safe Unexecuted instantiation: op_model_athlon.c:wrmsr_safe Unexecuted instantiation: backtrace.c:wrmsr_safe Unexecuted instantiation: callback.c:wrmsr_safe Unexecuted instantiation: descriptor-tables.c:wrmsr_safe Unexecuted instantiation: emul-gate-op.c:wrmsr_safe Unexecuted instantiation: emul-inv-op.c:wrmsr_safe Unexecuted instantiation: emul-priv-op.c:wrmsr_safe Unexecuted instantiation: iret.c:wrmsr_safe Unexecuted instantiation: misc-hypercalls.c:wrmsr_safe Unexecuted instantiation: ro-page-fault.c:wrmsr_safe Unexecuted instantiation: acpi_mmcfg.c:wrmsr_safe Unexecuted instantiation: mmconf-fam10h.c:wrmsr_safe Unexecuted instantiation: mmconfig_64.c:wrmsr_safe Unexecuted instantiation: mmconfig-shared.c:wrmsr_safe Unexecuted instantiation: cpu.c:wrmsr_safe |
73 | | |
74 | | static inline uint64_t msr_fold(const struct cpu_user_regs *regs) |
75 | 574 | { |
76 | 574 | return (regs->rdx << 32) | regs->eax; |
77 | 574 | } Unexecuted instantiation: cpu.c:msr_fold Unexecuted instantiation: cpupool.c:msr_fold Unexecuted instantiation: domctl.c:msr_fold Unexecuted instantiation: domain.c:msr_fold Unexecuted instantiation: event_2l.c:msr_fold Unexecuted instantiation: event_channel.c:msr_fold Unexecuted instantiation: event_fifo.c:msr_fold Unexecuted instantiation: grant_table.c:msr_fold Unexecuted instantiation: guestcopy.c:msr_fold Unexecuted instantiation: irq.c:msr_fold Unexecuted instantiation: kernel.c:msr_fold Unexecuted instantiation: keyhandler.c:msr_fold Unexecuted instantiation: kexec.c:msr_fold Unexecuted instantiation: kimage.c:msr_fold Unexecuted instantiation: mem_access.c:msr_fold Unexecuted instantiation: memory.c:msr_fold Unexecuted instantiation: monitor.c:msr_fold Unexecuted instantiation: multicall.c:msr_fold Unexecuted instantiation: page_alloc.c:msr_fold Unexecuted instantiation: preempt.c:msr_fold Unexecuted instantiation: random.c:msr_fold Unexecuted instantiation: rangeset.c:msr_fold Unexecuted instantiation: rcupdate.c:msr_fold Unexecuted instantiation: rwlock.c:msr_fold Unexecuted instantiation: sched_arinc653.c:msr_fold Unexecuted instantiation: sched_credit.c:msr_fold Unexecuted instantiation: sched_credit2.c:msr_fold Unexecuted instantiation: sched_rt.c:msr_fold Unexecuted instantiation: sched_null.c:msr_fold Unexecuted instantiation: schedule.c:msr_fold Unexecuted instantiation: shutdown.c:msr_fold Unexecuted instantiation: softirq.c:msr_fold Unexecuted instantiation: spinlock.c:msr_fold Unexecuted instantiation: stop_machine.c:msr_fold Unexecuted instantiation: symbols.c:msr_fold Unexecuted instantiation: sysctl.c:msr_fold Unexecuted instantiation: tasklet.c:msr_fold Unexecuted instantiation: time.c:msr_fold Unexecuted instantiation: timer.c:msr_fold Unexecuted instantiation: trace.c:msr_fold Unexecuted instantiation: vm_event.c:msr_fold Unexecuted instantiation: vsprintf.c:msr_fold Unexecuted instantiation: wait.c:msr_fold Unexecuted instantiation: xenoprof.c:msr_fold Unexecuted instantiation: xmalloc_tlsf.c:msr_fold Unexecuted instantiation: tmem.c:msr_fold Unexecuted instantiation: tmem_xen.c:msr_fold Unexecuted instantiation: tmem_control.c:msr_fold Unexecuted instantiation: llvm.c:msr_fold Unexecuted instantiation: libelf-loader.c:msr_fold Unexecuted instantiation: console.c:msr_fold Unexecuted instantiation: ns16550.c:msr_fold Unexecuted instantiation: ehci-dbgp.c:msr_fold Unexecuted instantiation: cpufreq.c:msr_fold Unexecuted instantiation: cpufreq_ondemand.c:msr_fold Unexecuted instantiation: cpufreq_misc_governors.c:msr_fold Unexecuted instantiation: utility.c:msr_fold Unexecuted instantiation: pci.c:msr_fold Unexecuted instantiation: vpci.c:msr_fold Unexecuted instantiation: header.c:msr_fold Unexecuted instantiation: msi.c:msr_fold Unexecuted instantiation: msix.c:msr_fold Unexecuted instantiation: iommu.c:msr_fold Unexecuted instantiation: io.c:msr_fold Unexecuted instantiation: dmar.c:msr_fold Unexecuted instantiation: utils.c:msr_fold Unexecuted instantiation: qinval.c:msr_fold Unexecuted instantiation: intremap.c:msr_fold Unexecuted instantiation: quirks.c:msr_fold Unexecuted instantiation: vtd.c:msr_fold Unexecuted instantiation: ats.c:msr_fold Unexecuted instantiation: iommu_init.c:msr_fold Unexecuted instantiation: iommu_map.c:msr_fold Unexecuted instantiation: pci_amd_iommu.c:msr_fold Unexecuted instantiation: iommu_intr.c:msr_fold Unexecuted instantiation: iommu_cmd.c:msr_fold Unexecuted instantiation: iommu_guest.c:msr_fold Unexecuted instantiation: pmstat.c:msr_fold Unexecuted instantiation: reboot.c:msr_fold Unexecuted instantiation: erst.c:msr_fold Unexecuted instantiation: apei-io.c:msr_fold Unexecuted instantiation: vga.c:msr_fold Unexecuted instantiation: xsm_core.c:msr_fold Unexecuted instantiation: apic.c:msr_fold Unexecuted instantiation: cpuid.c:msr_fold Unexecuted instantiation: compat.c:msr_fold Unexecuted instantiation: crash.c:msr_fold Unexecuted instantiation: debug.c:msr_fold Unexecuted instantiation: delay.c:msr_fold Unexecuted instantiation: domain_page.c:msr_fold Unexecuted instantiation: e820.c:msr_fold Unexecuted instantiation: flushtlb.c:msr_fold Unexecuted instantiation: hypercall.c:msr_fold Unexecuted instantiation: i387.c:msr_fold Unexecuted instantiation: i8259.c:msr_fold Unexecuted instantiation: io_apic.c:msr_fold Unexecuted instantiation: msr.c:msr_fold Unexecuted instantiation: ioport_emulate.c:msr_fold Unexecuted instantiation: machine_kexec.c:msr_fold Unexecuted instantiation: microcode_amd.c:msr_fold Unexecuted instantiation: microcode_intel.c:msr_fold Unexecuted instantiation: microcode.c:msr_fold Unexecuted instantiation: mm.c:msr_fold Unexecuted instantiation: mpparse.c:msr_fold Unexecuted instantiation: nmi.c:msr_fold Unexecuted instantiation: numa.c:msr_fold Unexecuted instantiation: physdev.c:msr_fold Unexecuted instantiation: platform_hypercall.c:msr_fold Unexecuted instantiation: psr.c:msr_fold Unexecuted instantiation: setup.c:msr_fold Unexecuted instantiation: smp.c:msr_fold Unexecuted instantiation: smpboot.c:msr_fold Unexecuted instantiation: traps.c:msr_fold Unexecuted instantiation: usercopy.c:msr_fold Unexecuted instantiation: x86_emulate.c:msr_fold Unexecuted instantiation: tboot.c:msr_fold Unexecuted instantiation: hpet.c:msr_fold Unexecuted instantiation: xstate.c:msr_fold Unexecuted instantiation: lib.c:msr_fold Unexecuted instantiation: power.c:msr_fold Unexecuted instantiation: suspend.c:msr_fold Unexecuted instantiation: cpu_idle.c:msr_fold Unexecuted instantiation: cpuidle_menu.c:msr_fold Unexecuted instantiation: powernow.c:msr_fold Unexecuted instantiation: amd.c:msr_fold Unexecuted instantiation: centaur.c:msr_fold Unexecuted instantiation: common.c:msr_fold Unexecuted instantiation: intel.c:msr_fold Unexecuted instantiation: mwait-idle.c:msr_fold Unexecuted instantiation: vpmu.c:msr_fold Unexecuted instantiation: vpmu_amd.c:msr_fold Unexecuted instantiation: vpmu_intel.c:msr_fold Unexecuted instantiation: amd_nonfatal.c:msr_fold Unexecuted instantiation: mce_amd.c:msr_fold Unexecuted instantiation: mcaction.c:msr_fold Unexecuted instantiation: barrier.c:msr_fold Unexecuted instantiation: mctelem.c:msr_fold Unexecuted instantiation: mce.c:msr_fold Unexecuted instantiation: mce-apei.c:msr_fold Unexecuted instantiation: mce_intel.c:msr_fold Unexecuted instantiation: non-fatal.c:msr_fold Unexecuted instantiation: util.c:msr_fold Unexecuted instantiation: vmce.c:msr_fold Unexecuted instantiation: generic.c:msr_fold Unexecuted instantiation: main.c:msr_fold Unexecuted instantiation: bigsmp.c:msr_fold Unexecuted instantiation: x2apic.c:msr_fold Unexecuted instantiation: default.c:msr_fold Unexecuted instantiation: delivery.c:msr_fold Unexecuted instantiation: probe.c:msr_fold Unexecuted instantiation: asid.c:msr_fold Unexecuted instantiation: dm.c:msr_fold Unexecuted instantiation: emulate.c:msr_fold Unexecuted instantiation: hvm.c:msr_fold Unexecuted instantiation: i8254.c:msr_fold Unexecuted instantiation: intercept.c:msr_fold Unexecuted instantiation: ioreq.c:msr_fold Unexecuted instantiation: mtrr.c:msr_fold Unexecuted instantiation: nestedhvm.c:msr_fold Unexecuted instantiation: pmtimer.c:msr_fold Unexecuted instantiation: rtc.c:msr_fold Unexecuted instantiation: save.c:msr_fold Unexecuted instantiation: stdvga.c:msr_fold Unexecuted instantiation: vioapic.c:msr_fold Unexecuted instantiation: viridian.c:msr_fold Unexecuted instantiation: vlapic.c:msr_fold Unexecuted instantiation: vmsi.c:msr_fold Unexecuted instantiation: vpic.c:msr_fold Unexecuted instantiation: vpt.c:msr_fold Unexecuted instantiation: intr.c:msr_fold Unexecuted instantiation: nestedsvm.c:msr_fold Unexecuted instantiation: svm.c:msr_fold Unexecuted instantiation: svmdebug.c:msr_fold Unexecuted instantiation: vmcb.c:msr_fold Unexecuted instantiation: realmode.c:msr_fold Unexecuted instantiation: vmcs.c:msr_fold Line | Count | Source | 75 | 574 | { | 76 | 574 | return (regs->rdx << 32) | regs->eax; | 77 | 574 | } |
Unexecuted instantiation: vvmx.c:msr_fold Unexecuted instantiation: paging.c:msr_fold Unexecuted instantiation: p2m.c:msr_fold Unexecuted instantiation: p2m-pt.c:msr_fold Unexecuted instantiation: p2m-ept.c:msr_fold Unexecuted instantiation: p2m-pod.c:msr_fold Unexecuted instantiation: altp2m.c:msr_fold Unexecuted instantiation: guest_walk.c:msr_fold Unexecuted instantiation: mem_paging.c:msr_fold Unexecuted instantiation: mem_sharing.c:msr_fold Unexecuted instantiation: multi.c:msr_fold Unexecuted instantiation: hap.c:msr_fold Unexecuted instantiation: nested_hap.c:msr_fold Unexecuted instantiation: nested_ept.c:msr_fold Unexecuted instantiation: nmi_int.c:msr_fold Unexecuted instantiation: op_model_p4.c:msr_fold Unexecuted instantiation: op_model_ppro.c:msr_fold Unexecuted instantiation: op_model_athlon.c:msr_fold Unexecuted instantiation: backtrace.c:msr_fold Unexecuted instantiation: callback.c:msr_fold Unexecuted instantiation: descriptor-tables.c:msr_fold Unexecuted instantiation: emul-gate-op.c:msr_fold Unexecuted instantiation: emul-inv-op.c:msr_fold Unexecuted instantiation: emul-priv-op.c:msr_fold Unexecuted instantiation: iret.c:msr_fold Unexecuted instantiation: misc-hypercalls.c:msr_fold Unexecuted instantiation: ro-page-fault.c:msr_fold Unexecuted instantiation: acpi_mmcfg.c:msr_fold Unexecuted instantiation: mmconf-fam10h.c:msr_fold Unexecuted instantiation: mmconfig_64.c:msr_fold Unexecuted instantiation: mmconfig-shared.c:msr_fold |
78 | | |
79 | | static inline void msr_split(struct cpu_user_regs *regs, uint64_t val) |
80 | 270 | { |
81 | 270 | regs->rdx = val >> 32; |
82 | 270 | regs->rax = (uint32_t)val; |
83 | 270 | } Unexecuted instantiation: cpu.c:msr_split Unexecuted instantiation: cpupool.c:msr_split Unexecuted instantiation: domctl.c:msr_split Unexecuted instantiation: domain.c:msr_split Unexecuted instantiation: event_2l.c:msr_split Unexecuted instantiation: event_channel.c:msr_split Unexecuted instantiation: event_fifo.c:msr_split Unexecuted instantiation: grant_table.c:msr_split Unexecuted instantiation: guestcopy.c:msr_split Unexecuted instantiation: irq.c:msr_split Unexecuted instantiation: kernel.c:msr_split Unexecuted instantiation: keyhandler.c:msr_split Unexecuted instantiation: kexec.c:msr_split Unexecuted instantiation: kimage.c:msr_split Unexecuted instantiation: mem_access.c:msr_split Unexecuted instantiation: memory.c:msr_split Unexecuted instantiation: monitor.c:msr_split Unexecuted instantiation: multicall.c:msr_split Unexecuted instantiation: page_alloc.c:msr_split Unexecuted instantiation: preempt.c:msr_split Unexecuted instantiation: random.c:msr_split Unexecuted instantiation: rangeset.c:msr_split Unexecuted instantiation: rcupdate.c:msr_split Unexecuted instantiation: rwlock.c:msr_split Unexecuted instantiation: sched_arinc653.c:msr_split Unexecuted instantiation: sched_credit.c:msr_split Unexecuted instantiation: sched_credit2.c:msr_split Unexecuted instantiation: sched_rt.c:msr_split Unexecuted instantiation: sched_null.c:msr_split Unexecuted instantiation: schedule.c:msr_split Unexecuted instantiation: shutdown.c:msr_split Unexecuted instantiation: softirq.c:msr_split Unexecuted instantiation: spinlock.c:msr_split Unexecuted instantiation: stop_machine.c:msr_split Unexecuted instantiation: symbols.c:msr_split Unexecuted instantiation: sysctl.c:msr_split Unexecuted instantiation: tasklet.c:msr_split Unexecuted instantiation: time.c:msr_split Unexecuted instantiation: timer.c:msr_split Unexecuted instantiation: trace.c:msr_split Unexecuted instantiation: vm_event.c:msr_split Unexecuted instantiation: vsprintf.c:msr_split Unexecuted instantiation: wait.c:msr_split Unexecuted instantiation: xenoprof.c:msr_split Unexecuted instantiation: xmalloc_tlsf.c:msr_split Unexecuted instantiation: tmem.c:msr_split Unexecuted instantiation: tmem_xen.c:msr_split Unexecuted instantiation: tmem_control.c:msr_split Unexecuted instantiation: llvm.c:msr_split Unexecuted instantiation: libelf-loader.c:msr_split Unexecuted instantiation: console.c:msr_split Unexecuted instantiation: ns16550.c:msr_split Unexecuted instantiation: ehci-dbgp.c:msr_split Unexecuted instantiation: cpufreq.c:msr_split Unexecuted instantiation: cpufreq_ondemand.c:msr_split Unexecuted instantiation: cpufreq_misc_governors.c:msr_split Unexecuted instantiation: utility.c:msr_split Unexecuted instantiation: pci.c:msr_split Unexecuted instantiation: vpci.c:msr_split Unexecuted instantiation: header.c:msr_split Unexecuted instantiation: msi.c:msr_split Unexecuted instantiation: msix.c:msr_split Unexecuted instantiation: iommu.c:msr_split Unexecuted instantiation: io.c:msr_split Unexecuted instantiation: dmar.c:msr_split Unexecuted instantiation: utils.c:msr_split Unexecuted instantiation: qinval.c:msr_split Unexecuted instantiation: intremap.c:msr_split Unexecuted instantiation: quirks.c:msr_split Unexecuted instantiation: vtd.c:msr_split Unexecuted instantiation: ats.c:msr_split Unexecuted instantiation: iommu_init.c:msr_split Unexecuted instantiation: iommu_map.c:msr_split Unexecuted instantiation: pci_amd_iommu.c:msr_split Unexecuted instantiation: iommu_intr.c:msr_split Unexecuted instantiation: iommu_cmd.c:msr_split Unexecuted instantiation: iommu_guest.c:msr_split Unexecuted instantiation: pmstat.c:msr_split Unexecuted instantiation: reboot.c:msr_split Unexecuted instantiation: erst.c:msr_split Unexecuted instantiation: apei-io.c:msr_split Unexecuted instantiation: vga.c:msr_split Unexecuted instantiation: xsm_core.c:msr_split Unexecuted instantiation: apic.c:msr_split Unexecuted instantiation: cpuid.c:msr_split Unexecuted instantiation: compat.c:msr_split Unexecuted instantiation: crash.c:msr_split Unexecuted instantiation: debug.c:msr_split Unexecuted instantiation: delay.c:msr_split Unexecuted instantiation: domain_page.c:msr_split Unexecuted instantiation: e820.c:msr_split Unexecuted instantiation: flushtlb.c:msr_split Unexecuted instantiation: hypercall.c:msr_split Unexecuted instantiation: i387.c:msr_split Unexecuted instantiation: i8259.c:msr_split Unexecuted instantiation: io_apic.c:msr_split Unexecuted instantiation: msr.c:msr_split Unexecuted instantiation: ioport_emulate.c:msr_split Unexecuted instantiation: machine_kexec.c:msr_split Unexecuted instantiation: microcode_amd.c:msr_split Unexecuted instantiation: microcode_intel.c:msr_split Unexecuted instantiation: microcode.c:msr_split Unexecuted instantiation: mm.c:msr_split Unexecuted instantiation: mpparse.c:msr_split Unexecuted instantiation: nmi.c:msr_split Unexecuted instantiation: numa.c:msr_split Unexecuted instantiation: physdev.c:msr_split Unexecuted instantiation: platform_hypercall.c:msr_split Unexecuted instantiation: psr.c:msr_split Unexecuted instantiation: setup.c:msr_split Unexecuted instantiation: smp.c:msr_split Unexecuted instantiation: smpboot.c:msr_split Unexecuted instantiation: traps.c:msr_split Unexecuted instantiation: usercopy.c:msr_split Unexecuted instantiation: x86_emulate.c:msr_split Unexecuted instantiation: tboot.c:msr_split Unexecuted instantiation: hpet.c:msr_split Unexecuted instantiation: xstate.c:msr_split Unexecuted instantiation: lib.c:msr_split Unexecuted instantiation: power.c:msr_split Unexecuted instantiation: suspend.c:msr_split Unexecuted instantiation: cpu_idle.c:msr_split Unexecuted instantiation: cpuidle_menu.c:msr_split Unexecuted instantiation: powernow.c:msr_split Unexecuted instantiation: amd.c:msr_split Unexecuted instantiation: centaur.c:msr_split Unexecuted instantiation: common.c:msr_split Unexecuted instantiation: intel.c:msr_split Unexecuted instantiation: mwait-idle.c:msr_split Unexecuted instantiation: vpmu.c:msr_split Unexecuted instantiation: vpmu_amd.c:msr_split Unexecuted instantiation: vpmu_intel.c:msr_split Unexecuted instantiation: amd_nonfatal.c:msr_split Unexecuted instantiation: mce_amd.c:msr_split Unexecuted instantiation: mcaction.c:msr_split Unexecuted instantiation: barrier.c:msr_split Unexecuted instantiation: mctelem.c:msr_split Unexecuted instantiation: mce.c:msr_split Unexecuted instantiation: mce-apei.c:msr_split Unexecuted instantiation: mce_intel.c:msr_split Unexecuted instantiation: non-fatal.c:msr_split Unexecuted instantiation: util.c:msr_split Unexecuted instantiation: vmce.c:msr_split Unexecuted instantiation: generic.c:msr_split Unexecuted instantiation: main.c:msr_split Unexecuted instantiation: bigsmp.c:msr_split Unexecuted instantiation: x2apic.c:msr_split Unexecuted instantiation: default.c:msr_split Unexecuted instantiation: delivery.c:msr_split Unexecuted instantiation: probe.c:msr_split Unexecuted instantiation: asid.c:msr_split Unexecuted instantiation: dm.c:msr_split Unexecuted instantiation: emulate.c:msr_split Unexecuted instantiation: hvm.c:msr_split Unexecuted instantiation: i8254.c:msr_split Unexecuted instantiation: intercept.c:msr_split Unexecuted instantiation: ioreq.c:msr_split Unexecuted instantiation: mtrr.c:msr_split Unexecuted instantiation: nestedhvm.c:msr_split Unexecuted instantiation: pmtimer.c:msr_split Unexecuted instantiation: rtc.c:msr_split Unexecuted instantiation: save.c:msr_split Unexecuted instantiation: stdvga.c:msr_split Unexecuted instantiation: vioapic.c:msr_split Unexecuted instantiation: viridian.c:msr_split Unexecuted instantiation: vlapic.c:msr_split Unexecuted instantiation: vmsi.c:msr_split Unexecuted instantiation: vpic.c:msr_split Unexecuted instantiation: vpt.c:msr_split Unexecuted instantiation: intr.c:msr_split Unexecuted instantiation: nestedsvm.c:msr_split Unexecuted instantiation: svm.c:msr_split Unexecuted instantiation: svmdebug.c:msr_split Unexecuted instantiation: vmcb.c:msr_split Unexecuted instantiation: realmode.c:msr_split Unexecuted instantiation: vmcs.c:msr_split Line | Count | Source | 80 | 270 | { | 81 | 270 | regs->rdx = val >> 32; | 82 | 270 | regs->rax = (uint32_t)val; | 83 | 270 | } |
Unexecuted instantiation: vvmx.c:msr_split Unexecuted instantiation: paging.c:msr_split Unexecuted instantiation: p2m.c:msr_split Unexecuted instantiation: p2m-pt.c:msr_split Unexecuted instantiation: p2m-ept.c:msr_split Unexecuted instantiation: p2m-pod.c:msr_split Unexecuted instantiation: altp2m.c:msr_split Unexecuted instantiation: guest_walk.c:msr_split Unexecuted instantiation: mem_paging.c:msr_split Unexecuted instantiation: mem_sharing.c:msr_split Unexecuted instantiation: multi.c:msr_split Unexecuted instantiation: hap.c:msr_split Unexecuted instantiation: nested_hap.c:msr_split Unexecuted instantiation: nested_ept.c:msr_split Unexecuted instantiation: nmi_int.c:msr_split Unexecuted instantiation: op_model_p4.c:msr_split Unexecuted instantiation: op_model_ppro.c:msr_split Unexecuted instantiation: op_model_athlon.c:msr_split Unexecuted instantiation: backtrace.c:msr_split Unexecuted instantiation: callback.c:msr_split Unexecuted instantiation: descriptor-tables.c:msr_split Unexecuted instantiation: emul-gate-op.c:msr_split Unexecuted instantiation: emul-inv-op.c:msr_split Unexecuted instantiation: emul-priv-op.c:msr_split Unexecuted instantiation: iret.c:msr_split Unexecuted instantiation: misc-hypercalls.c:msr_split Unexecuted instantiation: ro-page-fault.c:msr_split Unexecuted instantiation: acpi_mmcfg.c:msr_split Unexecuted instantiation: mmconf-fam10h.c:msr_split Unexecuted instantiation: mmconfig_64.c:msr_split Unexecuted instantiation: mmconfig-shared.c:msr_split |
84 | | |
85 | | static inline uint64_t rdtsc(void) |
86 | 200M | { |
87 | 200M | uint32_t low, high; |
88 | 200M | |
89 | 200M | __asm__ __volatile__("rdtsc" : "=a" (low), "=d" (high)); |
90 | 200M | |
91 | 200M | return ((uint64_t)high << 32) | low; |
92 | 200M | } Unexecuted instantiation: cpu.c:rdtsc Unexecuted instantiation: mmconfig-shared.c:rdtsc Unexecuted instantiation: cpupool.c:rdtsc Unexecuted instantiation: domctl.c:rdtsc Unexecuted instantiation: domain.c:rdtsc Unexecuted instantiation: event_2l.c:rdtsc Unexecuted instantiation: event_channel.c:rdtsc Unexecuted instantiation: event_fifo.c:rdtsc Unexecuted instantiation: grant_table.c:rdtsc Unexecuted instantiation: guestcopy.c:rdtsc Unexecuted instantiation: irq.c:rdtsc Unexecuted instantiation: kernel.c:rdtsc Unexecuted instantiation: keyhandler.c:rdtsc Unexecuted instantiation: kexec.c:rdtsc Unexecuted instantiation: kimage.c:rdtsc Unexecuted instantiation: mem_access.c:rdtsc Unexecuted instantiation: memory.c:rdtsc Unexecuted instantiation: monitor.c:rdtsc Unexecuted instantiation: multicall.c:rdtsc Unexecuted instantiation: page_alloc.c:rdtsc Unexecuted instantiation: preempt.c:rdtsc Unexecuted instantiation: random.c:rdtsc Unexecuted instantiation: rangeset.c:rdtsc Unexecuted instantiation: rcupdate.c:rdtsc Unexecuted instantiation: rwlock.c:rdtsc Unexecuted instantiation: sched_arinc653.c:rdtsc Unexecuted instantiation: sched_credit.c:rdtsc Unexecuted instantiation: sched_credit2.c:rdtsc Unexecuted instantiation: sched_rt.c:rdtsc Unexecuted instantiation: sched_null.c:rdtsc Unexecuted instantiation: schedule.c:rdtsc Unexecuted instantiation: shutdown.c:rdtsc Unexecuted instantiation: softirq.c:rdtsc Unexecuted instantiation: spinlock.c:rdtsc Unexecuted instantiation: stop_machine.c:rdtsc Unexecuted instantiation: symbols.c:rdtsc Unexecuted instantiation: sysctl.c:rdtsc Unexecuted instantiation: tasklet.c:rdtsc Line | Count | Source | 86 | 19.5M | { | 87 | 19.5M | uint32_t low, high; | 88 | 19.5M | | 89 | 19.5M | __asm__ __volatile__("rdtsc" : "=a" (low), "=d" (high)); | 90 | 19.5M | | 91 | 19.5M | return ((uint64_t)high << 32) | low; | 92 | 19.5M | } |
Unexecuted instantiation: timer.c:rdtsc Unexecuted instantiation: trace.c:rdtsc Unexecuted instantiation: vm_event.c:rdtsc Unexecuted instantiation: vsprintf.c:rdtsc Unexecuted instantiation: wait.c:rdtsc Unexecuted instantiation: xenoprof.c:rdtsc Unexecuted instantiation: xmalloc_tlsf.c:rdtsc Unexecuted instantiation: tmem.c:rdtsc Unexecuted instantiation: tmem_xen.c:rdtsc Unexecuted instantiation: tmem_control.c:rdtsc Unexecuted instantiation: llvm.c:rdtsc Unexecuted instantiation: libelf-loader.c:rdtsc Unexecuted instantiation: console.c:rdtsc Unexecuted instantiation: ns16550.c:rdtsc Unexecuted instantiation: ehci-dbgp.c:rdtsc Unexecuted instantiation: cpufreq.c:rdtsc Unexecuted instantiation: cpufreq_ondemand.c:rdtsc Unexecuted instantiation: cpufreq_misc_governors.c:rdtsc Unexecuted instantiation: utility.c:rdtsc Unexecuted instantiation: pci.c:rdtsc Unexecuted instantiation: vpci.c:rdtsc Unexecuted instantiation: header.c:rdtsc Unexecuted instantiation: msi.c:rdtsc Unexecuted instantiation: msix.c:rdtsc Unexecuted instantiation: iommu.c:rdtsc Unexecuted instantiation: io.c:rdtsc Unexecuted instantiation: dmar.c:rdtsc Unexecuted instantiation: utils.c:rdtsc Unexecuted instantiation: qinval.c:rdtsc Unexecuted instantiation: intremap.c:rdtsc Unexecuted instantiation: quirks.c:rdtsc Unexecuted instantiation: vtd.c:rdtsc Unexecuted instantiation: ats.c:rdtsc Unexecuted instantiation: iommu_init.c:rdtsc Unexecuted instantiation: iommu_map.c:rdtsc Unexecuted instantiation: pci_amd_iommu.c:rdtsc Unexecuted instantiation: iommu_intr.c:rdtsc Unexecuted instantiation: iommu_cmd.c:rdtsc Unexecuted instantiation: iommu_guest.c:rdtsc Unexecuted instantiation: pmstat.c:rdtsc Unexecuted instantiation: reboot.c:rdtsc Unexecuted instantiation: erst.c:rdtsc Unexecuted instantiation: apei-io.c:rdtsc Unexecuted instantiation: vga.c:rdtsc Unexecuted instantiation: xsm_core.c:rdtsc Line | Count | Source | 86 | 2 | { | 87 | 2 | uint32_t low, high; | 88 | 2 | | 89 | 2 | __asm__ __volatile__("rdtsc" : "=a" (low), "=d" (high)); | 90 | 2 | | 91 | 2 | return ((uint64_t)high << 32) | low; | 92 | 2 | } |
Unexecuted instantiation: cpuid.c:rdtsc Unexecuted instantiation: compat.c:rdtsc Unexecuted instantiation: crash.c:rdtsc Unexecuted instantiation: debug.c:rdtsc Line | Count | Source | 86 | 180M | { | 87 | 180M | uint32_t low, high; | 88 | 180M | | 89 | 180M | __asm__ __volatile__("rdtsc" : "=a" (low), "=d" (high)); | 90 | 180M | | 91 | 180M | return ((uint64_t)high << 32) | low; | 92 | 180M | } |
Unexecuted instantiation: domain_page.c:rdtsc Unexecuted instantiation: e820.c:rdtsc Unexecuted instantiation: flushtlb.c:rdtsc Unexecuted instantiation: hypercall.c:rdtsc Unexecuted instantiation: i387.c:rdtsc Unexecuted instantiation: i8259.c:rdtsc Unexecuted instantiation: io_apic.c:rdtsc Unexecuted instantiation: msr.c:rdtsc Unexecuted instantiation: ioport_emulate.c:rdtsc Unexecuted instantiation: machine_kexec.c:rdtsc Unexecuted instantiation: microcode_amd.c:rdtsc Unexecuted instantiation: microcode_intel.c:rdtsc Unexecuted instantiation: microcode.c:rdtsc Unexecuted instantiation: mm.c:rdtsc Unexecuted instantiation: mpparse.c:rdtsc Unexecuted instantiation: nmi.c:rdtsc Unexecuted instantiation: numa.c:rdtsc Unexecuted instantiation: physdev.c:rdtsc Unexecuted instantiation: platform_hypercall.c:rdtsc Unexecuted instantiation: psr.c:rdtsc Unexecuted instantiation: setup.c:rdtsc Unexecuted instantiation: smp.c:rdtsc Unexecuted instantiation: smpboot.c:rdtsc Unexecuted instantiation: traps.c:rdtsc Unexecuted instantiation: usercopy.c:rdtsc Unexecuted instantiation: x86_emulate.c:rdtsc Unexecuted instantiation: tboot.c:rdtsc Unexecuted instantiation: hpet.c:rdtsc Unexecuted instantiation: xstate.c:rdtsc Unexecuted instantiation: lib.c:rdtsc Unexecuted instantiation: power.c:rdtsc Unexecuted instantiation: suspend.c:rdtsc Unexecuted instantiation: cpu_idle.c:rdtsc Unexecuted instantiation: cpuidle_menu.c:rdtsc Unexecuted instantiation: powernow.c:rdtsc Unexecuted instantiation: amd.c:rdtsc Unexecuted instantiation: centaur.c:rdtsc Unexecuted instantiation: common.c:rdtsc Unexecuted instantiation: intel.c:rdtsc Unexecuted instantiation: mwait-idle.c:rdtsc Unexecuted instantiation: vpmu.c:rdtsc Unexecuted instantiation: vpmu_amd.c:rdtsc Unexecuted instantiation: vpmu_intel.c:rdtsc Unexecuted instantiation: amd_nonfatal.c:rdtsc Unexecuted instantiation: mce_amd.c:rdtsc Unexecuted instantiation: mcaction.c:rdtsc Unexecuted instantiation: barrier.c:rdtsc Unexecuted instantiation: mctelem.c:rdtsc Unexecuted instantiation: mce.c:rdtsc Unexecuted instantiation: mce-apei.c:rdtsc Unexecuted instantiation: mce_intel.c:rdtsc Unexecuted instantiation: non-fatal.c:rdtsc Unexecuted instantiation: util.c:rdtsc Unexecuted instantiation: vmce.c:rdtsc Unexecuted instantiation: generic.c:rdtsc Unexecuted instantiation: main.c:rdtsc Unexecuted instantiation: bigsmp.c:rdtsc Unexecuted instantiation: x2apic.c:rdtsc Unexecuted instantiation: default.c:rdtsc Unexecuted instantiation: delivery.c:rdtsc Unexecuted instantiation: probe.c:rdtsc Unexecuted instantiation: asid.c:rdtsc Unexecuted instantiation: dm.c:rdtsc Unexecuted instantiation: emulate.c:rdtsc Line | Count | Source | 86 | 1 | { | 87 | 1 | uint32_t low, high; | 88 | 1 | | 89 | 1 | __asm__ __volatile__("rdtsc" : "=a" (low), "=d" (high)); | 90 | 1 | | 91 | 1 | return ((uint64_t)high << 32) | low; | 92 | 1 | } |
Unexecuted instantiation: i8254.c:rdtsc Unexecuted instantiation: intercept.c:rdtsc Unexecuted instantiation: ioreq.c:rdtsc Unexecuted instantiation: mtrr.c:rdtsc Unexecuted instantiation: nestedhvm.c:rdtsc Unexecuted instantiation: pmtimer.c:rdtsc Unexecuted instantiation: rtc.c:rdtsc Unexecuted instantiation: save.c:rdtsc Unexecuted instantiation: stdvga.c:rdtsc Unexecuted instantiation: vioapic.c:rdtsc Unexecuted instantiation: viridian.c:rdtsc Unexecuted instantiation: vlapic.c:rdtsc Unexecuted instantiation: vmsi.c:rdtsc Unexecuted instantiation: vpic.c:rdtsc Unexecuted instantiation: vpt.c:rdtsc Unexecuted instantiation: intr.c:rdtsc Unexecuted instantiation: nestedsvm.c:rdtsc Unexecuted instantiation: svm.c:rdtsc Unexecuted instantiation: svmdebug.c:rdtsc Unexecuted instantiation: vmcb.c:rdtsc Unexecuted instantiation: realmode.c:rdtsc Unexecuted instantiation: vmcs.c:rdtsc Unexecuted instantiation: vmx.c:rdtsc Unexecuted instantiation: vvmx.c:rdtsc Unexecuted instantiation: paging.c:rdtsc Unexecuted instantiation: p2m.c:rdtsc Unexecuted instantiation: p2m-pt.c:rdtsc Unexecuted instantiation: p2m-ept.c:rdtsc Unexecuted instantiation: p2m-pod.c:rdtsc Unexecuted instantiation: altp2m.c:rdtsc Unexecuted instantiation: guest_walk.c:rdtsc Unexecuted instantiation: mem_paging.c:rdtsc Unexecuted instantiation: mem_sharing.c:rdtsc Unexecuted instantiation: multi.c:rdtsc Unexecuted instantiation: hap.c:rdtsc Unexecuted instantiation: nested_hap.c:rdtsc Unexecuted instantiation: nested_ept.c:rdtsc Unexecuted instantiation: nmi_int.c:rdtsc Unexecuted instantiation: op_model_p4.c:rdtsc Unexecuted instantiation: op_model_ppro.c:rdtsc Unexecuted instantiation: op_model_athlon.c:rdtsc Unexecuted instantiation: backtrace.c:rdtsc Unexecuted instantiation: callback.c:rdtsc Unexecuted instantiation: descriptor-tables.c:rdtsc Unexecuted instantiation: emul-gate-op.c:rdtsc Unexecuted instantiation: emul-inv-op.c:rdtsc Unexecuted instantiation: emul-priv-op.c:rdtsc Unexecuted instantiation: iret.c:rdtsc Unexecuted instantiation: misc-hypercalls.c:rdtsc Unexecuted instantiation: ro-page-fault.c:rdtsc Unexecuted instantiation: acpi_mmcfg.c:rdtsc Unexecuted instantiation: mmconf-fam10h.c:rdtsc Unexecuted instantiation: mmconfig_64.c:rdtsc |
93 | | |
94 | | static inline uint64_t rdtsc_ordered(void) |
95 | 200M | { |
96 | 200M | /* |
97 | 200M | * The RDTSC instruction is not ordered relative to memory access. |
98 | 200M | * The Intel SDM and the AMD APM are both vague on this point, but |
99 | 200M | * empirically an RDTSC instruction can be speculatively executed |
100 | 200M | * before prior loads. An RDTSC immediately after an appropriate |
101 | 200M | * barrier appears to be ordered as a normal load, that is, it |
102 | 200M | * provides the same ordering guarantees as reading from a global |
103 | 200M | * memory location that some other imaginary CPU is updating |
104 | 200M | * continuously with a time stamp. |
105 | 200M | */ |
106 | 200M | alternative("lfence", "mfence", X86_FEATURE_MFENCE_RDTSC); |
107 | 200M | return rdtsc(); |
108 | 200M | } Unexecuted instantiation: cpupool.c:rdtsc_ordered Unexecuted instantiation: mmconfig-shared.c:rdtsc_ordered Unexecuted instantiation: mmconfig_64.c:rdtsc_ordered Unexecuted instantiation: mmconf-fam10h.c:rdtsc_ordered Unexecuted instantiation: acpi_mmcfg.c:rdtsc_ordered Unexecuted instantiation: ro-page-fault.c:rdtsc_ordered Unexecuted instantiation: misc-hypercalls.c:rdtsc_ordered Unexecuted instantiation: iret.c:rdtsc_ordered Unexecuted instantiation: emul-priv-op.c:rdtsc_ordered Unexecuted instantiation: emul-inv-op.c:rdtsc_ordered Unexecuted instantiation: emul-gate-op.c:rdtsc_ordered Unexecuted instantiation: descriptor-tables.c:rdtsc_ordered Unexecuted instantiation: callback.c:rdtsc_ordered Unexecuted instantiation: backtrace.c:rdtsc_ordered Unexecuted instantiation: op_model_athlon.c:rdtsc_ordered Unexecuted instantiation: op_model_ppro.c:rdtsc_ordered Unexecuted instantiation: op_model_p4.c:rdtsc_ordered Unexecuted instantiation: nmi_int.c:rdtsc_ordered Unexecuted instantiation: nested_ept.c:rdtsc_ordered Unexecuted instantiation: nested_hap.c:rdtsc_ordered Unexecuted instantiation: hap.c:rdtsc_ordered Unexecuted instantiation: multi.c:rdtsc_ordered Unexecuted instantiation: mem_sharing.c:rdtsc_ordered Unexecuted instantiation: mem_paging.c:rdtsc_ordered Unexecuted instantiation: guest_walk.c:rdtsc_ordered Unexecuted instantiation: altp2m.c:rdtsc_ordered Unexecuted instantiation: p2m-pod.c:rdtsc_ordered Unexecuted instantiation: p2m-ept.c:rdtsc_ordered Unexecuted instantiation: p2m-pt.c:rdtsc_ordered Unexecuted instantiation: p2m.c:rdtsc_ordered Unexecuted instantiation: paging.c:rdtsc_ordered Unexecuted instantiation: vvmx.c:rdtsc_ordered Unexecuted instantiation: vmx.c:rdtsc_ordered Unexecuted instantiation: vmcs.c:rdtsc_ordered Unexecuted instantiation: realmode.c:rdtsc_ordered Unexecuted instantiation: vmcb.c:rdtsc_ordered Unexecuted instantiation: svmdebug.c:rdtsc_ordered Unexecuted instantiation: svm.c:rdtsc_ordered Unexecuted instantiation: nestedsvm.c:rdtsc_ordered Unexecuted instantiation: intr.c:rdtsc_ordered Unexecuted instantiation: vpt.c:rdtsc_ordered Unexecuted instantiation: vpic.c:rdtsc_ordered Unexecuted instantiation: vmsi.c:rdtsc_ordered Unexecuted instantiation: vlapic.c:rdtsc_ordered Unexecuted instantiation: viridian.c:rdtsc_ordered Unexecuted instantiation: vioapic.c:rdtsc_ordered Unexecuted instantiation: stdvga.c:rdtsc_ordered Unexecuted instantiation: save.c:rdtsc_ordered Unexecuted instantiation: rtc.c:rdtsc_ordered Unexecuted instantiation: pmtimer.c:rdtsc_ordered Unexecuted instantiation: nestedhvm.c:rdtsc_ordered Unexecuted instantiation: mtrr.c:rdtsc_ordered Unexecuted instantiation: ioreq.c:rdtsc_ordered Unexecuted instantiation: intercept.c:rdtsc_ordered Unexecuted instantiation: i8254.c:rdtsc_ordered Unexecuted instantiation: hvm.c:rdtsc_ordered Unexecuted instantiation: emulate.c:rdtsc_ordered Unexecuted instantiation: dm.c:rdtsc_ordered Unexecuted instantiation: asid.c:rdtsc_ordered Unexecuted instantiation: probe.c:rdtsc_ordered Unexecuted instantiation: delivery.c:rdtsc_ordered Unexecuted instantiation: default.c:rdtsc_ordered Unexecuted instantiation: x2apic.c:rdtsc_ordered Unexecuted instantiation: bigsmp.c:rdtsc_ordered Unexecuted instantiation: main.c:rdtsc_ordered Unexecuted instantiation: generic.c:rdtsc_ordered Unexecuted instantiation: vmce.c:rdtsc_ordered Unexecuted instantiation: util.c:rdtsc_ordered Unexecuted instantiation: non-fatal.c:rdtsc_ordered Unexecuted instantiation: mce_intel.c:rdtsc_ordered Unexecuted instantiation: mce-apei.c:rdtsc_ordered Unexecuted instantiation: mce.c:rdtsc_ordered Unexecuted instantiation: mctelem.c:rdtsc_ordered Unexecuted instantiation: barrier.c:rdtsc_ordered Unexecuted instantiation: mcaction.c:rdtsc_ordered Unexecuted instantiation: mce_amd.c:rdtsc_ordered Unexecuted instantiation: amd_nonfatal.c:rdtsc_ordered Unexecuted instantiation: vpmu_intel.c:rdtsc_ordered Unexecuted instantiation: vpmu_amd.c:rdtsc_ordered Unexecuted instantiation: vpmu.c:rdtsc_ordered Unexecuted instantiation: mwait-idle.c:rdtsc_ordered Unexecuted instantiation: intel.c:rdtsc_ordered Unexecuted instantiation: common.c:rdtsc_ordered Unexecuted instantiation: centaur.c:rdtsc_ordered Unexecuted instantiation: amd.c:rdtsc_ordered Unexecuted instantiation: powernow.c:rdtsc_ordered Unexecuted instantiation: cpuidle_menu.c:rdtsc_ordered Unexecuted instantiation: cpu_idle.c:rdtsc_ordered Unexecuted instantiation: suspend.c:rdtsc_ordered Unexecuted instantiation: power.c:rdtsc_ordered Unexecuted instantiation: lib.c:rdtsc_ordered Unexecuted instantiation: xstate.c:rdtsc_ordered Unexecuted instantiation: hpet.c:rdtsc_ordered Unexecuted instantiation: tboot.c:rdtsc_ordered Unexecuted instantiation: x86_emulate.c:rdtsc_ordered Unexecuted instantiation: usercopy.c:rdtsc_ordered Unexecuted instantiation: traps.c:rdtsc_ordered Unexecuted instantiation: smpboot.c:rdtsc_ordered Unexecuted instantiation: smp.c:rdtsc_ordered Unexecuted instantiation: setup.c:rdtsc_ordered Unexecuted instantiation: psr.c:rdtsc_ordered Unexecuted instantiation: platform_hypercall.c:rdtsc_ordered Unexecuted instantiation: physdev.c:rdtsc_ordered Unexecuted instantiation: numa.c:rdtsc_ordered Unexecuted instantiation: nmi.c:rdtsc_ordered Unexecuted instantiation: mpparse.c:rdtsc_ordered Unexecuted instantiation: mm.c:rdtsc_ordered Unexecuted instantiation: microcode.c:rdtsc_ordered Unexecuted instantiation: microcode_intel.c:rdtsc_ordered Unexecuted instantiation: microcode_amd.c:rdtsc_ordered Unexecuted instantiation: machine_kexec.c:rdtsc_ordered Unexecuted instantiation: ioport_emulate.c:rdtsc_ordered Unexecuted instantiation: msr.c:rdtsc_ordered Unexecuted instantiation: io_apic.c:rdtsc_ordered Unexecuted instantiation: i8259.c:rdtsc_ordered Unexecuted instantiation: i387.c:rdtsc_ordered Unexecuted instantiation: hypercall.c:rdtsc_ordered Unexecuted instantiation: flushtlb.c:rdtsc_ordered Unexecuted instantiation: e820.c:rdtsc_ordered Unexecuted instantiation: domain_page.c:rdtsc_ordered Line | Count | Source | 95 | 180M | { | 96 | 180M | /* | 97 | 180M | * The RDTSC instruction is not ordered relative to memory access. | 98 | 180M | * The Intel SDM and the AMD APM are both vague on this point, but | 99 | 180M | * empirically an RDTSC instruction can be speculatively executed | 100 | 180M | * before prior loads. An RDTSC immediately after an appropriate | 101 | 180M | * barrier appears to be ordered as a normal load, that is, it | 102 | 180M | * provides the same ordering guarantees as reading from a global | 103 | 180M | * memory location that some other imaginary CPU is updating | 104 | 180M | * continuously with a time stamp. | 105 | 180M | */ | 106 | 180M | alternative("lfence", "mfence", X86_FEATURE_MFENCE_RDTSC); | 107 | 180M | return rdtsc(); | 108 | 180M | } |
Unexecuted instantiation: debug.c:rdtsc_ordered Unexecuted instantiation: crash.c:rdtsc_ordered Unexecuted instantiation: compat.c:rdtsc_ordered Unexecuted instantiation: cpuid.c:rdtsc_ordered Line | Count | Source | 95 | 2 | { | 96 | 2 | /* | 97 | 2 | * The RDTSC instruction is not ordered relative to memory access. | 98 | 2 | * The Intel SDM and the AMD APM are both vague on this point, but | 99 | 2 | * empirically an RDTSC instruction can be speculatively executed | 100 | 2 | * before prior loads. An RDTSC immediately after an appropriate | 101 | 2 | * barrier appears to be ordered as a normal load, that is, it | 102 | 2 | * provides the same ordering guarantees as reading from a global | 103 | 2 | * memory location that some other imaginary CPU is updating | 104 | 2 | * continuously with a time stamp. | 105 | 2 | */ | 106 | 2 | alternative("lfence", "mfence", X86_FEATURE_MFENCE_RDTSC); | 107 | 2 | return rdtsc(); | 108 | 2 | } |
Unexecuted instantiation: xsm_core.c:rdtsc_ordered Unexecuted instantiation: vga.c:rdtsc_ordered Unexecuted instantiation: apei-io.c:rdtsc_ordered Unexecuted instantiation: erst.c:rdtsc_ordered Unexecuted instantiation: reboot.c:rdtsc_ordered Unexecuted instantiation: pmstat.c:rdtsc_ordered Unexecuted instantiation: iommu_guest.c:rdtsc_ordered Unexecuted instantiation: iommu_cmd.c:rdtsc_ordered Unexecuted instantiation: iommu_intr.c:rdtsc_ordered Unexecuted instantiation: pci_amd_iommu.c:rdtsc_ordered Unexecuted instantiation: iommu_map.c:rdtsc_ordered Unexecuted instantiation: iommu_init.c:rdtsc_ordered Unexecuted instantiation: ats.c:rdtsc_ordered Unexecuted instantiation: vtd.c:rdtsc_ordered Unexecuted instantiation: quirks.c:rdtsc_ordered Unexecuted instantiation: intremap.c:rdtsc_ordered Unexecuted instantiation: qinval.c:rdtsc_ordered Unexecuted instantiation: utils.c:rdtsc_ordered Unexecuted instantiation: dmar.c:rdtsc_ordered Unexecuted instantiation: io.c:rdtsc_ordered Unexecuted instantiation: iommu.c:rdtsc_ordered Unexecuted instantiation: msix.c:rdtsc_ordered Unexecuted instantiation: msi.c:rdtsc_ordered Unexecuted instantiation: header.c:rdtsc_ordered Unexecuted instantiation: vpci.c:rdtsc_ordered Unexecuted instantiation: pci.c:rdtsc_ordered Unexecuted instantiation: utility.c:rdtsc_ordered Unexecuted instantiation: cpufreq_misc_governors.c:rdtsc_ordered Unexecuted instantiation: cpufreq_ondemand.c:rdtsc_ordered Unexecuted instantiation: cpufreq.c:rdtsc_ordered Unexecuted instantiation: ehci-dbgp.c:rdtsc_ordered Unexecuted instantiation: ns16550.c:rdtsc_ordered Unexecuted instantiation: console.c:rdtsc_ordered Unexecuted instantiation: libelf-loader.c:rdtsc_ordered Unexecuted instantiation: llvm.c:rdtsc_ordered Unexecuted instantiation: tmem_control.c:rdtsc_ordered Unexecuted instantiation: tmem_xen.c:rdtsc_ordered Unexecuted instantiation: tmem.c:rdtsc_ordered Unexecuted instantiation: xmalloc_tlsf.c:rdtsc_ordered Unexecuted instantiation: xenoprof.c:rdtsc_ordered Unexecuted instantiation: wait.c:rdtsc_ordered Unexecuted instantiation: vsprintf.c:rdtsc_ordered Unexecuted instantiation: vm_event.c:rdtsc_ordered Unexecuted instantiation: trace.c:rdtsc_ordered Unexecuted instantiation: timer.c:rdtsc_ordered Line | Count | Source | 95 | 19.4M | { | 96 | 19.4M | /* | 97 | 19.4M | * The RDTSC instruction is not ordered relative to memory access. | 98 | 19.4M | * The Intel SDM and the AMD APM are both vague on this point, but | 99 | 19.4M | * empirically an RDTSC instruction can be speculatively executed | 100 | 19.4M | * before prior loads. An RDTSC immediately after an appropriate | 101 | 19.4M | * barrier appears to be ordered as a normal load, that is, it | 102 | 19.4M | * provides the same ordering guarantees as reading from a global | 103 | 19.4M | * memory location that some other imaginary CPU is updating | 104 | 19.4M | * continuously with a time stamp. | 105 | 19.4M | */ | 106 | 19.4M | alternative("lfence", "mfence", X86_FEATURE_MFENCE_RDTSC); | 107 | 19.4M | return rdtsc(); | 108 | 19.4M | } |
Unexecuted instantiation: tasklet.c:rdtsc_ordered Unexecuted instantiation: sysctl.c:rdtsc_ordered Unexecuted instantiation: symbols.c:rdtsc_ordered Unexecuted instantiation: stop_machine.c:rdtsc_ordered Unexecuted instantiation: spinlock.c:rdtsc_ordered Unexecuted instantiation: softirq.c:rdtsc_ordered Unexecuted instantiation: shutdown.c:rdtsc_ordered Unexecuted instantiation: schedule.c:rdtsc_ordered Unexecuted instantiation: sched_null.c:rdtsc_ordered Unexecuted instantiation: sched_rt.c:rdtsc_ordered Unexecuted instantiation: sched_credit2.c:rdtsc_ordered Unexecuted instantiation: sched_credit.c:rdtsc_ordered Unexecuted instantiation: sched_arinc653.c:rdtsc_ordered Unexecuted instantiation: rwlock.c:rdtsc_ordered Unexecuted instantiation: rcupdate.c:rdtsc_ordered Unexecuted instantiation: rangeset.c:rdtsc_ordered Unexecuted instantiation: random.c:rdtsc_ordered Unexecuted instantiation: preempt.c:rdtsc_ordered Unexecuted instantiation: page_alloc.c:rdtsc_ordered Unexecuted instantiation: multicall.c:rdtsc_ordered Unexecuted instantiation: monitor.c:rdtsc_ordered Unexecuted instantiation: memory.c:rdtsc_ordered Unexecuted instantiation: mem_access.c:rdtsc_ordered Unexecuted instantiation: kimage.c:rdtsc_ordered Unexecuted instantiation: kexec.c:rdtsc_ordered Unexecuted instantiation: keyhandler.c:rdtsc_ordered Unexecuted instantiation: kernel.c:rdtsc_ordered Unexecuted instantiation: irq.c:rdtsc_ordered Unexecuted instantiation: guestcopy.c:rdtsc_ordered Unexecuted instantiation: grant_table.c:rdtsc_ordered Unexecuted instantiation: event_fifo.c:rdtsc_ordered Unexecuted instantiation: event_channel.c:rdtsc_ordered Unexecuted instantiation: event_2l.c:rdtsc_ordered Unexecuted instantiation: domain.c:rdtsc_ordered Unexecuted instantiation: domctl.c:rdtsc_ordered Unexecuted instantiation: cpu.c:rdtsc_ordered |
109 | | |
110 | 18.4E | #define __write_tsc(val) wrmsrl(MSR_IA32_TSC, val) |
111 | 18.4E | #define write_tsc(val) ({ \ |
112 | 18.4E | /* Reliable TSCs are in lockstep across all CPUs. We should \ |
113 | 18.4E | * never write to them. */ \ |
114 | 18.4E | ASSERT(!boot_cpu_has(X86_FEATURE_TSC_RELIABLE)); \ |
115 | 18.4E | __write_tsc(val); \ |
116 | 18.4E | }) |
117 | | |
118 | 0 | #define write_rdtscp_aux(val) wrmsr(MSR_TSC_AUX, (val), 0) |
119 | | |
120 | | #define rdpmc(counter,low,high) \ |
121 | | __asm__ __volatile__("rdpmc" \ |
122 | | : "=a" (low), "=d" (high) \ |
123 | | : "c" (counter)) |
124 | | |
125 | | static inline unsigned long __rdfsbase(void) |
126 | 0 | { |
127 | 0 | unsigned long base; |
128 | 0 |
|
129 | 0 | #ifdef HAVE_GAS_FSGSBASE |
130 | 0 | asm volatile ( "rdfsbase %0" : "=r" (base) ); |
131 | 0 | #else |
132 | | asm volatile ( ".byte 0xf3, 0x48, 0x0f, 0xae, 0xc0" : "=a" (base) ); |
133 | | #endif |
134 | 0 |
|
135 | 0 | return base; |
136 | 0 | } Unexecuted instantiation: cpupool.c:__rdfsbase Unexecuted instantiation: cpu.c:__rdfsbase Unexecuted instantiation: domctl.c:__rdfsbase Unexecuted instantiation: domain.c:__rdfsbase Unexecuted instantiation: event_2l.c:__rdfsbase Unexecuted instantiation: event_channel.c:__rdfsbase Unexecuted instantiation: event_fifo.c:__rdfsbase Unexecuted instantiation: grant_table.c:__rdfsbase Unexecuted instantiation: guestcopy.c:__rdfsbase Unexecuted instantiation: irq.c:__rdfsbase Unexecuted instantiation: kernel.c:__rdfsbase Unexecuted instantiation: keyhandler.c:__rdfsbase Unexecuted instantiation: kexec.c:__rdfsbase Unexecuted instantiation: kimage.c:__rdfsbase Unexecuted instantiation: mem_access.c:__rdfsbase Unexecuted instantiation: memory.c:__rdfsbase Unexecuted instantiation: monitor.c:__rdfsbase Unexecuted instantiation: multicall.c:__rdfsbase Unexecuted instantiation: page_alloc.c:__rdfsbase Unexecuted instantiation: preempt.c:__rdfsbase Unexecuted instantiation: random.c:__rdfsbase Unexecuted instantiation: rangeset.c:__rdfsbase Unexecuted instantiation: rcupdate.c:__rdfsbase Unexecuted instantiation: rwlock.c:__rdfsbase Unexecuted instantiation: sched_arinc653.c:__rdfsbase Unexecuted instantiation: sched_credit.c:__rdfsbase Unexecuted instantiation: sched_credit2.c:__rdfsbase Unexecuted instantiation: sched_rt.c:__rdfsbase Unexecuted instantiation: sched_null.c:__rdfsbase Unexecuted instantiation: schedule.c:__rdfsbase Unexecuted instantiation: shutdown.c:__rdfsbase Unexecuted instantiation: softirq.c:__rdfsbase Unexecuted instantiation: spinlock.c:__rdfsbase Unexecuted instantiation: stop_machine.c:__rdfsbase Unexecuted instantiation: symbols.c:__rdfsbase Unexecuted instantiation: sysctl.c:__rdfsbase Unexecuted instantiation: tasklet.c:__rdfsbase Unexecuted instantiation: time.c:__rdfsbase Unexecuted instantiation: timer.c:__rdfsbase Unexecuted instantiation: trace.c:__rdfsbase Unexecuted instantiation: vm_event.c:__rdfsbase Unexecuted instantiation: vsprintf.c:__rdfsbase Unexecuted instantiation: wait.c:__rdfsbase Unexecuted instantiation: xenoprof.c:__rdfsbase Unexecuted instantiation: xmalloc_tlsf.c:__rdfsbase Unexecuted instantiation: tmem.c:__rdfsbase Unexecuted instantiation: tmem_xen.c:__rdfsbase Unexecuted instantiation: tmem_control.c:__rdfsbase Unexecuted instantiation: llvm.c:__rdfsbase Unexecuted instantiation: libelf-loader.c:__rdfsbase Unexecuted instantiation: console.c:__rdfsbase Unexecuted instantiation: ns16550.c:__rdfsbase Unexecuted instantiation: ehci-dbgp.c:__rdfsbase Unexecuted instantiation: cpufreq.c:__rdfsbase Unexecuted instantiation: cpufreq_ondemand.c:__rdfsbase Unexecuted instantiation: cpufreq_misc_governors.c:__rdfsbase Unexecuted instantiation: utility.c:__rdfsbase Unexecuted instantiation: pci.c:__rdfsbase Unexecuted instantiation: vpci.c:__rdfsbase Unexecuted instantiation: header.c:__rdfsbase Unexecuted instantiation: msi.c:__rdfsbase Unexecuted instantiation: msix.c:__rdfsbase Unexecuted instantiation: iommu.c:__rdfsbase Unexecuted instantiation: io.c:__rdfsbase Unexecuted instantiation: dmar.c:__rdfsbase Unexecuted instantiation: utils.c:__rdfsbase Unexecuted instantiation: qinval.c:__rdfsbase Unexecuted instantiation: intremap.c:__rdfsbase Unexecuted instantiation: quirks.c:__rdfsbase Unexecuted instantiation: vtd.c:__rdfsbase Unexecuted instantiation: ats.c:__rdfsbase Unexecuted instantiation: iommu_init.c:__rdfsbase Unexecuted instantiation: iommu_map.c:__rdfsbase Unexecuted instantiation: pci_amd_iommu.c:__rdfsbase Unexecuted instantiation: iommu_intr.c:__rdfsbase Unexecuted instantiation: iommu_cmd.c:__rdfsbase Unexecuted instantiation: iommu_guest.c:__rdfsbase Unexecuted instantiation: pmstat.c:__rdfsbase Unexecuted instantiation: reboot.c:__rdfsbase Unexecuted instantiation: erst.c:__rdfsbase Unexecuted instantiation: apei-io.c:__rdfsbase Unexecuted instantiation: vga.c:__rdfsbase Unexecuted instantiation: xsm_core.c:__rdfsbase Unexecuted instantiation: apic.c:__rdfsbase Unexecuted instantiation: cpuid.c:__rdfsbase Unexecuted instantiation: compat.c:__rdfsbase Unexecuted instantiation: crash.c:__rdfsbase Unexecuted instantiation: debug.c:__rdfsbase Unexecuted instantiation: delay.c:__rdfsbase Unexecuted instantiation: domain_page.c:__rdfsbase Unexecuted instantiation: e820.c:__rdfsbase Unexecuted instantiation: flushtlb.c:__rdfsbase Unexecuted instantiation: hypercall.c:__rdfsbase Unexecuted instantiation: i387.c:__rdfsbase Unexecuted instantiation: i8259.c:__rdfsbase Unexecuted instantiation: io_apic.c:__rdfsbase Unexecuted instantiation: msr.c:__rdfsbase Unexecuted instantiation: ioport_emulate.c:__rdfsbase Unexecuted instantiation: machine_kexec.c:__rdfsbase Unexecuted instantiation: microcode_amd.c:__rdfsbase Unexecuted instantiation: microcode_intel.c:__rdfsbase Unexecuted instantiation: microcode.c:__rdfsbase Unexecuted instantiation: mm.c:__rdfsbase Unexecuted instantiation: mpparse.c:__rdfsbase Unexecuted instantiation: nmi.c:__rdfsbase Unexecuted instantiation: numa.c:__rdfsbase Unexecuted instantiation: physdev.c:__rdfsbase Unexecuted instantiation: platform_hypercall.c:__rdfsbase Unexecuted instantiation: psr.c:__rdfsbase Unexecuted instantiation: setup.c:__rdfsbase Unexecuted instantiation: smp.c:__rdfsbase Unexecuted instantiation: smpboot.c:__rdfsbase Unexecuted instantiation: traps.c:__rdfsbase Unexecuted instantiation: usercopy.c:__rdfsbase Unexecuted instantiation: x86_emulate.c:__rdfsbase Unexecuted instantiation: tboot.c:__rdfsbase Unexecuted instantiation: hpet.c:__rdfsbase Unexecuted instantiation: xstate.c:__rdfsbase Unexecuted instantiation: lib.c:__rdfsbase Unexecuted instantiation: power.c:__rdfsbase Unexecuted instantiation: suspend.c:__rdfsbase Unexecuted instantiation: cpu_idle.c:__rdfsbase Unexecuted instantiation: cpuidle_menu.c:__rdfsbase Unexecuted instantiation: powernow.c:__rdfsbase Unexecuted instantiation: amd.c:__rdfsbase Unexecuted instantiation: centaur.c:__rdfsbase Unexecuted instantiation: common.c:__rdfsbase Unexecuted instantiation: intel.c:__rdfsbase Unexecuted instantiation: mwait-idle.c:__rdfsbase Unexecuted instantiation: vpmu.c:__rdfsbase Unexecuted instantiation: vpmu_amd.c:__rdfsbase Unexecuted instantiation: vpmu_intel.c:__rdfsbase Unexecuted instantiation: amd_nonfatal.c:__rdfsbase Unexecuted instantiation: mce_amd.c:__rdfsbase Unexecuted instantiation: mcaction.c:__rdfsbase Unexecuted instantiation: barrier.c:__rdfsbase Unexecuted instantiation: mctelem.c:__rdfsbase Unexecuted instantiation: mce.c:__rdfsbase Unexecuted instantiation: mce-apei.c:__rdfsbase Unexecuted instantiation: mce_intel.c:__rdfsbase Unexecuted instantiation: non-fatal.c:__rdfsbase Unexecuted instantiation: util.c:__rdfsbase Unexecuted instantiation: vmce.c:__rdfsbase Unexecuted instantiation: generic.c:__rdfsbase Unexecuted instantiation: main.c:__rdfsbase Unexecuted instantiation: bigsmp.c:__rdfsbase Unexecuted instantiation: x2apic.c:__rdfsbase Unexecuted instantiation: default.c:__rdfsbase Unexecuted instantiation: delivery.c:__rdfsbase Unexecuted instantiation: probe.c:__rdfsbase Unexecuted instantiation: asid.c:__rdfsbase Unexecuted instantiation: dm.c:__rdfsbase Unexecuted instantiation: emulate.c:__rdfsbase Unexecuted instantiation: hvm.c:__rdfsbase Unexecuted instantiation: i8254.c:__rdfsbase Unexecuted instantiation: intercept.c:__rdfsbase Unexecuted instantiation: ioreq.c:__rdfsbase Unexecuted instantiation: mtrr.c:__rdfsbase Unexecuted instantiation: nestedhvm.c:__rdfsbase Unexecuted instantiation: pmtimer.c:__rdfsbase Unexecuted instantiation: rtc.c:__rdfsbase Unexecuted instantiation: save.c:__rdfsbase Unexecuted instantiation: stdvga.c:__rdfsbase Unexecuted instantiation: vioapic.c:__rdfsbase Unexecuted instantiation: viridian.c:__rdfsbase Unexecuted instantiation: vlapic.c:__rdfsbase Unexecuted instantiation: vmsi.c:__rdfsbase Unexecuted instantiation: vpic.c:__rdfsbase Unexecuted instantiation: vpt.c:__rdfsbase Unexecuted instantiation: intr.c:__rdfsbase Unexecuted instantiation: nestedsvm.c:__rdfsbase Unexecuted instantiation: svm.c:__rdfsbase Unexecuted instantiation: svmdebug.c:__rdfsbase Unexecuted instantiation: vmcb.c:__rdfsbase Unexecuted instantiation: realmode.c:__rdfsbase Unexecuted instantiation: vmcs.c:__rdfsbase Unexecuted instantiation: vmx.c:__rdfsbase Unexecuted instantiation: vvmx.c:__rdfsbase Unexecuted instantiation: paging.c:__rdfsbase Unexecuted instantiation: p2m.c:__rdfsbase Unexecuted instantiation: p2m-pt.c:__rdfsbase Unexecuted instantiation: p2m-ept.c:__rdfsbase Unexecuted instantiation: p2m-pod.c:__rdfsbase Unexecuted instantiation: altp2m.c:__rdfsbase Unexecuted instantiation: guest_walk.c:__rdfsbase Unexecuted instantiation: mem_paging.c:__rdfsbase Unexecuted instantiation: mem_sharing.c:__rdfsbase Unexecuted instantiation: multi.c:__rdfsbase Unexecuted instantiation: hap.c:__rdfsbase Unexecuted instantiation: nested_hap.c:__rdfsbase Unexecuted instantiation: nested_ept.c:__rdfsbase Unexecuted instantiation: nmi_int.c:__rdfsbase Unexecuted instantiation: op_model_p4.c:__rdfsbase Unexecuted instantiation: op_model_ppro.c:__rdfsbase Unexecuted instantiation: op_model_athlon.c:__rdfsbase Unexecuted instantiation: backtrace.c:__rdfsbase Unexecuted instantiation: callback.c:__rdfsbase Unexecuted instantiation: descriptor-tables.c:__rdfsbase Unexecuted instantiation: emul-gate-op.c:__rdfsbase Unexecuted instantiation: emul-inv-op.c:__rdfsbase Unexecuted instantiation: emul-priv-op.c:__rdfsbase Unexecuted instantiation: iret.c:__rdfsbase Unexecuted instantiation: misc-hypercalls.c:__rdfsbase Unexecuted instantiation: ro-page-fault.c:__rdfsbase Unexecuted instantiation: acpi_mmcfg.c:__rdfsbase Unexecuted instantiation: mmconf-fam10h.c:__rdfsbase Unexecuted instantiation: mmconfig_64.c:__rdfsbase Unexecuted instantiation: mmconfig-shared.c:__rdfsbase |
137 | | |
138 | | static inline unsigned long __rdgsbase(void) |
139 | 0 | { |
140 | 0 | unsigned long base; |
141 | 0 |
|
142 | 0 | #ifdef HAVE_GAS_FSGSBASE |
143 | 0 | asm volatile ( "rdgsbase %0" : "=r" (base) ); |
144 | 0 | #else |
145 | | asm volatile ( ".byte 0xf3, 0x48, 0x0f, 0xae, 0xc8" : "=a" (base) ); |
146 | | #endif |
147 | 0 |
|
148 | 0 | return base; |
149 | 0 | } Unexecuted instantiation: cpu.c:__rdgsbase Unexecuted instantiation: cpupool.c:__rdgsbase Unexecuted instantiation: domctl.c:__rdgsbase Unexecuted instantiation: domain.c:__rdgsbase Unexecuted instantiation: event_2l.c:__rdgsbase Unexecuted instantiation: event_channel.c:__rdgsbase Unexecuted instantiation: event_fifo.c:__rdgsbase Unexecuted instantiation: grant_table.c:__rdgsbase Unexecuted instantiation: guestcopy.c:__rdgsbase Unexecuted instantiation: irq.c:__rdgsbase Unexecuted instantiation: kernel.c:__rdgsbase Unexecuted instantiation: keyhandler.c:__rdgsbase Unexecuted instantiation: kexec.c:__rdgsbase Unexecuted instantiation: kimage.c:__rdgsbase Unexecuted instantiation: mem_access.c:__rdgsbase Unexecuted instantiation: memory.c:__rdgsbase Unexecuted instantiation: monitor.c:__rdgsbase Unexecuted instantiation: multicall.c:__rdgsbase Unexecuted instantiation: page_alloc.c:__rdgsbase Unexecuted instantiation: preempt.c:__rdgsbase Unexecuted instantiation: random.c:__rdgsbase Unexecuted instantiation: rangeset.c:__rdgsbase Unexecuted instantiation: rcupdate.c:__rdgsbase Unexecuted instantiation: rwlock.c:__rdgsbase Unexecuted instantiation: sched_arinc653.c:__rdgsbase Unexecuted instantiation: sched_credit.c:__rdgsbase Unexecuted instantiation: sched_credit2.c:__rdgsbase Unexecuted instantiation: sched_rt.c:__rdgsbase Unexecuted instantiation: sched_null.c:__rdgsbase Unexecuted instantiation: schedule.c:__rdgsbase Unexecuted instantiation: shutdown.c:__rdgsbase Unexecuted instantiation: softirq.c:__rdgsbase Unexecuted instantiation: spinlock.c:__rdgsbase Unexecuted instantiation: stop_machine.c:__rdgsbase Unexecuted instantiation: symbols.c:__rdgsbase Unexecuted instantiation: sysctl.c:__rdgsbase Unexecuted instantiation: tasklet.c:__rdgsbase Unexecuted instantiation: time.c:__rdgsbase Unexecuted instantiation: timer.c:__rdgsbase Unexecuted instantiation: trace.c:__rdgsbase Unexecuted instantiation: vm_event.c:__rdgsbase Unexecuted instantiation: vsprintf.c:__rdgsbase Unexecuted instantiation: wait.c:__rdgsbase Unexecuted instantiation: xenoprof.c:__rdgsbase Unexecuted instantiation: xmalloc_tlsf.c:__rdgsbase Unexecuted instantiation: tmem.c:__rdgsbase Unexecuted instantiation: tmem_xen.c:__rdgsbase Unexecuted instantiation: tmem_control.c:__rdgsbase Unexecuted instantiation: llvm.c:__rdgsbase Unexecuted instantiation: libelf-loader.c:__rdgsbase Unexecuted instantiation: console.c:__rdgsbase Unexecuted instantiation: ns16550.c:__rdgsbase Unexecuted instantiation: ehci-dbgp.c:__rdgsbase Unexecuted instantiation: cpufreq.c:__rdgsbase Unexecuted instantiation: cpufreq_ondemand.c:__rdgsbase Unexecuted instantiation: cpufreq_misc_governors.c:__rdgsbase Unexecuted instantiation: utility.c:__rdgsbase Unexecuted instantiation: pci.c:__rdgsbase Unexecuted instantiation: vpci.c:__rdgsbase Unexecuted instantiation: header.c:__rdgsbase Unexecuted instantiation: msi.c:__rdgsbase Unexecuted instantiation: msix.c:__rdgsbase Unexecuted instantiation: iommu.c:__rdgsbase Unexecuted instantiation: io.c:__rdgsbase Unexecuted instantiation: dmar.c:__rdgsbase Unexecuted instantiation: utils.c:__rdgsbase Unexecuted instantiation: qinval.c:__rdgsbase Unexecuted instantiation: intremap.c:__rdgsbase Unexecuted instantiation: quirks.c:__rdgsbase Unexecuted instantiation: vtd.c:__rdgsbase Unexecuted instantiation: ats.c:__rdgsbase Unexecuted instantiation: iommu_init.c:__rdgsbase Unexecuted instantiation: iommu_map.c:__rdgsbase Unexecuted instantiation: pci_amd_iommu.c:__rdgsbase Unexecuted instantiation: iommu_intr.c:__rdgsbase Unexecuted instantiation: iommu_cmd.c:__rdgsbase Unexecuted instantiation: iommu_guest.c:__rdgsbase Unexecuted instantiation: pmstat.c:__rdgsbase Unexecuted instantiation: reboot.c:__rdgsbase Unexecuted instantiation: erst.c:__rdgsbase Unexecuted instantiation: apei-io.c:__rdgsbase Unexecuted instantiation: vga.c:__rdgsbase Unexecuted instantiation: xsm_core.c:__rdgsbase Unexecuted instantiation: apic.c:__rdgsbase Unexecuted instantiation: cpuid.c:__rdgsbase Unexecuted instantiation: compat.c:__rdgsbase Unexecuted instantiation: crash.c:__rdgsbase Unexecuted instantiation: debug.c:__rdgsbase Unexecuted instantiation: delay.c:__rdgsbase Unexecuted instantiation: domain_page.c:__rdgsbase Unexecuted instantiation: e820.c:__rdgsbase Unexecuted instantiation: flushtlb.c:__rdgsbase Unexecuted instantiation: hypercall.c:__rdgsbase Unexecuted instantiation: i387.c:__rdgsbase Unexecuted instantiation: i8259.c:__rdgsbase Unexecuted instantiation: io_apic.c:__rdgsbase Unexecuted instantiation: msr.c:__rdgsbase Unexecuted instantiation: ioport_emulate.c:__rdgsbase Unexecuted instantiation: machine_kexec.c:__rdgsbase Unexecuted instantiation: microcode_amd.c:__rdgsbase Unexecuted instantiation: microcode_intel.c:__rdgsbase Unexecuted instantiation: microcode.c:__rdgsbase Unexecuted instantiation: mm.c:__rdgsbase Unexecuted instantiation: mpparse.c:__rdgsbase Unexecuted instantiation: nmi.c:__rdgsbase Unexecuted instantiation: numa.c:__rdgsbase Unexecuted instantiation: physdev.c:__rdgsbase Unexecuted instantiation: platform_hypercall.c:__rdgsbase Unexecuted instantiation: psr.c:__rdgsbase Unexecuted instantiation: setup.c:__rdgsbase Unexecuted instantiation: smp.c:__rdgsbase Unexecuted instantiation: smpboot.c:__rdgsbase Unexecuted instantiation: traps.c:__rdgsbase Unexecuted instantiation: usercopy.c:__rdgsbase Unexecuted instantiation: x86_emulate.c:__rdgsbase Unexecuted instantiation: tboot.c:__rdgsbase Unexecuted instantiation: hpet.c:__rdgsbase Unexecuted instantiation: xstate.c:__rdgsbase Unexecuted instantiation: lib.c:__rdgsbase Unexecuted instantiation: power.c:__rdgsbase Unexecuted instantiation: suspend.c:__rdgsbase Unexecuted instantiation: cpu_idle.c:__rdgsbase Unexecuted instantiation: cpuidle_menu.c:__rdgsbase Unexecuted instantiation: powernow.c:__rdgsbase Unexecuted instantiation: amd.c:__rdgsbase Unexecuted instantiation: centaur.c:__rdgsbase Unexecuted instantiation: common.c:__rdgsbase Unexecuted instantiation: intel.c:__rdgsbase Unexecuted instantiation: mwait-idle.c:__rdgsbase Unexecuted instantiation: vpmu.c:__rdgsbase Unexecuted instantiation: vpmu_amd.c:__rdgsbase Unexecuted instantiation: vpmu_intel.c:__rdgsbase Unexecuted instantiation: amd_nonfatal.c:__rdgsbase Unexecuted instantiation: mce_amd.c:__rdgsbase Unexecuted instantiation: mcaction.c:__rdgsbase Unexecuted instantiation: barrier.c:__rdgsbase Unexecuted instantiation: mctelem.c:__rdgsbase Unexecuted instantiation: mce.c:__rdgsbase Unexecuted instantiation: mce-apei.c:__rdgsbase Unexecuted instantiation: mce_intel.c:__rdgsbase Unexecuted instantiation: non-fatal.c:__rdgsbase Unexecuted instantiation: util.c:__rdgsbase Unexecuted instantiation: vmce.c:__rdgsbase Unexecuted instantiation: generic.c:__rdgsbase Unexecuted instantiation: main.c:__rdgsbase Unexecuted instantiation: bigsmp.c:__rdgsbase Unexecuted instantiation: x2apic.c:__rdgsbase Unexecuted instantiation: default.c:__rdgsbase Unexecuted instantiation: delivery.c:__rdgsbase Unexecuted instantiation: probe.c:__rdgsbase Unexecuted instantiation: asid.c:__rdgsbase Unexecuted instantiation: dm.c:__rdgsbase Unexecuted instantiation: emulate.c:__rdgsbase Unexecuted instantiation: hvm.c:__rdgsbase Unexecuted instantiation: i8254.c:__rdgsbase Unexecuted instantiation: intercept.c:__rdgsbase Unexecuted instantiation: ioreq.c:__rdgsbase Unexecuted instantiation: mtrr.c:__rdgsbase Unexecuted instantiation: nestedhvm.c:__rdgsbase Unexecuted instantiation: pmtimer.c:__rdgsbase Unexecuted instantiation: rtc.c:__rdgsbase Unexecuted instantiation: save.c:__rdgsbase Unexecuted instantiation: stdvga.c:__rdgsbase Unexecuted instantiation: vioapic.c:__rdgsbase Unexecuted instantiation: viridian.c:__rdgsbase Unexecuted instantiation: vlapic.c:__rdgsbase Unexecuted instantiation: vmsi.c:__rdgsbase Unexecuted instantiation: vpic.c:__rdgsbase Unexecuted instantiation: vpt.c:__rdgsbase Unexecuted instantiation: intr.c:__rdgsbase Unexecuted instantiation: nestedsvm.c:__rdgsbase Unexecuted instantiation: svm.c:__rdgsbase Unexecuted instantiation: svmdebug.c:__rdgsbase Unexecuted instantiation: vmcb.c:__rdgsbase Unexecuted instantiation: realmode.c:__rdgsbase Unexecuted instantiation: vmcs.c:__rdgsbase Unexecuted instantiation: vmx.c:__rdgsbase Unexecuted instantiation: vvmx.c:__rdgsbase Unexecuted instantiation: paging.c:__rdgsbase Unexecuted instantiation: p2m.c:__rdgsbase Unexecuted instantiation: p2m-pt.c:__rdgsbase Unexecuted instantiation: p2m-ept.c:__rdgsbase Unexecuted instantiation: p2m-pod.c:__rdgsbase Unexecuted instantiation: altp2m.c:__rdgsbase Unexecuted instantiation: guest_walk.c:__rdgsbase Unexecuted instantiation: mem_paging.c:__rdgsbase Unexecuted instantiation: mem_sharing.c:__rdgsbase Unexecuted instantiation: multi.c:__rdgsbase Unexecuted instantiation: hap.c:__rdgsbase Unexecuted instantiation: nested_hap.c:__rdgsbase Unexecuted instantiation: nested_ept.c:__rdgsbase Unexecuted instantiation: nmi_int.c:__rdgsbase Unexecuted instantiation: op_model_p4.c:__rdgsbase Unexecuted instantiation: op_model_ppro.c:__rdgsbase Unexecuted instantiation: op_model_athlon.c:__rdgsbase Unexecuted instantiation: backtrace.c:__rdgsbase Unexecuted instantiation: callback.c:__rdgsbase Unexecuted instantiation: descriptor-tables.c:__rdgsbase Unexecuted instantiation: emul-gate-op.c:__rdgsbase Unexecuted instantiation: emul-inv-op.c:__rdgsbase Unexecuted instantiation: emul-priv-op.c:__rdgsbase Unexecuted instantiation: iret.c:__rdgsbase Unexecuted instantiation: misc-hypercalls.c:__rdgsbase Unexecuted instantiation: ro-page-fault.c:__rdgsbase Unexecuted instantiation: acpi_mmcfg.c:__rdgsbase Unexecuted instantiation: mmconf-fam10h.c:__rdgsbase Unexecuted instantiation: mmconfig_64.c:__rdgsbase Unexecuted instantiation: mmconfig-shared.c:__rdgsbase |
150 | | |
151 | | static inline unsigned long rdfsbase(void) |
152 | 0 | { |
153 | 0 | unsigned long base; |
154 | 0 |
|
155 | 0 | if ( cpu_has_fsgsbase ) |
156 | 0 | return __rdfsbase(); |
157 | 0 |
|
158 | 0 | rdmsrl(MSR_FS_BASE, base); |
159 | 0 |
|
160 | 0 | return base; |
161 | 0 | } Unexecuted instantiation: mpparse.c:rdfsbase Unexecuted instantiation: cpu.c:rdfsbase Unexecuted instantiation: mmconfig-shared.c:rdfsbase Unexecuted instantiation: mmconfig_64.c:rdfsbase Unexecuted instantiation: mmconf-fam10h.c:rdfsbase Unexecuted instantiation: acpi_mmcfg.c:rdfsbase Unexecuted instantiation: ro-page-fault.c:rdfsbase Unexecuted instantiation: misc-hypercalls.c:rdfsbase Unexecuted instantiation: iret.c:rdfsbase Unexecuted instantiation: emul-priv-op.c:rdfsbase Unexecuted instantiation: emul-inv-op.c:rdfsbase Unexecuted instantiation: emul-gate-op.c:rdfsbase Unexecuted instantiation: descriptor-tables.c:rdfsbase Unexecuted instantiation: callback.c:rdfsbase Unexecuted instantiation: backtrace.c:rdfsbase Unexecuted instantiation: op_model_athlon.c:rdfsbase Unexecuted instantiation: op_model_ppro.c:rdfsbase Unexecuted instantiation: op_model_p4.c:rdfsbase Unexecuted instantiation: nmi_int.c:rdfsbase Unexecuted instantiation: nested_ept.c:rdfsbase Unexecuted instantiation: nested_hap.c:rdfsbase Unexecuted instantiation: hap.c:rdfsbase Unexecuted instantiation: multi.c:rdfsbase Unexecuted instantiation: mem_sharing.c:rdfsbase Unexecuted instantiation: mem_paging.c:rdfsbase Unexecuted instantiation: guest_walk.c:rdfsbase Unexecuted instantiation: altp2m.c:rdfsbase Unexecuted instantiation: p2m-pod.c:rdfsbase Unexecuted instantiation: p2m-ept.c:rdfsbase Unexecuted instantiation: p2m-pt.c:rdfsbase Unexecuted instantiation: p2m.c:rdfsbase Unexecuted instantiation: paging.c:rdfsbase Unexecuted instantiation: vvmx.c:rdfsbase Unexecuted instantiation: vmx.c:rdfsbase Unexecuted instantiation: vmcs.c:rdfsbase Unexecuted instantiation: realmode.c:rdfsbase Unexecuted instantiation: vmcb.c:rdfsbase Unexecuted instantiation: svmdebug.c:rdfsbase Unexecuted instantiation: svm.c:rdfsbase Unexecuted instantiation: nestedsvm.c:rdfsbase Unexecuted instantiation: intr.c:rdfsbase Unexecuted instantiation: vpt.c:rdfsbase Unexecuted instantiation: vpic.c:rdfsbase Unexecuted instantiation: vmsi.c:rdfsbase Unexecuted instantiation: vlapic.c:rdfsbase Unexecuted instantiation: viridian.c:rdfsbase Unexecuted instantiation: vioapic.c:rdfsbase Unexecuted instantiation: stdvga.c:rdfsbase Unexecuted instantiation: save.c:rdfsbase Unexecuted instantiation: rtc.c:rdfsbase Unexecuted instantiation: pmtimer.c:rdfsbase Unexecuted instantiation: nestedhvm.c:rdfsbase Unexecuted instantiation: mtrr.c:rdfsbase Unexecuted instantiation: ioreq.c:rdfsbase Unexecuted instantiation: intercept.c:rdfsbase Unexecuted instantiation: i8254.c:rdfsbase Unexecuted instantiation: hvm.c:rdfsbase Unexecuted instantiation: emulate.c:rdfsbase Unexecuted instantiation: dm.c:rdfsbase Unexecuted instantiation: asid.c:rdfsbase Unexecuted instantiation: probe.c:rdfsbase Unexecuted instantiation: delivery.c:rdfsbase Unexecuted instantiation: default.c:rdfsbase Unexecuted instantiation: x2apic.c:rdfsbase Unexecuted instantiation: bigsmp.c:rdfsbase Unexecuted instantiation: main.c:rdfsbase Unexecuted instantiation: generic.c:rdfsbase Unexecuted instantiation: vmce.c:rdfsbase Unexecuted instantiation: util.c:rdfsbase Unexecuted instantiation: non-fatal.c:rdfsbase Unexecuted instantiation: mce_intel.c:rdfsbase Unexecuted instantiation: mce-apei.c:rdfsbase Unexecuted instantiation: mce.c:rdfsbase Unexecuted instantiation: mctelem.c:rdfsbase Unexecuted instantiation: barrier.c:rdfsbase Unexecuted instantiation: mcaction.c:rdfsbase Unexecuted instantiation: mce_amd.c:rdfsbase Unexecuted instantiation: amd_nonfatal.c:rdfsbase Unexecuted instantiation: vpmu_intel.c:rdfsbase Unexecuted instantiation: vpmu_amd.c:rdfsbase Unexecuted instantiation: vpmu.c:rdfsbase Unexecuted instantiation: mwait-idle.c:rdfsbase Unexecuted instantiation: intel.c:rdfsbase Unexecuted instantiation: common.c:rdfsbase Unexecuted instantiation: centaur.c:rdfsbase Unexecuted instantiation: amd.c:rdfsbase Unexecuted instantiation: powernow.c:rdfsbase Unexecuted instantiation: cpuidle_menu.c:rdfsbase Unexecuted instantiation: cpu_idle.c:rdfsbase Unexecuted instantiation: suspend.c:rdfsbase Unexecuted instantiation: power.c:rdfsbase Unexecuted instantiation: lib.c:rdfsbase Unexecuted instantiation: xstate.c:rdfsbase Unexecuted instantiation: hpet.c:rdfsbase Unexecuted instantiation: tboot.c:rdfsbase Unexecuted instantiation: x86_emulate.c:rdfsbase Unexecuted instantiation: usercopy.c:rdfsbase Unexecuted instantiation: traps.c:rdfsbase Unexecuted instantiation: smpboot.c:rdfsbase Unexecuted instantiation: smp.c:rdfsbase Unexecuted instantiation: setup.c:rdfsbase Unexecuted instantiation: psr.c:rdfsbase Unexecuted instantiation: platform_hypercall.c:rdfsbase Unexecuted instantiation: physdev.c:rdfsbase Unexecuted instantiation: numa.c:rdfsbase Unexecuted instantiation: nmi.c:rdfsbase Unexecuted instantiation: cpupool.c:rdfsbase Unexecuted instantiation: mm.c:rdfsbase Unexecuted instantiation: microcode.c:rdfsbase Unexecuted instantiation: microcode_intel.c:rdfsbase Unexecuted instantiation: microcode_amd.c:rdfsbase Unexecuted instantiation: machine_kexec.c:rdfsbase Unexecuted instantiation: ioport_emulate.c:rdfsbase Unexecuted instantiation: msr.c:rdfsbase Unexecuted instantiation: io_apic.c:rdfsbase Unexecuted instantiation: i8259.c:rdfsbase Unexecuted instantiation: i387.c:rdfsbase Unexecuted instantiation: hypercall.c:rdfsbase Unexecuted instantiation: flushtlb.c:rdfsbase Unexecuted instantiation: e820.c:rdfsbase Unexecuted instantiation: domain_page.c:rdfsbase Unexecuted instantiation: delay.c:rdfsbase Unexecuted instantiation: debug.c:rdfsbase Unexecuted instantiation: crash.c:rdfsbase Unexecuted instantiation: compat.c:rdfsbase Unexecuted instantiation: cpuid.c:rdfsbase Unexecuted instantiation: apic.c:rdfsbase Unexecuted instantiation: xsm_core.c:rdfsbase Unexecuted instantiation: vga.c:rdfsbase Unexecuted instantiation: apei-io.c:rdfsbase Unexecuted instantiation: erst.c:rdfsbase Unexecuted instantiation: reboot.c:rdfsbase Unexecuted instantiation: pmstat.c:rdfsbase Unexecuted instantiation: iommu_guest.c:rdfsbase Unexecuted instantiation: iommu_cmd.c:rdfsbase Unexecuted instantiation: iommu_intr.c:rdfsbase Unexecuted instantiation: pci_amd_iommu.c:rdfsbase Unexecuted instantiation: iommu_map.c:rdfsbase Unexecuted instantiation: iommu_init.c:rdfsbase Unexecuted instantiation: ats.c:rdfsbase Unexecuted instantiation: vtd.c:rdfsbase Unexecuted instantiation: quirks.c:rdfsbase Unexecuted instantiation: intremap.c:rdfsbase Unexecuted instantiation: qinval.c:rdfsbase Unexecuted instantiation: utils.c:rdfsbase Unexecuted instantiation: dmar.c:rdfsbase Unexecuted instantiation: io.c:rdfsbase Unexecuted instantiation: iommu.c:rdfsbase Unexecuted instantiation: msix.c:rdfsbase Unexecuted instantiation: msi.c:rdfsbase Unexecuted instantiation: header.c:rdfsbase Unexecuted instantiation: vpci.c:rdfsbase Unexecuted instantiation: pci.c:rdfsbase Unexecuted instantiation: utility.c:rdfsbase Unexecuted instantiation: cpufreq_misc_governors.c:rdfsbase Unexecuted instantiation: cpufreq_ondemand.c:rdfsbase Unexecuted instantiation: cpufreq.c:rdfsbase Unexecuted instantiation: ehci-dbgp.c:rdfsbase Unexecuted instantiation: ns16550.c:rdfsbase Unexecuted instantiation: console.c:rdfsbase Unexecuted instantiation: libelf-loader.c:rdfsbase Unexecuted instantiation: llvm.c:rdfsbase Unexecuted instantiation: tmem_control.c:rdfsbase Unexecuted instantiation: tmem_xen.c:rdfsbase Unexecuted instantiation: tmem.c:rdfsbase Unexecuted instantiation: xmalloc_tlsf.c:rdfsbase Unexecuted instantiation: xenoprof.c:rdfsbase Unexecuted instantiation: wait.c:rdfsbase Unexecuted instantiation: vsprintf.c:rdfsbase Unexecuted instantiation: vm_event.c:rdfsbase Unexecuted instantiation: trace.c:rdfsbase Unexecuted instantiation: timer.c:rdfsbase Unexecuted instantiation: time.c:rdfsbase Unexecuted instantiation: tasklet.c:rdfsbase Unexecuted instantiation: sysctl.c:rdfsbase Unexecuted instantiation: symbols.c:rdfsbase Unexecuted instantiation: stop_machine.c:rdfsbase Unexecuted instantiation: spinlock.c:rdfsbase Unexecuted instantiation: softirq.c:rdfsbase Unexecuted instantiation: shutdown.c:rdfsbase Unexecuted instantiation: schedule.c:rdfsbase Unexecuted instantiation: sched_null.c:rdfsbase Unexecuted instantiation: sched_rt.c:rdfsbase Unexecuted instantiation: sched_credit2.c:rdfsbase Unexecuted instantiation: sched_credit.c:rdfsbase Unexecuted instantiation: sched_arinc653.c:rdfsbase Unexecuted instantiation: rwlock.c:rdfsbase Unexecuted instantiation: rcupdate.c:rdfsbase Unexecuted instantiation: rangeset.c:rdfsbase Unexecuted instantiation: random.c:rdfsbase Unexecuted instantiation: preempt.c:rdfsbase Unexecuted instantiation: page_alloc.c:rdfsbase Unexecuted instantiation: multicall.c:rdfsbase Unexecuted instantiation: monitor.c:rdfsbase Unexecuted instantiation: memory.c:rdfsbase Unexecuted instantiation: mem_access.c:rdfsbase Unexecuted instantiation: kimage.c:rdfsbase Unexecuted instantiation: kexec.c:rdfsbase Unexecuted instantiation: keyhandler.c:rdfsbase Unexecuted instantiation: kernel.c:rdfsbase Unexecuted instantiation: irq.c:rdfsbase Unexecuted instantiation: guestcopy.c:rdfsbase Unexecuted instantiation: grant_table.c:rdfsbase Unexecuted instantiation: event_fifo.c:rdfsbase Unexecuted instantiation: event_channel.c:rdfsbase Unexecuted instantiation: event_2l.c:rdfsbase Unexecuted instantiation: domain.c:rdfsbase Unexecuted instantiation: domctl.c:rdfsbase |
162 | | |
163 | | static inline unsigned long rdgsbase(void) |
164 | 0 | { |
165 | 0 | unsigned long base; |
166 | 0 |
|
167 | 0 | if ( cpu_has_fsgsbase ) |
168 | 0 | return __rdgsbase(); |
169 | 0 |
|
170 | 0 | rdmsrl(MSR_GS_BASE, base); |
171 | 0 |
|
172 | 0 | return base; |
173 | 0 | } Unexecuted instantiation: cpupool.c:rdgsbase Unexecuted instantiation: mmconfig-shared.c:rdgsbase Unexecuted instantiation: mmconfig_64.c:rdgsbase Unexecuted instantiation: mmconf-fam10h.c:rdgsbase Unexecuted instantiation: acpi_mmcfg.c:rdgsbase Unexecuted instantiation: ro-page-fault.c:rdgsbase Unexecuted instantiation: misc-hypercalls.c:rdgsbase Unexecuted instantiation: iret.c:rdgsbase Unexecuted instantiation: emul-priv-op.c:rdgsbase Unexecuted instantiation: emul-inv-op.c:rdgsbase Unexecuted instantiation: emul-gate-op.c:rdgsbase Unexecuted instantiation: descriptor-tables.c:rdgsbase Unexecuted instantiation: callback.c:rdgsbase Unexecuted instantiation: backtrace.c:rdgsbase Unexecuted instantiation: op_model_athlon.c:rdgsbase Unexecuted instantiation: op_model_ppro.c:rdgsbase Unexecuted instantiation: op_model_p4.c:rdgsbase Unexecuted instantiation: nmi_int.c:rdgsbase Unexecuted instantiation: nested_ept.c:rdgsbase Unexecuted instantiation: nested_hap.c:rdgsbase Unexecuted instantiation: hap.c:rdgsbase Unexecuted instantiation: multi.c:rdgsbase Unexecuted instantiation: mem_sharing.c:rdgsbase Unexecuted instantiation: mem_paging.c:rdgsbase Unexecuted instantiation: guest_walk.c:rdgsbase Unexecuted instantiation: altp2m.c:rdgsbase Unexecuted instantiation: p2m-pod.c:rdgsbase Unexecuted instantiation: p2m-ept.c:rdgsbase Unexecuted instantiation: p2m-pt.c:rdgsbase Unexecuted instantiation: p2m.c:rdgsbase Unexecuted instantiation: paging.c:rdgsbase Unexecuted instantiation: vvmx.c:rdgsbase Unexecuted instantiation: vmx.c:rdgsbase Unexecuted instantiation: vmcs.c:rdgsbase Unexecuted instantiation: realmode.c:rdgsbase Unexecuted instantiation: vmcb.c:rdgsbase Unexecuted instantiation: svmdebug.c:rdgsbase Unexecuted instantiation: svm.c:rdgsbase Unexecuted instantiation: nestedsvm.c:rdgsbase Unexecuted instantiation: intr.c:rdgsbase Unexecuted instantiation: vpt.c:rdgsbase Unexecuted instantiation: vpic.c:rdgsbase Unexecuted instantiation: vmsi.c:rdgsbase Unexecuted instantiation: vlapic.c:rdgsbase Unexecuted instantiation: viridian.c:rdgsbase Unexecuted instantiation: vioapic.c:rdgsbase Unexecuted instantiation: stdvga.c:rdgsbase Unexecuted instantiation: save.c:rdgsbase Unexecuted instantiation: rtc.c:rdgsbase Unexecuted instantiation: pmtimer.c:rdgsbase Unexecuted instantiation: nestedhvm.c:rdgsbase Unexecuted instantiation: mtrr.c:rdgsbase Unexecuted instantiation: ioreq.c:rdgsbase Unexecuted instantiation: intercept.c:rdgsbase Unexecuted instantiation: i8254.c:rdgsbase Unexecuted instantiation: hvm.c:rdgsbase Unexecuted instantiation: emulate.c:rdgsbase Unexecuted instantiation: dm.c:rdgsbase Unexecuted instantiation: asid.c:rdgsbase Unexecuted instantiation: probe.c:rdgsbase Unexecuted instantiation: delivery.c:rdgsbase Unexecuted instantiation: default.c:rdgsbase Unexecuted instantiation: x2apic.c:rdgsbase Unexecuted instantiation: bigsmp.c:rdgsbase Unexecuted instantiation: main.c:rdgsbase Unexecuted instantiation: generic.c:rdgsbase Unexecuted instantiation: vmce.c:rdgsbase Unexecuted instantiation: util.c:rdgsbase Unexecuted instantiation: non-fatal.c:rdgsbase Unexecuted instantiation: mce_intel.c:rdgsbase Unexecuted instantiation: mce-apei.c:rdgsbase Unexecuted instantiation: mce.c:rdgsbase Unexecuted instantiation: mctelem.c:rdgsbase Unexecuted instantiation: barrier.c:rdgsbase Unexecuted instantiation: mcaction.c:rdgsbase Unexecuted instantiation: mce_amd.c:rdgsbase Unexecuted instantiation: amd_nonfatal.c:rdgsbase Unexecuted instantiation: vpmu_intel.c:rdgsbase Unexecuted instantiation: vpmu_amd.c:rdgsbase Unexecuted instantiation: vpmu.c:rdgsbase Unexecuted instantiation: mwait-idle.c:rdgsbase Unexecuted instantiation: intel.c:rdgsbase Unexecuted instantiation: common.c:rdgsbase Unexecuted instantiation: centaur.c:rdgsbase Unexecuted instantiation: amd.c:rdgsbase Unexecuted instantiation: powernow.c:rdgsbase Unexecuted instantiation: cpuidle_menu.c:rdgsbase Unexecuted instantiation: cpu_idle.c:rdgsbase Unexecuted instantiation: suspend.c:rdgsbase Unexecuted instantiation: power.c:rdgsbase Unexecuted instantiation: lib.c:rdgsbase Unexecuted instantiation: xstate.c:rdgsbase Unexecuted instantiation: hpet.c:rdgsbase Unexecuted instantiation: tboot.c:rdgsbase Unexecuted instantiation: x86_emulate.c:rdgsbase Unexecuted instantiation: usercopy.c:rdgsbase Unexecuted instantiation: traps.c:rdgsbase Unexecuted instantiation: smpboot.c:rdgsbase Unexecuted instantiation: smp.c:rdgsbase Unexecuted instantiation: setup.c:rdgsbase Unexecuted instantiation: psr.c:rdgsbase Unexecuted instantiation: platform_hypercall.c:rdgsbase Unexecuted instantiation: physdev.c:rdgsbase Unexecuted instantiation: numa.c:rdgsbase Unexecuted instantiation: nmi.c:rdgsbase Unexecuted instantiation: mpparse.c:rdgsbase Unexecuted instantiation: mm.c:rdgsbase Unexecuted instantiation: microcode.c:rdgsbase Unexecuted instantiation: microcode_intel.c:rdgsbase Unexecuted instantiation: microcode_amd.c:rdgsbase Unexecuted instantiation: machine_kexec.c:rdgsbase Unexecuted instantiation: ioport_emulate.c:rdgsbase Unexecuted instantiation: msr.c:rdgsbase Unexecuted instantiation: io_apic.c:rdgsbase Unexecuted instantiation: i8259.c:rdgsbase Unexecuted instantiation: i387.c:rdgsbase Unexecuted instantiation: hypercall.c:rdgsbase Unexecuted instantiation: flushtlb.c:rdgsbase Unexecuted instantiation: e820.c:rdgsbase Unexecuted instantiation: domain_page.c:rdgsbase Unexecuted instantiation: delay.c:rdgsbase Unexecuted instantiation: debug.c:rdgsbase Unexecuted instantiation: crash.c:rdgsbase Unexecuted instantiation: compat.c:rdgsbase Unexecuted instantiation: cpuid.c:rdgsbase Unexecuted instantiation: apic.c:rdgsbase Unexecuted instantiation: xsm_core.c:rdgsbase Unexecuted instantiation: vga.c:rdgsbase Unexecuted instantiation: apei-io.c:rdgsbase Unexecuted instantiation: erst.c:rdgsbase Unexecuted instantiation: reboot.c:rdgsbase Unexecuted instantiation: pmstat.c:rdgsbase Unexecuted instantiation: iommu_guest.c:rdgsbase Unexecuted instantiation: iommu_cmd.c:rdgsbase Unexecuted instantiation: iommu_intr.c:rdgsbase Unexecuted instantiation: pci_amd_iommu.c:rdgsbase Unexecuted instantiation: iommu_map.c:rdgsbase Unexecuted instantiation: iommu_init.c:rdgsbase Unexecuted instantiation: ats.c:rdgsbase Unexecuted instantiation: vtd.c:rdgsbase Unexecuted instantiation: quirks.c:rdgsbase Unexecuted instantiation: intremap.c:rdgsbase Unexecuted instantiation: qinval.c:rdgsbase Unexecuted instantiation: utils.c:rdgsbase Unexecuted instantiation: dmar.c:rdgsbase Unexecuted instantiation: io.c:rdgsbase Unexecuted instantiation: iommu.c:rdgsbase Unexecuted instantiation: msix.c:rdgsbase Unexecuted instantiation: msi.c:rdgsbase Unexecuted instantiation: header.c:rdgsbase Unexecuted instantiation: vpci.c:rdgsbase Unexecuted instantiation: pci.c:rdgsbase Unexecuted instantiation: utility.c:rdgsbase Unexecuted instantiation: cpufreq_misc_governors.c:rdgsbase Unexecuted instantiation: cpufreq_ondemand.c:rdgsbase Unexecuted instantiation: cpufreq.c:rdgsbase Unexecuted instantiation: ehci-dbgp.c:rdgsbase Unexecuted instantiation: ns16550.c:rdgsbase Unexecuted instantiation: console.c:rdgsbase Unexecuted instantiation: libelf-loader.c:rdgsbase Unexecuted instantiation: llvm.c:rdgsbase Unexecuted instantiation: tmem_control.c:rdgsbase Unexecuted instantiation: tmem_xen.c:rdgsbase Unexecuted instantiation: tmem.c:rdgsbase Unexecuted instantiation: xmalloc_tlsf.c:rdgsbase Unexecuted instantiation: xenoprof.c:rdgsbase Unexecuted instantiation: wait.c:rdgsbase Unexecuted instantiation: vsprintf.c:rdgsbase Unexecuted instantiation: vm_event.c:rdgsbase Unexecuted instantiation: trace.c:rdgsbase Unexecuted instantiation: timer.c:rdgsbase Unexecuted instantiation: time.c:rdgsbase Unexecuted instantiation: tasklet.c:rdgsbase Unexecuted instantiation: sysctl.c:rdgsbase Unexecuted instantiation: symbols.c:rdgsbase Unexecuted instantiation: stop_machine.c:rdgsbase Unexecuted instantiation: spinlock.c:rdgsbase Unexecuted instantiation: softirq.c:rdgsbase Unexecuted instantiation: shutdown.c:rdgsbase Unexecuted instantiation: schedule.c:rdgsbase Unexecuted instantiation: sched_null.c:rdgsbase Unexecuted instantiation: sched_rt.c:rdgsbase Unexecuted instantiation: sched_credit2.c:rdgsbase Unexecuted instantiation: sched_credit.c:rdgsbase Unexecuted instantiation: sched_arinc653.c:rdgsbase Unexecuted instantiation: rwlock.c:rdgsbase Unexecuted instantiation: rcupdate.c:rdgsbase Unexecuted instantiation: rangeset.c:rdgsbase Unexecuted instantiation: random.c:rdgsbase Unexecuted instantiation: preempt.c:rdgsbase Unexecuted instantiation: page_alloc.c:rdgsbase Unexecuted instantiation: multicall.c:rdgsbase Unexecuted instantiation: monitor.c:rdgsbase Unexecuted instantiation: memory.c:rdgsbase Unexecuted instantiation: mem_access.c:rdgsbase Unexecuted instantiation: kimage.c:rdgsbase Unexecuted instantiation: kexec.c:rdgsbase Unexecuted instantiation: keyhandler.c:rdgsbase Unexecuted instantiation: kernel.c:rdgsbase Unexecuted instantiation: irq.c:rdgsbase Unexecuted instantiation: guestcopy.c:rdgsbase Unexecuted instantiation: grant_table.c:rdgsbase Unexecuted instantiation: event_fifo.c:rdgsbase Unexecuted instantiation: event_channel.c:rdgsbase Unexecuted instantiation: event_2l.c:rdgsbase Unexecuted instantiation: domain.c:rdgsbase Unexecuted instantiation: domctl.c:rdgsbase Unexecuted instantiation: cpu.c:rdgsbase |
174 | | |
175 | | static inline void wrfsbase(unsigned long base) |
176 | 0 | { |
177 | 0 | if ( cpu_has_fsgsbase ) |
178 | 0 | #ifdef HAVE_GAS_FSGSBASE |
179 | 0 | asm volatile ( "wrfsbase %0" :: "r" (base) ); |
180 | 0 | #else |
181 | | asm volatile ( ".byte 0xf3, 0x48, 0x0f, 0xae, 0xd0" :: "a" (base) ); |
182 | | #endif |
183 | 0 | else |
184 | 0 | wrmsrl(MSR_FS_BASE, base); |
185 | 0 | } Unexecuted instantiation: cpupool.c:wrfsbase Unexecuted instantiation: cpu.c:wrfsbase Unexecuted instantiation: mmconfig-shared.c:wrfsbase Unexecuted instantiation: mmconfig_64.c:wrfsbase Unexecuted instantiation: mmconf-fam10h.c:wrfsbase Unexecuted instantiation: acpi_mmcfg.c:wrfsbase Unexecuted instantiation: ro-page-fault.c:wrfsbase Unexecuted instantiation: misc-hypercalls.c:wrfsbase Unexecuted instantiation: iret.c:wrfsbase Unexecuted instantiation: emul-priv-op.c:wrfsbase Unexecuted instantiation: emul-inv-op.c:wrfsbase Unexecuted instantiation: emul-gate-op.c:wrfsbase Unexecuted instantiation: descriptor-tables.c:wrfsbase Unexecuted instantiation: callback.c:wrfsbase Unexecuted instantiation: backtrace.c:wrfsbase Unexecuted instantiation: op_model_athlon.c:wrfsbase Unexecuted instantiation: op_model_ppro.c:wrfsbase Unexecuted instantiation: op_model_p4.c:wrfsbase Unexecuted instantiation: nmi_int.c:wrfsbase Unexecuted instantiation: nested_ept.c:wrfsbase Unexecuted instantiation: nested_hap.c:wrfsbase Unexecuted instantiation: hap.c:wrfsbase Unexecuted instantiation: multi.c:wrfsbase Unexecuted instantiation: mem_sharing.c:wrfsbase Unexecuted instantiation: mem_paging.c:wrfsbase Unexecuted instantiation: guest_walk.c:wrfsbase Unexecuted instantiation: altp2m.c:wrfsbase Unexecuted instantiation: p2m-pod.c:wrfsbase Unexecuted instantiation: p2m-ept.c:wrfsbase Unexecuted instantiation: p2m-pt.c:wrfsbase Unexecuted instantiation: p2m.c:wrfsbase Unexecuted instantiation: paging.c:wrfsbase Unexecuted instantiation: vvmx.c:wrfsbase Unexecuted instantiation: vmx.c:wrfsbase Unexecuted instantiation: vmcs.c:wrfsbase Unexecuted instantiation: realmode.c:wrfsbase Unexecuted instantiation: vmcb.c:wrfsbase Unexecuted instantiation: svmdebug.c:wrfsbase Unexecuted instantiation: svm.c:wrfsbase Unexecuted instantiation: nestedsvm.c:wrfsbase Unexecuted instantiation: intr.c:wrfsbase Unexecuted instantiation: vpt.c:wrfsbase Unexecuted instantiation: vpic.c:wrfsbase Unexecuted instantiation: vmsi.c:wrfsbase Unexecuted instantiation: vlapic.c:wrfsbase Unexecuted instantiation: viridian.c:wrfsbase Unexecuted instantiation: vioapic.c:wrfsbase Unexecuted instantiation: stdvga.c:wrfsbase Unexecuted instantiation: save.c:wrfsbase Unexecuted instantiation: rtc.c:wrfsbase Unexecuted instantiation: pmtimer.c:wrfsbase Unexecuted instantiation: nestedhvm.c:wrfsbase Unexecuted instantiation: mtrr.c:wrfsbase Unexecuted instantiation: ioreq.c:wrfsbase Unexecuted instantiation: intercept.c:wrfsbase Unexecuted instantiation: i8254.c:wrfsbase Unexecuted instantiation: hvm.c:wrfsbase Unexecuted instantiation: emulate.c:wrfsbase Unexecuted instantiation: dm.c:wrfsbase Unexecuted instantiation: asid.c:wrfsbase Unexecuted instantiation: probe.c:wrfsbase Unexecuted instantiation: delivery.c:wrfsbase Unexecuted instantiation: default.c:wrfsbase Unexecuted instantiation: x2apic.c:wrfsbase Unexecuted instantiation: bigsmp.c:wrfsbase Unexecuted instantiation: main.c:wrfsbase Unexecuted instantiation: generic.c:wrfsbase Unexecuted instantiation: vmce.c:wrfsbase Unexecuted instantiation: util.c:wrfsbase Unexecuted instantiation: non-fatal.c:wrfsbase Unexecuted instantiation: mce_intel.c:wrfsbase Unexecuted instantiation: mce-apei.c:wrfsbase Unexecuted instantiation: mce.c:wrfsbase Unexecuted instantiation: mctelem.c:wrfsbase Unexecuted instantiation: barrier.c:wrfsbase Unexecuted instantiation: mcaction.c:wrfsbase Unexecuted instantiation: mce_amd.c:wrfsbase Unexecuted instantiation: amd_nonfatal.c:wrfsbase Unexecuted instantiation: vpmu_intel.c:wrfsbase Unexecuted instantiation: vpmu_amd.c:wrfsbase Unexecuted instantiation: vpmu.c:wrfsbase Unexecuted instantiation: mwait-idle.c:wrfsbase Unexecuted instantiation: intel.c:wrfsbase Unexecuted instantiation: common.c:wrfsbase Unexecuted instantiation: centaur.c:wrfsbase Unexecuted instantiation: amd.c:wrfsbase Unexecuted instantiation: powernow.c:wrfsbase Unexecuted instantiation: cpuidle_menu.c:wrfsbase Unexecuted instantiation: cpu_idle.c:wrfsbase Unexecuted instantiation: suspend.c:wrfsbase Unexecuted instantiation: power.c:wrfsbase Unexecuted instantiation: lib.c:wrfsbase Unexecuted instantiation: xstate.c:wrfsbase Unexecuted instantiation: hpet.c:wrfsbase Unexecuted instantiation: tboot.c:wrfsbase Unexecuted instantiation: x86_emulate.c:wrfsbase Unexecuted instantiation: usercopy.c:wrfsbase Unexecuted instantiation: traps.c:wrfsbase Unexecuted instantiation: smpboot.c:wrfsbase Unexecuted instantiation: smp.c:wrfsbase Unexecuted instantiation: setup.c:wrfsbase Unexecuted instantiation: psr.c:wrfsbase Unexecuted instantiation: platform_hypercall.c:wrfsbase Unexecuted instantiation: physdev.c:wrfsbase Unexecuted instantiation: numa.c:wrfsbase Unexecuted instantiation: nmi.c:wrfsbase Unexecuted instantiation: mpparse.c:wrfsbase Unexecuted instantiation: mm.c:wrfsbase Unexecuted instantiation: microcode.c:wrfsbase Unexecuted instantiation: microcode_intel.c:wrfsbase Unexecuted instantiation: microcode_amd.c:wrfsbase Unexecuted instantiation: machine_kexec.c:wrfsbase Unexecuted instantiation: ioport_emulate.c:wrfsbase Unexecuted instantiation: msr.c:wrfsbase Unexecuted instantiation: io_apic.c:wrfsbase Unexecuted instantiation: i8259.c:wrfsbase Unexecuted instantiation: i387.c:wrfsbase Unexecuted instantiation: hypercall.c:wrfsbase Unexecuted instantiation: flushtlb.c:wrfsbase Unexecuted instantiation: e820.c:wrfsbase Unexecuted instantiation: domain_page.c:wrfsbase Unexecuted instantiation: delay.c:wrfsbase Unexecuted instantiation: debug.c:wrfsbase Unexecuted instantiation: crash.c:wrfsbase Unexecuted instantiation: compat.c:wrfsbase Unexecuted instantiation: cpuid.c:wrfsbase Unexecuted instantiation: apic.c:wrfsbase Unexecuted instantiation: xsm_core.c:wrfsbase Unexecuted instantiation: vga.c:wrfsbase Unexecuted instantiation: apei-io.c:wrfsbase Unexecuted instantiation: erst.c:wrfsbase Unexecuted instantiation: reboot.c:wrfsbase Unexecuted instantiation: pmstat.c:wrfsbase Unexecuted instantiation: iommu_guest.c:wrfsbase Unexecuted instantiation: iommu_cmd.c:wrfsbase Unexecuted instantiation: iommu_intr.c:wrfsbase Unexecuted instantiation: pci_amd_iommu.c:wrfsbase Unexecuted instantiation: iommu_map.c:wrfsbase Unexecuted instantiation: iommu_init.c:wrfsbase Unexecuted instantiation: ats.c:wrfsbase Unexecuted instantiation: vtd.c:wrfsbase Unexecuted instantiation: quirks.c:wrfsbase Unexecuted instantiation: intremap.c:wrfsbase Unexecuted instantiation: qinval.c:wrfsbase Unexecuted instantiation: utils.c:wrfsbase Unexecuted instantiation: dmar.c:wrfsbase Unexecuted instantiation: io.c:wrfsbase Unexecuted instantiation: iommu.c:wrfsbase Unexecuted instantiation: msix.c:wrfsbase Unexecuted instantiation: msi.c:wrfsbase Unexecuted instantiation: header.c:wrfsbase Unexecuted instantiation: vpci.c:wrfsbase Unexecuted instantiation: pci.c:wrfsbase Unexecuted instantiation: utility.c:wrfsbase Unexecuted instantiation: cpufreq_misc_governors.c:wrfsbase Unexecuted instantiation: cpufreq_ondemand.c:wrfsbase Unexecuted instantiation: cpufreq.c:wrfsbase Unexecuted instantiation: ehci-dbgp.c:wrfsbase Unexecuted instantiation: ns16550.c:wrfsbase Unexecuted instantiation: console.c:wrfsbase Unexecuted instantiation: libelf-loader.c:wrfsbase Unexecuted instantiation: llvm.c:wrfsbase Unexecuted instantiation: tmem_control.c:wrfsbase Unexecuted instantiation: tmem_xen.c:wrfsbase Unexecuted instantiation: tmem.c:wrfsbase Unexecuted instantiation: xmalloc_tlsf.c:wrfsbase Unexecuted instantiation: xenoprof.c:wrfsbase Unexecuted instantiation: wait.c:wrfsbase Unexecuted instantiation: vsprintf.c:wrfsbase Unexecuted instantiation: vm_event.c:wrfsbase Unexecuted instantiation: trace.c:wrfsbase Unexecuted instantiation: timer.c:wrfsbase Unexecuted instantiation: time.c:wrfsbase Unexecuted instantiation: tasklet.c:wrfsbase Unexecuted instantiation: sysctl.c:wrfsbase Unexecuted instantiation: symbols.c:wrfsbase Unexecuted instantiation: stop_machine.c:wrfsbase Unexecuted instantiation: spinlock.c:wrfsbase Unexecuted instantiation: softirq.c:wrfsbase Unexecuted instantiation: shutdown.c:wrfsbase Unexecuted instantiation: schedule.c:wrfsbase Unexecuted instantiation: sched_null.c:wrfsbase Unexecuted instantiation: sched_rt.c:wrfsbase Unexecuted instantiation: sched_credit2.c:wrfsbase Unexecuted instantiation: sched_credit.c:wrfsbase Unexecuted instantiation: sched_arinc653.c:wrfsbase Unexecuted instantiation: rwlock.c:wrfsbase Unexecuted instantiation: rcupdate.c:wrfsbase Unexecuted instantiation: rangeset.c:wrfsbase Unexecuted instantiation: random.c:wrfsbase Unexecuted instantiation: preempt.c:wrfsbase Unexecuted instantiation: page_alloc.c:wrfsbase Unexecuted instantiation: multicall.c:wrfsbase Unexecuted instantiation: monitor.c:wrfsbase Unexecuted instantiation: memory.c:wrfsbase Unexecuted instantiation: mem_access.c:wrfsbase Unexecuted instantiation: kimage.c:wrfsbase Unexecuted instantiation: kexec.c:wrfsbase Unexecuted instantiation: keyhandler.c:wrfsbase Unexecuted instantiation: kernel.c:wrfsbase Unexecuted instantiation: irq.c:wrfsbase Unexecuted instantiation: guestcopy.c:wrfsbase Unexecuted instantiation: grant_table.c:wrfsbase Unexecuted instantiation: event_fifo.c:wrfsbase Unexecuted instantiation: event_channel.c:wrfsbase Unexecuted instantiation: event_2l.c:wrfsbase Unexecuted instantiation: domain.c:wrfsbase Unexecuted instantiation: domctl.c:wrfsbase |
186 | | |
187 | | static inline void wrgsbase(unsigned long base) |
188 | 0 | { |
189 | 0 | if ( cpu_has_fsgsbase ) |
190 | 0 | #ifdef HAVE_GAS_FSGSBASE |
191 | 0 | asm volatile ( "wrgsbase %0" :: "r" (base) ); |
192 | 0 | #else |
193 | | asm volatile ( ".byte 0xf3, 0x48, 0x0f, 0xae, 0xd8" :: "a" (base) ); |
194 | | #endif |
195 | 0 | else |
196 | 0 | wrmsrl(MSR_GS_BASE, base); |
197 | 0 | } Unexecuted instantiation: cpu.c:wrgsbase Unexecuted instantiation: cpupool.c:wrgsbase Unexecuted instantiation: domctl.c:wrgsbase Unexecuted instantiation: domain.c:wrgsbase Unexecuted instantiation: event_2l.c:wrgsbase Unexecuted instantiation: event_channel.c:wrgsbase Unexecuted instantiation: event_fifo.c:wrgsbase Unexecuted instantiation: grant_table.c:wrgsbase Unexecuted instantiation: guestcopy.c:wrgsbase Unexecuted instantiation: irq.c:wrgsbase Unexecuted instantiation: kernel.c:wrgsbase Unexecuted instantiation: keyhandler.c:wrgsbase Unexecuted instantiation: kexec.c:wrgsbase Unexecuted instantiation: kimage.c:wrgsbase Unexecuted instantiation: mem_access.c:wrgsbase Unexecuted instantiation: memory.c:wrgsbase Unexecuted instantiation: monitor.c:wrgsbase Unexecuted instantiation: multicall.c:wrgsbase Unexecuted instantiation: page_alloc.c:wrgsbase Unexecuted instantiation: preempt.c:wrgsbase Unexecuted instantiation: random.c:wrgsbase Unexecuted instantiation: rangeset.c:wrgsbase Unexecuted instantiation: rcupdate.c:wrgsbase Unexecuted instantiation: rwlock.c:wrgsbase Unexecuted instantiation: sched_arinc653.c:wrgsbase Unexecuted instantiation: sched_credit.c:wrgsbase Unexecuted instantiation: sched_credit2.c:wrgsbase Unexecuted instantiation: sched_rt.c:wrgsbase Unexecuted instantiation: sched_null.c:wrgsbase Unexecuted instantiation: schedule.c:wrgsbase Unexecuted instantiation: shutdown.c:wrgsbase Unexecuted instantiation: softirq.c:wrgsbase Unexecuted instantiation: spinlock.c:wrgsbase Unexecuted instantiation: stop_machine.c:wrgsbase Unexecuted instantiation: symbols.c:wrgsbase Unexecuted instantiation: sysctl.c:wrgsbase Unexecuted instantiation: tasklet.c:wrgsbase Unexecuted instantiation: time.c:wrgsbase Unexecuted instantiation: timer.c:wrgsbase Unexecuted instantiation: trace.c:wrgsbase Unexecuted instantiation: vm_event.c:wrgsbase Unexecuted instantiation: vsprintf.c:wrgsbase Unexecuted instantiation: wait.c:wrgsbase Unexecuted instantiation: xenoprof.c:wrgsbase Unexecuted instantiation: xmalloc_tlsf.c:wrgsbase Unexecuted instantiation: tmem.c:wrgsbase Unexecuted instantiation: tmem_xen.c:wrgsbase Unexecuted instantiation: tmem_control.c:wrgsbase Unexecuted instantiation: llvm.c:wrgsbase Unexecuted instantiation: libelf-loader.c:wrgsbase Unexecuted instantiation: console.c:wrgsbase Unexecuted instantiation: ns16550.c:wrgsbase Unexecuted instantiation: ehci-dbgp.c:wrgsbase Unexecuted instantiation: cpufreq.c:wrgsbase Unexecuted instantiation: cpufreq_ondemand.c:wrgsbase Unexecuted instantiation: cpufreq_misc_governors.c:wrgsbase Unexecuted instantiation: utility.c:wrgsbase Unexecuted instantiation: pci.c:wrgsbase Unexecuted instantiation: vpci.c:wrgsbase Unexecuted instantiation: header.c:wrgsbase Unexecuted instantiation: msi.c:wrgsbase Unexecuted instantiation: msix.c:wrgsbase Unexecuted instantiation: iommu.c:wrgsbase Unexecuted instantiation: io.c:wrgsbase Unexecuted instantiation: dmar.c:wrgsbase Unexecuted instantiation: utils.c:wrgsbase Unexecuted instantiation: qinval.c:wrgsbase Unexecuted instantiation: intremap.c:wrgsbase Unexecuted instantiation: quirks.c:wrgsbase Unexecuted instantiation: vtd.c:wrgsbase Unexecuted instantiation: ats.c:wrgsbase Unexecuted instantiation: iommu_init.c:wrgsbase Unexecuted instantiation: iommu_map.c:wrgsbase Unexecuted instantiation: pci_amd_iommu.c:wrgsbase Unexecuted instantiation: iommu_intr.c:wrgsbase Unexecuted instantiation: iommu_cmd.c:wrgsbase Unexecuted instantiation: iommu_guest.c:wrgsbase Unexecuted instantiation: pmstat.c:wrgsbase Unexecuted instantiation: reboot.c:wrgsbase Unexecuted instantiation: erst.c:wrgsbase Unexecuted instantiation: apei-io.c:wrgsbase Unexecuted instantiation: vga.c:wrgsbase Unexecuted instantiation: xsm_core.c:wrgsbase Unexecuted instantiation: apic.c:wrgsbase Unexecuted instantiation: cpuid.c:wrgsbase Unexecuted instantiation: compat.c:wrgsbase Unexecuted instantiation: crash.c:wrgsbase Unexecuted instantiation: debug.c:wrgsbase Unexecuted instantiation: delay.c:wrgsbase Unexecuted instantiation: domain_page.c:wrgsbase Unexecuted instantiation: e820.c:wrgsbase Unexecuted instantiation: flushtlb.c:wrgsbase Unexecuted instantiation: hypercall.c:wrgsbase Unexecuted instantiation: i387.c:wrgsbase Unexecuted instantiation: i8259.c:wrgsbase Unexecuted instantiation: io_apic.c:wrgsbase Unexecuted instantiation: msr.c:wrgsbase Unexecuted instantiation: ioport_emulate.c:wrgsbase Unexecuted instantiation: machine_kexec.c:wrgsbase Unexecuted instantiation: microcode_amd.c:wrgsbase Unexecuted instantiation: microcode_intel.c:wrgsbase Unexecuted instantiation: microcode.c:wrgsbase Unexecuted instantiation: mm.c:wrgsbase Unexecuted instantiation: mpparse.c:wrgsbase Unexecuted instantiation: nmi.c:wrgsbase Unexecuted instantiation: numa.c:wrgsbase Unexecuted instantiation: physdev.c:wrgsbase Unexecuted instantiation: platform_hypercall.c:wrgsbase Unexecuted instantiation: psr.c:wrgsbase Unexecuted instantiation: setup.c:wrgsbase Unexecuted instantiation: smp.c:wrgsbase Unexecuted instantiation: smpboot.c:wrgsbase Unexecuted instantiation: traps.c:wrgsbase Unexecuted instantiation: usercopy.c:wrgsbase Unexecuted instantiation: x86_emulate.c:wrgsbase Unexecuted instantiation: tboot.c:wrgsbase Unexecuted instantiation: hpet.c:wrgsbase Unexecuted instantiation: xstate.c:wrgsbase Unexecuted instantiation: lib.c:wrgsbase Unexecuted instantiation: power.c:wrgsbase Unexecuted instantiation: suspend.c:wrgsbase Unexecuted instantiation: cpu_idle.c:wrgsbase Unexecuted instantiation: cpuidle_menu.c:wrgsbase Unexecuted instantiation: powernow.c:wrgsbase Unexecuted instantiation: amd.c:wrgsbase Unexecuted instantiation: centaur.c:wrgsbase Unexecuted instantiation: common.c:wrgsbase Unexecuted instantiation: intel.c:wrgsbase Unexecuted instantiation: mwait-idle.c:wrgsbase Unexecuted instantiation: vpmu.c:wrgsbase Unexecuted instantiation: vpmu_amd.c:wrgsbase Unexecuted instantiation: vpmu_intel.c:wrgsbase Unexecuted instantiation: amd_nonfatal.c:wrgsbase Unexecuted instantiation: mce_amd.c:wrgsbase Unexecuted instantiation: mcaction.c:wrgsbase Unexecuted instantiation: barrier.c:wrgsbase Unexecuted instantiation: mctelem.c:wrgsbase Unexecuted instantiation: mce.c:wrgsbase Unexecuted instantiation: mce-apei.c:wrgsbase Unexecuted instantiation: mce_intel.c:wrgsbase Unexecuted instantiation: non-fatal.c:wrgsbase Unexecuted instantiation: util.c:wrgsbase Unexecuted instantiation: vmce.c:wrgsbase Unexecuted instantiation: generic.c:wrgsbase Unexecuted instantiation: main.c:wrgsbase Unexecuted instantiation: bigsmp.c:wrgsbase Unexecuted instantiation: x2apic.c:wrgsbase Unexecuted instantiation: default.c:wrgsbase Unexecuted instantiation: delivery.c:wrgsbase Unexecuted instantiation: probe.c:wrgsbase Unexecuted instantiation: asid.c:wrgsbase Unexecuted instantiation: dm.c:wrgsbase Unexecuted instantiation: emulate.c:wrgsbase Unexecuted instantiation: hvm.c:wrgsbase Unexecuted instantiation: i8254.c:wrgsbase Unexecuted instantiation: intercept.c:wrgsbase Unexecuted instantiation: ioreq.c:wrgsbase Unexecuted instantiation: mtrr.c:wrgsbase Unexecuted instantiation: nestedhvm.c:wrgsbase Unexecuted instantiation: pmtimer.c:wrgsbase Unexecuted instantiation: rtc.c:wrgsbase Unexecuted instantiation: save.c:wrgsbase Unexecuted instantiation: stdvga.c:wrgsbase Unexecuted instantiation: vioapic.c:wrgsbase Unexecuted instantiation: viridian.c:wrgsbase Unexecuted instantiation: vlapic.c:wrgsbase Unexecuted instantiation: vmsi.c:wrgsbase Unexecuted instantiation: vpic.c:wrgsbase Unexecuted instantiation: vpt.c:wrgsbase Unexecuted instantiation: intr.c:wrgsbase Unexecuted instantiation: nestedsvm.c:wrgsbase Unexecuted instantiation: svm.c:wrgsbase Unexecuted instantiation: svmdebug.c:wrgsbase Unexecuted instantiation: vmcb.c:wrgsbase Unexecuted instantiation: realmode.c:wrgsbase Unexecuted instantiation: vmcs.c:wrgsbase Unexecuted instantiation: vmx.c:wrgsbase Unexecuted instantiation: vvmx.c:wrgsbase Unexecuted instantiation: paging.c:wrgsbase Unexecuted instantiation: p2m.c:wrgsbase Unexecuted instantiation: p2m-pt.c:wrgsbase Unexecuted instantiation: p2m-ept.c:wrgsbase Unexecuted instantiation: p2m-pod.c:wrgsbase Unexecuted instantiation: altp2m.c:wrgsbase Unexecuted instantiation: guest_walk.c:wrgsbase Unexecuted instantiation: mem_paging.c:wrgsbase Unexecuted instantiation: mem_sharing.c:wrgsbase Unexecuted instantiation: multi.c:wrgsbase Unexecuted instantiation: hap.c:wrgsbase Unexecuted instantiation: nested_hap.c:wrgsbase Unexecuted instantiation: nested_ept.c:wrgsbase Unexecuted instantiation: nmi_int.c:wrgsbase Unexecuted instantiation: op_model_p4.c:wrgsbase Unexecuted instantiation: op_model_ppro.c:wrgsbase Unexecuted instantiation: op_model_athlon.c:wrgsbase Unexecuted instantiation: backtrace.c:wrgsbase Unexecuted instantiation: callback.c:wrgsbase Unexecuted instantiation: descriptor-tables.c:wrgsbase Unexecuted instantiation: emul-gate-op.c:wrgsbase Unexecuted instantiation: emul-inv-op.c:wrgsbase Unexecuted instantiation: emul-priv-op.c:wrgsbase Unexecuted instantiation: iret.c:wrgsbase Unexecuted instantiation: misc-hypercalls.c:wrgsbase Unexecuted instantiation: ro-page-fault.c:wrgsbase Unexecuted instantiation: acpi_mmcfg.c:wrgsbase Unexecuted instantiation: mmconf-fam10h.c:wrgsbase Unexecuted instantiation: mmconfig_64.c:wrgsbase Unexecuted instantiation: mmconfig-shared.c:wrgsbase |
198 | | |
199 | | DECLARE_PER_CPU(u64, efer); |
200 | | u64 read_efer(void); |
201 | | void write_efer(u64 val); |
202 | | |
203 | | DECLARE_PER_CPU(u32, ler_msr); |
204 | | |
205 | | /* MSR policy object for shared per-domain MSRs */ |
206 | | struct msr_domain_policy |
207 | | { |
208 | | /* 0x000000ce MSR_INTEL_PLATFORM_INFO */ |
209 | | struct { |
210 | | bool available; /* This MSR is non-architectural */ |
211 | | bool cpuid_faulting; |
212 | | } plaform_info; |
213 | | }; |
214 | | |
215 | | /* MSR policy object for per-vCPU MSRs */ |
216 | | struct msr_vcpu_policy |
217 | | { |
218 | | /* 0x00000140 MSR_INTEL_MISC_FEATURES_ENABLES */ |
219 | | struct { |
220 | | bool available; /* This MSR is non-architectural */ |
221 | | bool cpuid_faulting; |
222 | | } misc_features_enables; |
223 | | }; |
224 | | |
225 | | void init_guest_msr_policy(void); |
226 | | int init_domain_msr_policy(struct domain *d); |
227 | | int init_vcpu_msr_policy(struct vcpu *v); |
228 | | |
229 | | /* |
230 | | * Below functions can return X86EMUL_UNHANDLEABLE which means that MSR is |
231 | | * not (yet) handled by it and must be processed by legacy handlers. Such |
232 | | * behaviour is needed for transition period until all rd/wrmsr are handled |
233 | | * by the new MSR infrastructure. |
234 | | */ |
235 | | int guest_rdmsr(const struct vcpu *v, uint32_t msr, uint64_t *val); |
236 | | int guest_wrmsr(struct vcpu *v, uint32_t msr, uint64_t val); |
237 | | |
238 | | #endif /* !__ASSEMBLY__ */ |
239 | | |
240 | | #endif /* __ASM_MSR_H */ |