Coverage Report

Created: 2017-10-25 09:10

/root/src/xen/xen/include/asm/x86_64/page.h
Line
Count
Source (jump to first uncovered line)
1
2
#ifndef __X86_64_PAGE_H__
3
#define __X86_64_PAGE_H__
4
5
704M
#define L1_PAGETABLE_SHIFT      12
6
745k
#define L2_PAGETABLE_SHIFT      21
7
752k
#define L3_PAGETABLE_SHIFT      30
8
742k
#define L4_PAGETABLE_SHIFT      39
9
703M
#define PAGE_SHIFT              L1_PAGETABLE_SHIFT
10
#define SUPERPAGE_SHIFT         L2_PAGETABLE_SHIFT
11
#define ROOT_PAGETABLE_SHIFT    L4_PAGETABLE_SHIFT
12
13
27.9M
#define PAGETABLE_ORDER         9
14
522k
#define L1_PAGETABLE_ENTRIES    (1<<PAGETABLE_ORDER)
15
743k
#define L2_PAGETABLE_ENTRIES    (1<<PAGETABLE_ORDER)
16
743k
#define L3_PAGETABLE_ENTRIES    (1<<PAGETABLE_ORDER)
17
742k
#define L4_PAGETABLE_ENTRIES    (1<<PAGETABLE_ORDER)
18
#define ROOT_PAGETABLE_ENTRIES  L4_PAGETABLE_ENTRIES
19
0
#define SUPERPAGE_ORDER         PAGETABLE_ORDER
20
0
#define SUPERPAGE_PAGES         (1<<SUPERPAGE_ORDER)
21
22
#define __XEN_VIRT_START        XEN_VIRT_START
23
24
/* These are architectural limits. Current CPUs support only 40-bit phys. */
25
15.5M
#define PADDR_BITS              52
26
1
#define VADDR_BITS              48
27
15.6M
#define PADDR_MASK              ((1UL << PADDR_BITS)-1)
28
0
#define VADDR_MASK              ((1UL << VADDR_BITS)-1)
29
30
0
#define VADDR_TOP_BIT           (1UL << (VADDR_BITS - 1))
31
0
#define CANONICAL_MASK          (~0UL & ~VADDR_MASK)
32
33
5.67M
#define is_canonical_address(x) (((long)(x) >> 47) == ((long)(x) >> 63))
34
35
#ifndef __ASSEMBLY__
36
37
#include <asm/types.h>
38
39
#include <xen/pdx.h>
40
41
extern unsigned long xen_virt_end;
42
43
/*
44
 * Note: These are solely for the use by page_{get,set}_owner(), and
45
 *       therefore don't need to handle the XEN_VIRT_{START,END} range.
46
 */
47
4.08M
#define virt_to_pdx(va)  (((unsigned long)(va) - DIRECTMAP_VIRT_START) >> \
48
4.08M
                          PAGE_SHIFT)
49
14.1M
#define pdx_to_virt(pdx) ((void *)(DIRECTMAP_VIRT_START + \
50
14.1M
                                   ((unsigned long)(pdx) << PAGE_SHIFT)))
51
52
static inline unsigned long __virt_to_maddr(unsigned long va)
53
27.3M
{
54
27.3M
    ASSERT(va < DIRECTMAP_VIRT_END);
55
27.3M
    if ( va >= DIRECTMAP_VIRT_START )
56
218k
        va -= DIRECTMAP_VIRT_START;
57
27.3M
    else
58
27.1M
    {
59
27.1M
        BUILD_BUG_ON(XEN_VIRT_END - XEN_VIRT_START != GB(1));
60
27.1M
        /* Signed, so ((long)XEN_VIRT_START >> 30) fits in an imm32. */
61
27.1M
        ASSERT(((long)va >> (PAGE_ORDER_1G + PAGE_SHIFT)) ==
62
27.1M
               ((long)XEN_VIRT_START >> (PAGE_ORDER_1G + PAGE_SHIFT)));
63
27.1M
64
27.1M
        va += xen_phys_start - XEN_VIRT_START;
65
27.1M
    }
66
27.3M
    return (va & ma_va_bottom_mask) |
67
27.3M
           ((va << pfn_pdx_hole_shift) & ma_top_mask);
68
27.3M
}
Unexecuted instantiation: mmconfig-shared.c:__virt_to_maddr
Unexecuted instantiation: mmconfig_64.c:__virt_to_maddr
Unexecuted instantiation: mmconf-fam10h.c:__virt_to_maddr
Unexecuted instantiation: acpi_mmcfg.c:__virt_to_maddr
Unexecuted instantiation: ro-page-fault.c:__virt_to_maddr
Unexecuted instantiation: misc-hypercalls.c:__virt_to_maddr
Unexecuted instantiation: iret.c:__virt_to_maddr
Unexecuted instantiation: emul-priv-op.c:__virt_to_maddr
Unexecuted instantiation: emul-inv-op.c:__virt_to_maddr
Unexecuted instantiation: emul-gate-op.c:__virt_to_maddr
Unexecuted instantiation: descriptor-tables.c:__virt_to_maddr
Unexecuted instantiation: callback.c:__virt_to_maddr
Unexecuted instantiation: backtrace.c:__virt_to_maddr
Unexecuted instantiation: op_model_athlon.c:__virt_to_maddr
Unexecuted instantiation: op_model_ppro.c:__virt_to_maddr
Unexecuted instantiation: op_model_p4.c:__virt_to_maddr
Unexecuted instantiation: nmi_int.c:__virt_to_maddr
Unexecuted instantiation: nested_ept.c:__virt_to_maddr
Unexecuted instantiation: nested_hap.c:__virt_to_maddr
Unexecuted instantiation: hap.c:__virt_to_maddr
Unexecuted instantiation: multi.c:__virt_to_maddr
Unexecuted instantiation: mem_sharing.c:__virt_to_maddr
Unexecuted instantiation: mem_paging.c:__virt_to_maddr
Unexecuted instantiation: guest_walk.c:__virt_to_maddr
Unexecuted instantiation: altp2m.c:__virt_to_maddr
Unexecuted instantiation: p2m-pod.c:__virt_to_maddr
Unexecuted instantiation: p2m-ept.c:__virt_to_maddr
Unexecuted instantiation: p2m-pt.c:__virt_to_maddr
Unexecuted instantiation: p2m.c:__virt_to_maddr
Unexecuted instantiation: paging.c:__virt_to_maddr
Unexecuted instantiation: vvmx.c:__virt_to_maddr
Unexecuted instantiation: vmx.c:__virt_to_maddr
vmcs.c:__virt_to_maddr
Line
Count
Source
53
48
{
54
48
    ASSERT(va < DIRECTMAP_VIRT_END);
55
48
    if ( va >= DIRECTMAP_VIRT_START )
56
48
        va -= DIRECTMAP_VIRT_START;
57
48
    else
58
0
    {
59
0
        BUILD_BUG_ON(XEN_VIRT_END - XEN_VIRT_START != GB(1));
60
0
        /* Signed, so ((long)XEN_VIRT_START >> 30) fits in an imm32. */
61
0
        ASSERT(((long)va >> (PAGE_ORDER_1G + PAGE_SHIFT)) ==
62
0
               ((long)XEN_VIRT_START >> (PAGE_ORDER_1G + PAGE_SHIFT)));
63
0
64
0
        va += xen_phys_start - XEN_VIRT_START;
65
0
    }
66
48
    return (va & ma_va_bottom_mask) |
67
48
           ((va << pfn_pdx_hole_shift) & ma_top_mask);
68
48
}
Unexecuted instantiation: realmode.c:__virt_to_maddr
Unexecuted instantiation: vmcb.c:__virt_to_maddr
Unexecuted instantiation: svmdebug.c:__virt_to_maddr
Unexecuted instantiation: svm.c:__virt_to_maddr
Unexecuted instantiation: nestedsvm.c:__virt_to_maddr
Unexecuted instantiation: intr.c:__virt_to_maddr
Unexecuted instantiation: vpt.c:__virt_to_maddr
Unexecuted instantiation: vpic.c:__virt_to_maddr
Unexecuted instantiation: vmsi.c:__virt_to_maddr
Unexecuted instantiation: vlapic.c:__virt_to_maddr
Unexecuted instantiation: viridian.c:__virt_to_maddr
Unexecuted instantiation: vioapic.c:__virt_to_maddr
Unexecuted instantiation: stdvga.c:__virt_to_maddr
Unexecuted instantiation: save.c:__virt_to_maddr
Unexecuted instantiation: rtc.c:__virt_to_maddr
Unexecuted instantiation: pmtimer.c:__virt_to_maddr
Unexecuted instantiation: nestedhvm.c:__virt_to_maddr
Unexecuted instantiation: mtrr.c:__virt_to_maddr
Unexecuted instantiation: ioreq.c:__virt_to_maddr
Unexecuted instantiation: intercept.c:__virt_to_maddr
Unexecuted instantiation: i8254.c:__virt_to_maddr
Unexecuted instantiation: hvm.c:__virt_to_maddr
Unexecuted instantiation: emulate.c:__virt_to_maddr
Unexecuted instantiation: dm.c:__virt_to_maddr
Unexecuted instantiation: asid.c:__virt_to_maddr
Unexecuted instantiation: probe.c:__virt_to_maddr
Unexecuted instantiation: delivery.c:__virt_to_maddr
Unexecuted instantiation: default.c:__virt_to_maddr
Unexecuted instantiation: x2apic.c:__virt_to_maddr
Unexecuted instantiation: bigsmp.c:__virt_to_maddr
Unexecuted instantiation: main.c:__virt_to_maddr
Unexecuted instantiation: generic.c:__virt_to_maddr
Unexecuted instantiation: vmce.c:__virt_to_maddr
Unexecuted instantiation: util.c:__virt_to_maddr
Unexecuted instantiation: non-fatal.c:__virt_to_maddr
Unexecuted instantiation: mce_intel.c:__virt_to_maddr
Unexecuted instantiation: mce-apei.c:__virt_to_maddr
Unexecuted instantiation: mce.c:__virt_to_maddr
Unexecuted instantiation: mctelem.c:__virt_to_maddr
Unexecuted instantiation: barrier.c:__virt_to_maddr
Unexecuted instantiation: mcaction.c:__virt_to_maddr
Unexecuted instantiation: mce_amd.c:__virt_to_maddr
Unexecuted instantiation: amd_nonfatal.c:__virt_to_maddr
Unexecuted instantiation: vpmu_intel.c:__virt_to_maddr
Unexecuted instantiation: vpmu_amd.c:__virt_to_maddr
Unexecuted instantiation: vpmu.c:__virt_to_maddr
Unexecuted instantiation: mwait-idle.c:__virt_to_maddr
Unexecuted instantiation: intel_cacheinfo.c:__virt_to_maddr
Unexecuted instantiation: intel.c:__virt_to_maddr
common.c:__virt_to_maddr
Line
Count
Source
53
2
{
54
2
    ASSERT(va < DIRECTMAP_VIRT_END);
55
2
    if ( va >= DIRECTMAP_VIRT_START )
56
0
        va -= DIRECTMAP_VIRT_START;
57
2
    else
58
2
    {
59
2
        BUILD_BUG_ON(XEN_VIRT_END - XEN_VIRT_START != GB(1));
60
2
        /* Signed, so ((long)XEN_VIRT_START >> 30) fits in an imm32. */
61
2
        ASSERT(((long)va >> (PAGE_ORDER_1G + PAGE_SHIFT)) ==
62
2
               ((long)XEN_VIRT_START >> (PAGE_ORDER_1G + PAGE_SHIFT)));
63
2
64
2
        va += xen_phys_start - XEN_VIRT_START;
65
2
    }
66
2
    return (va & ma_va_bottom_mask) |
67
2
           ((va << pfn_pdx_hole_shift) & ma_top_mask);
68
2
}
Unexecuted instantiation: centaur.c:__virt_to_maddr
Unexecuted instantiation: amd.c:__virt_to_maddr
Unexecuted instantiation: powernow.c:__virt_to_maddr
Unexecuted instantiation: cpuidle_menu.c:__virt_to_maddr
Unexecuted instantiation: cpu_idle.c:__virt_to_maddr
Unexecuted instantiation: suspend.c:__virt_to_maddr
Unexecuted instantiation: power.c:__virt_to_maddr
Unexecuted instantiation: lib.c:__virt_to_maddr
Unexecuted instantiation: xstate.c:__virt_to_maddr
Unexecuted instantiation: hpet.c:__virt_to_maddr
Unexecuted instantiation: tboot.c:__virt_to_maddr
Unexecuted instantiation: x86_emulate.c:__virt_to_maddr
Unexecuted instantiation: usercopy.c:__virt_to_maddr
Unexecuted instantiation: traps.c:__virt_to_maddr
Unexecuted instantiation: srat.c:__virt_to_maddr
smpboot.c:__virt_to_maddr
Line
Count
Source
53
22
{
54
22
    ASSERT(va < DIRECTMAP_VIRT_END);
55
22
    if ( va >= DIRECTMAP_VIRT_START )
56
0
        va -= DIRECTMAP_VIRT_START;
57
22
    else
58
22
    {
59
22
        BUILD_BUG_ON(XEN_VIRT_END - XEN_VIRT_START != GB(1));
60
22
        /* Signed, so ((long)XEN_VIRT_START >> 30) fits in an imm32. */
61
22
        ASSERT(((long)va >> (PAGE_ORDER_1G + PAGE_SHIFT)) ==
62
22
               ((long)XEN_VIRT_START >> (PAGE_ORDER_1G + PAGE_SHIFT)));
63
22
64
22
        va += xen_phys_start - XEN_VIRT_START;
65
22
    }
66
22
    return (va & ma_va_bottom_mask) |
67
22
           ((va << pfn_pdx_hole_shift) & ma_top_mask);
68
22
}
setup.c:__virt_to_maddr
Line
Count
Source
53
31
{
54
31
    ASSERT(va < DIRECTMAP_VIRT_END);
55
31
    if ( va >= DIRECTMAP_VIRT_START )
56
7
        va -= DIRECTMAP_VIRT_START;
57
31
    else
58
24
    {
59
24
        BUILD_BUG_ON(XEN_VIRT_END - XEN_VIRT_START != GB(1));
60
24
        /* Signed, so ((long)XEN_VIRT_START >> 30) fits in an imm32. */
61
24
        ASSERT(((long)va >> (PAGE_ORDER_1G + PAGE_SHIFT)) ==
62
24
               ((long)XEN_VIRT_START >> (PAGE_ORDER_1G + PAGE_SHIFT)));
63
24
64
24
        va += xen_phys_start - XEN_VIRT_START;
65
24
    }
66
31
    return (va & ma_va_bottom_mask) |
67
31
           ((va << pfn_pdx_hole_shift) & ma_top_mask);
68
31
}
Unexecuted instantiation: psr.c:__virt_to_maddr
Unexecuted instantiation: platform_hypercall.c:__virt_to_maddr
Unexecuted instantiation: physdev.c:__virt_to_maddr
Unexecuted instantiation: percpu.c:__virt_to_maddr
Unexecuted instantiation: nmi.c:__virt_to_maddr
mpparse.c:__virt_to_maddr
Line
Count
Source
53
1
{
54
1
    ASSERT(va < DIRECTMAP_VIRT_END);
55
1
    if ( va >= DIRECTMAP_VIRT_START )
56
1
        va -= DIRECTMAP_VIRT_START;
57
1
    else
58
0
    {
59
0
        BUILD_BUG_ON(XEN_VIRT_END - XEN_VIRT_START != GB(1));
60
0
        /* Signed, so ((long)XEN_VIRT_START >> 30) fits in an imm32. */
61
0
        ASSERT(((long)va >> (PAGE_ORDER_1G + PAGE_SHIFT)) ==
62
0
               ((long)XEN_VIRT_START >> (PAGE_ORDER_1G + PAGE_SHIFT)));
63
0
64
0
        va += xen_phys_start - XEN_VIRT_START;
65
0
    }
66
1
    return (va & ma_va_bottom_mask) |
67
1
           ((va << pfn_pdx_hole_shift) & ma_top_mask);
68
1
}
mm.c:__virt_to_maddr
Line
Count
Source
53
46
{
54
46
    ASSERT(va < DIRECTMAP_VIRT_END);
55
46
    if ( va >= DIRECTMAP_VIRT_START )
56
45
        va -= DIRECTMAP_VIRT_START;
57
46
    else
58
1
    {
59
1
        BUILD_BUG_ON(XEN_VIRT_END - XEN_VIRT_START != GB(1));
60
1
        /* Signed, so ((long)XEN_VIRT_START >> 30) fits in an imm32. */
61
1
        ASSERT(((long)va >> (PAGE_ORDER_1G + PAGE_SHIFT)) ==
62
1
               ((long)XEN_VIRT_START >> (PAGE_ORDER_1G + PAGE_SHIFT)));
63
1
64
1
        va += xen_phys_start - XEN_VIRT_START;
65
1
    }
66
46
    return (va & ma_va_bottom_mask) |
67
46
           ((va << pfn_pdx_hole_shift) & ma_top_mask);
68
46
}
Unexecuted instantiation: microcode.c:__virt_to_maddr
Unexecuted instantiation: microcode_intel.c:__virt_to_maddr
Unexecuted instantiation: microcode_amd.c:__virt_to_maddr
Unexecuted instantiation: machine_kexec.c:__virt_to_maddr
Unexecuted instantiation: ioport_emulate.c:__virt_to_maddr
Unexecuted instantiation: msr.c:__virt_to_maddr
Unexecuted instantiation: io_apic.c:__virt_to_maddr
Unexecuted instantiation: i8259.c:__virt_to_maddr
Unexecuted instantiation: i387.c:__virt_to_maddr
Unexecuted instantiation: hypercall.c:__virt_to_maddr
Unexecuted instantiation: flushtlb.c:__virt_to_maddr
Unexecuted instantiation: extable.c:__virt_to_maddr
Unexecuted instantiation: e820.c:__virt_to_maddr
domain_page.c:__virt_to_maddr
Line
Count
Source
53
27.1M
{
54
27.1M
    ASSERT(va < DIRECTMAP_VIRT_END);
55
27.1M
    if ( va >= DIRECTMAP_VIRT_START )
56
0
        va -= DIRECTMAP_VIRT_START;
57
27.1M
    else
58
27.1M
    {
59
27.1M
        BUILD_BUG_ON(XEN_VIRT_END - XEN_VIRT_START != GB(1));
60
27.1M
        /* Signed, so ((long)XEN_VIRT_START >> 30) fits in an imm32. */
61
27.1M
        ASSERT(((long)va >> (PAGE_ORDER_1G + PAGE_SHIFT)) ==
62
27.1M
               ((long)XEN_VIRT_START >> (PAGE_ORDER_1G + PAGE_SHIFT)));
63
27.1M
64
27.1M
        va += xen_phys_start - XEN_VIRT_START;
65
27.1M
    }
66
27.1M
    return (va & ma_va_bottom_mask) |
67
27.1M
           ((va << pfn_pdx_hole_shift) & ma_top_mask);
68
27.1M
}
Unexecuted instantiation: delay.c:__virt_to_maddr
Unexecuted instantiation: debug.c:__virt_to_maddr
Unexecuted instantiation: crash.c:__virt_to_maddr
Unexecuted instantiation: compat.c:__virt_to_maddr
Unexecuted instantiation: cpuid.c:__virt_to_maddr
Unexecuted instantiation: apic.c:__virt_to_maddr
Unexecuted instantiation: xsm_core.c:__virt_to_maddr
Unexecuted instantiation: vesa.c:__virt_to_maddr
Unexecuted instantiation: vga.c:__virt_to_maddr
Unexecuted instantiation: apei-io.c:__virt_to_maddr
Unexecuted instantiation: apei-base.c:__virt_to_maddr
Unexecuted instantiation: hest.c:__virt_to_maddr
Unexecuted instantiation: erst.c:__virt_to_maddr
Unexecuted instantiation: utglobal.c:__virt_to_maddr
Unexecuted instantiation: tbutils.c:__virt_to_maddr
Unexecuted instantiation: reboot.c:__virt_to_maddr
Unexecuted instantiation: hwregs.c:__virt_to_maddr
Unexecuted instantiation: pmstat.c:__virt_to_maddr
osl.c:__virt_to_maddr
Line
Count
Source
53
12
{
54
12
    ASSERT(va < DIRECTMAP_VIRT_END);
55
12
    if ( va >= DIRECTMAP_VIRT_START )
56
12
        va -= DIRECTMAP_VIRT_START;
57
12
    else
58
0
    {
59
0
        BUILD_BUG_ON(XEN_VIRT_END - XEN_VIRT_START != GB(1));
60
0
        /* Signed, so ((long)XEN_VIRT_START >> 30) fits in an imm32. */
61
0
        ASSERT(((long)va >> (PAGE_ORDER_1G + PAGE_SHIFT)) ==
62
0
               ((long)XEN_VIRT_START >> (PAGE_ORDER_1G + PAGE_SHIFT)));
63
0
64
0
        va += xen_phys_start - XEN_VIRT_START;
65
0
    }
66
12
    return (va & ma_va_bottom_mask) |
67
12
           ((va << pfn_pdx_hole_shift) & ma_top_mask);
68
12
}
Unexecuted instantiation: numa.c:__virt_to_maddr
Unexecuted instantiation: iommu_guest.c:__virt_to_maddr
Unexecuted instantiation: iommu_cmd.c:__virt_to_maddr
Unexecuted instantiation: iommu_intr.c:__virt_to_maddr
Unexecuted instantiation: pci_amd_iommu.c:__virt_to_maddr
Unexecuted instantiation: iommu_map.c:__virt_to_maddr
Unexecuted instantiation: iommu_init.c:__virt_to_maddr
Unexecuted instantiation: ats.c:__virt_to_maddr
Unexecuted instantiation: vtd.c:__virt_to_maddr
Unexecuted instantiation: quirks.c:__virt_to_maddr
Unexecuted instantiation: intremap.c:__virt_to_maddr
qinval.c:__virt_to_maddr
Line
Count
Source
53
218k
{
54
218k
    ASSERT(va < DIRECTMAP_VIRT_END);
55
218k
    if ( va >= DIRECTMAP_VIRT_START )
56
218k
        va -= DIRECTMAP_VIRT_START;
57
218k
    else
58
67
    {
59
67
        BUILD_BUG_ON(XEN_VIRT_END - XEN_VIRT_START != GB(1));
60
67
        /* Signed, so ((long)XEN_VIRT_START >> 30) fits in an imm32. */
61
67
        ASSERT(((long)va >> (PAGE_ORDER_1G + PAGE_SHIFT)) ==
62
67
               ((long)XEN_VIRT_START >> (PAGE_ORDER_1G + PAGE_SHIFT)));
63
67
64
67
        va += xen_phys_start - XEN_VIRT_START;
65
67
    }
66
218k
    return (va & ma_va_bottom_mask) |
67
218k
           ((va << pfn_pdx_hole_shift) & ma_top_mask);
68
218k
}
Unexecuted instantiation: utils.c:__virt_to_maddr
Unexecuted instantiation: dmar.c:__virt_to_maddr
Unexecuted instantiation: io.c:__virt_to_maddr
Unexecuted instantiation: iommu.c:__virt_to_maddr
Unexecuted instantiation: msix.c:__virt_to_maddr
Unexecuted instantiation: msi.c:__virt_to_maddr
Unexecuted instantiation: header.c:__virt_to_maddr
Unexecuted instantiation: vpci.c:__virt_to_maddr
Unexecuted instantiation: pci.c:__virt_to_maddr
Unexecuted instantiation: utility.c:__virt_to_maddr
Unexecuted instantiation: cpufreq_misc_governors.c:__virt_to_maddr
Unexecuted instantiation: cpufreq_ondemand.c:__virt_to_maddr
Unexecuted instantiation: cpufreq.c:__virt_to_maddr
Unexecuted instantiation: serial.c:__virt_to_maddr
Unexecuted instantiation: ehci-dbgp.c:__virt_to_maddr
Unexecuted instantiation: ns16550.c:__virt_to_maddr
Unexecuted instantiation: console.c:__virt_to_maddr
Unexecuted instantiation: libelf-dominfo.c:__virt_to_maddr
Unexecuted instantiation: libelf-loader.c:__virt_to_maddr
Unexecuted instantiation: libelf-tools.c:__virt_to_maddr
Unexecuted instantiation: llvm.c:__virt_to_maddr
Unexecuted instantiation: tmem_control.c:__virt_to_maddr
Unexecuted instantiation: tmem_xen.c:__virt_to_maddr
Unexecuted instantiation: tmem.c:__virt_to_maddr
Unexecuted instantiation: xmalloc_tlsf.c:__virt_to_maddr
Unexecuted instantiation: xenoprof.c:__virt_to_maddr
Unexecuted instantiation: wait.c:__virt_to_maddr
Unexecuted instantiation: vsprintf.c:__virt_to_maddr
Unexecuted instantiation: vmap.c:__virt_to_maddr
Unexecuted instantiation: vm_event.c:__virt_to_maddr
Unexecuted instantiation: virtual_region.c:__virt_to_maddr
Unexecuted instantiation: trace.c:__virt_to_maddr
Unexecuted instantiation: timer.c:__virt_to_maddr
Unexecuted instantiation: time.c:__virt_to_maddr
Unexecuted instantiation: tasklet.c:__virt_to_maddr
Unexecuted instantiation: sysctl.c:__virt_to_maddr
Unexecuted instantiation: symbols.c:__virt_to_maddr
Unexecuted instantiation: stop_machine.c:__virt_to_maddr
Unexecuted instantiation: spinlock.c:__virt_to_maddr
Unexecuted instantiation: smp.c:__virt_to_maddr
Unexecuted instantiation: softirq.c:__virt_to_maddr
Unexecuted instantiation: shutdown.c:__virt_to_maddr
Unexecuted instantiation: schedule.c:__virt_to_maddr
Unexecuted instantiation: sched_null.c:__virt_to_maddr
Unexecuted instantiation: sched_rt.c:__virt_to_maddr
Unexecuted instantiation: sched_credit2.c:__virt_to_maddr
Unexecuted instantiation: sched_credit.c:__virt_to_maddr
Unexecuted instantiation: sched_arinc653.c:__virt_to_maddr
Unexecuted instantiation: rwlock.c:__virt_to_maddr
Unexecuted instantiation: rcupdate.c:__virt_to_maddr
Unexecuted instantiation: radix-tree.c:__virt_to_maddr
Unexecuted instantiation: rangeset.c:__virt_to_maddr
Unexecuted instantiation: random.c:__virt_to_maddr
Unexecuted instantiation: preempt.c:__virt_to_maddr
Unexecuted instantiation: pdx.c:__virt_to_maddr
Unexecuted instantiation: page_alloc.c:__virt_to_maddr
Unexecuted instantiation: notifier.c:__virt_to_maddr
Unexecuted instantiation: multicall.c:__virt_to_maddr
Unexecuted instantiation: monitor.c:__virt_to_maddr
Unexecuted instantiation: memory.c:__virt_to_maddr
Unexecuted instantiation: mem_access.c:__virt_to_maddr
Unexecuted instantiation: kimage.c:__virt_to_maddr
Unexecuted instantiation: kexec.c:__virt_to_maddr
Unexecuted instantiation: keyhandler.c:__virt_to_maddr
Unexecuted instantiation: kernel.c:__virt_to_maddr
Unexecuted instantiation: irq.c:__virt_to_maddr
Unexecuted instantiation: guestcopy.c:__virt_to_maddr
grant_table.c:__virt_to_maddr
Line
Count
Source
53
1
{
54
1
    ASSERT(va < DIRECTMAP_VIRT_END);
55
1
    if ( va >= DIRECTMAP_VIRT_START )
56
1
        va -= DIRECTMAP_VIRT_START;
57
1
    else
58
0
    {
59
0
        BUILD_BUG_ON(XEN_VIRT_END - XEN_VIRT_START != GB(1));
60
0
        /* Signed, so ((long)XEN_VIRT_START >> 30) fits in an imm32. */
61
0
        ASSERT(((long)va >> (PAGE_ORDER_1G + PAGE_SHIFT)) ==
62
0
               ((long)XEN_VIRT_START >> (PAGE_ORDER_1G + PAGE_SHIFT)));
63
0
64
0
        va += xen_phys_start - XEN_VIRT_START;
65
0
    }
66
1
    return (va & ma_va_bottom_mask) |
67
1
           ((va << pfn_pdx_hole_shift) & ma_top_mask);
68
1
}
Unexecuted instantiation: event_fifo.c:__virt_to_maddr
Unexecuted instantiation: event_channel.c:__virt_to_maddr
Unexecuted instantiation: event_2l.c:__virt_to_maddr
domain.c:__virt_to_maddr
Line
Count
Source
53
12
{
54
12
    ASSERT(va < DIRECTMAP_VIRT_END);
55
12
    if ( va >= DIRECTMAP_VIRT_START )
56
0
        va -= DIRECTMAP_VIRT_START;
57
12
    else
58
12
    {
59
12
        BUILD_BUG_ON(XEN_VIRT_END - XEN_VIRT_START != GB(1));
60
12
        /* Signed, so ((long)XEN_VIRT_START >> 30) fits in an imm32. */
61
12
        ASSERT(((long)va >> (PAGE_ORDER_1G + PAGE_SHIFT)) ==
62
12
               ((long)XEN_VIRT_START >> (PAGE_ORDER_1G + PAGE_SHIFT)));
63
12
64
12
        va += xen_phys_start - XEN_VIRT_START;
65
12
    }
66
12
    return (va & ma_va_bottom_mask) |
67
12
           ((va << pfn_pdx_hole_shift) & ma_top_mask);
68
12
}
domctl.c:__virt_to_maddr
Line
Count
Source
53
4
{
54
4
    ASSERT(va < DIRECTMAP_VIRT_END);
55
4
    if ( va >= DIRECTMAP_VIRT_START )
56
4
        va -= DIRECTMAP_VIRT_START;
57
4
    else
58
0
    {
59
0
        BUILD_BUG_ON(XEN_VIRT_END - XEN_VIRT_START != GB(1));
60
0
        /* Signed, so ((long)XEN_VIRT_START >> 30) fits in an imm32. */
61
0
        ASSERT(((long)va >> (PAGE_ORDER_1G + PAGE_SHIFT)) ==
62
0
               ((long)XEN_VIRT_START >> (PAGE_ORDER_1G + PAGE_SHIFT)));
63
0
64
0
        va += xen_phys_start - XEN_VIRT_START;
65
0
    }
66
4
    return (va & ma_va_bottom_mask) |
67
4
           ((va << pfn_pdx_hole_shift) & ma_top_mask);
68
4
}
Unexecuted instantiation: cpupool.c:__virt_to_maddr
Unexecuted instantiation: cpu.c:__virt_to_maddr
Unexecuted instantiation: core_parking.c:__virt_to_maddr
Unexecuted instantiation: stub.c:__virt_to_maddr
69
70
static inline void *__maddr_to_virt(unsigned long ma)
71
43.7M
{
72
43.7M
    ASSERT(pfn_to_pdx(ma >> PAGE_SHIFT) < (DIRECTMAP_SIZE >> PAGE_SHIFT));
73
43.7M
    return (void *)(DIRECTMAP_VIRT_START +
74
43.7M
                    ((ma & ma_va_bottom_mask) |
75
43.7M
                     ((ma & ma_top_mask) >> pfn_pdx_hole_shift)));
76
43.7M
}
Unexecuted instantiation: stub.c:__maddr_to_virt
Unexecuted instantiation: core_parking.c:__maddr_to_virt
Unexecuted instantiation: cpu.c:__maddr_to_virt
Unexecuted instantiation: cpupool.c:__maddr_to_virt
Unexecuted instantiation: domctl.c:__maddr_to_virt
Unexecuted instantiation: domain.c:__maddr_to_virt
Unexecuted instantiation: event_2l.c:__maddr_to_virt
Unexecuted instantiation: event_channel.c:__maddr_to_virt
Unexecuted instantiation: event_fifo.c:__maddr_to_virt
Unexecuted instantiation: grant_table.c:__maddr_to_virt
Unexecuted instantiation: guestcopy.c:__maddr_to_virt
Unexecuted instantiation: irq.c:__maddr_to_virt
Unexecuted instantiation: kernel.c:__maddr_to_virt
Unexecuted instantiation: keyhandler.c:__maddr_to_virt
Unexecuted instantiation: kexec.c:__maddr_to_virt
Unexecuted instantiation: kimage.c:__maddr_to_virt
Unexecuted instantiation: mem_access.c:__maddr_to_virt
Unexecuted instantiation: memory.c:__maddr_to_virt
Unexecuted instantiation: monitor.c:__maddr_to_virt
Unexecuted instantiation: multicall.c:__maddr_to_virt
Unexecuted instantiation: notifier.c:__maddr_to_virt
page_alloc.c:__maddr_to_virt
Line
Count
Source
71
1
{
72
1
    ASSERT(pfn_to_pdx(ma >> PAGE_SHIFT) < (DIRECTMAP_SIZE >> PAGE_SHIFT));
73
1
    return (void *)(DIRECTMAP_VIRT_START +
74
1
                    ((ma & ma_va_bottom_mask) |
75
1
                     ((ma & ma_top_mask) >> pfn_pdx_hole_shift)));
76
1
}
Unexecuted instantiation: pdx.c:__maddr_to_virt
Unexecuted instantiation: preempt.c:__maddr_to_virt
Unexecuted instantiation: random.c:__maddr_to_virt
Unexecuted instantiation: rangeset.c:__maddr_to_virt
Unexecuted instantiation: radix-tree.c:__maddr_to_virt
Unexecuted instantiation: rcupdate.c:__maddr_to_virt
Unexecuted instantiation: rwlock.c:__maddr_to_virt
Unexecuted instantiation: sched_arinc653.c:__maddr_to_virt
Unexecuted instantiation: sched_credit.c:__maddr_to_virt
Unexecuted instantiation: sched_credit2.c:__maddr_to_virt
Unexecuted instantiation: sched_rt.c:__maddr_to_virt
Unexecuted instantiation: sched_null.c:__maddr_to_virt
Unexecuted instantiation: schedule.c:__maddr_to_virt
Unexecuted instantiation: shutdown.c:__maddr_to_virt
Unexecuted instantiation: softirq.c:__maddr_to_virt
Unexecuted instantiation: smp.c:__maddr_to_virt
Unexecuted instantiation: spinlock.c:__maddr_to_virt
Unexecuted instantiation: stop_machine.c:__maddr_to_virt
Unexecuted instantiation: symbols.c:__maddr_to_virt
Unexecuted instantiation: sysctl.c:__maddr_to_virt
Unexecuted instantiation: tasklet.c:__maddr_to_virt
Unexecuted instantiation: time.c:__maddr_to_virt
Unexecuted instantiation: timer.c:__maddr_to_virt
Unexecuted instantiation: trace.c:__maddr_to_virt
Unexecuted instantiation: virtual_region.c:__maddr_to_virt
Unexecuted instantiation: vm_event.c:__maddr_to_virt
Unexecuted instantiation: vmap.c:__maddr_to_virt
Unexecuted instantiation: vsprintf.c:__maddr_to_virt
Unexecuted instantiation: wait.c:__maddr_to_virt
Unexecuted instantiation: xenoprof.c:__maddr_to_virt
Unexecuted instantiation: xmalloc_tlsf.c:__maddr_to_virt
Unexecuted instantiation: tmem.c:__maddr_to_virt
Unexecuted instantiation: tmem_xen.c:__maddr_to_virt
Unexecuted instantiation: tmem_control.c:__maddr_to_virt
Unexecuted instantiation: llvm.c:__maddr_to_virt
Unexecuted instantiation: libelf-tools.c:__maddr_to_virt
Unexecuted instantiation: libelf-loader.c:__maddr_to_virt
Unexecuted instantiation: libelf-dominfo.c:__maddr_to_virt
Unexecuted instantiation: console.c:__maddr_to_virt
Unexecuted instantiation: ns16550.c:__maddr_to_virt
Unexecuted instantiation: ehci-dbgp.c:__maddr_to_virt
Unexecuted instantiation: serial.c:__maddr_to_virt
Unexecuted instantiation: cpufreq.c:__maddr_to_virt
Unexecuted instantiation: cpufreq_ondemand.c:__maddr_to_virt
Unexecuted instantiation: cpufreq_misc_governors.c:__maddr_to_virt
Unexecuted instantiation: utility.c:__maddr_to_virt
Unexecuted instantiation: pci.c:__maddr_to_virt
Unexecuted instantiation: vpci.c:__maddr_to_virt
Unexecuted instantiation: header.c:__maddr_to_virt
Unexecuted instantiation: msi.c:__maddr_to_virt
Unexecuted instantiation: msix.c:__maddr_to_virt
Unexecuted instantiation: iommu.c:__maddr_to_virt
Unexecuted instantiation: io.c:__maddr_to_virt
dmar.c:__maddr_to_virt
Line
Count
Source
71
2
{
72
2
    ASSERT(pfn_to_pdx(ma >> PAGE_SHIFT) < (DIRECTMAP_SIZE >> PAGE_SHIFT));
73
2
    return (void *)(DIRECTMAP_VIRT_START +
74
2
                    ((ma & ma_va_bottom_mask) |
75
2
                     ((ma & ma_top_mask) >> pfn_pdx_hole_shift)));
76
2
}
Unexecuted instantiation: utils.c:__maddr_to_virt
Unexecuted instantiation: qinval.c:__maddr_to_virt
Unexecuted instantiation: intremap.c:__maddr_to_virt
Unexecuted instantiation: quirks.c:__maddr_to_virt
Unexecuted instantiation: vtd.c:__maddr_to_virt
Unexecuted instantiation: ats.c:__maddr_to_virt
Unexecuted instantiation: iommu_init.c:__maddr_to_virt
Unexecuted instantiation: iommu_map.c:__maddr_to_virt
Unexecuted instantiation: pci_amd_iommu.c:__maddr_to_virt
Unexecuted instantiation: iommu_intr.c:__maddr_to_virt
Unexecuted instantiation: iommu_cmd.c:__maddr_to_virt
Unexecuted instantiation: iommu_guest.c:__maddr_to_virt
Unexecuted instantiation: numa.c:__maddr_to_virt
osl.c:__maddr_to_virt
Line
Count
Source
71
9
{
72
9
    ASSERT(pfn_to_pdx(ma >> PAGE_SHIFT) < (DIRECTMAP_SIZE >> PAGE_SHIFT));
73
9
    return (void *)(DIRECTMAP_VIRT_START +
74
9
                    ((ma & ma_va_bottom_mask) |
75
9
                     ((ma & ma_top_mask) >> pfn_pdx_hole_shift)));
76
9
}
Unexecuted instantiation: pmstat.c:__maddr_to_virt
Unexecuted instantiation: hwregs.c:__maddr_to_virt
Unexecuted instantiation: reboot.c:__maddr_to_virt
Unexecuted instantiation: tbutils.c:__maddr_to_virt
Unexecuted instantiation: utglobal.c:__maddr_to_virt
erst.c:__maddr_to_virt
Line
Count
Source
71
2
{
72
2
    ASSERT(pfn_to_pdx(ma >> PAGE_SHIFT) < (DIRECTMAP_SIZE >> PAGE_SHIFT));
73
2
    return (void *)(DIRECTMAP_VIRT_START +
74
2
                    ((ma & ma_va_bottom_mask) |
75
2
                     ((ma & ma_top_mask) >> pfn_pdx_hole_shift)));
76
2
}
hest.c:__maddr_to_virt
Line
Count
Source
71
2
{
72
2
    ASSERT(pfn_to_pdx(ma >> PAGE_SHIFT) < (DIRECTMAP_SIZE >> PAGE_SHIFT));
73
2
    return (void *)(DIRECTMAP_VIRT_START +
74
2
                    ((ma & ma_va_bottom_mask) |
75
2
                     ((ma & ma_top_mask) >> pfn_pdx_hole_shift)));
76
2
}
Unexecuted instantiation: apei-base.c:__maddr_to_virt
Unexecuted instantiation: apei-io.c:__maddr_to_virt
Unexecuted instantiation: vga.c:__maddr_to_virt
Unexecuted instantiation: vesa.c:__maddr_to_virt
Unexecuted instantiation: xsm_core.c:__maddr_to_virt
Unexecuted instantiation: apic.c:__maddr_to_virt
Unexecuted instantiation: cpuid.c:__maddr_to_virt
Unexecuted instantiation: compat.c:__maddr_to_virt
Unexecuted instantiation: crash.c:__maddr_to_virt
Unexecuted instantiation: debug.c:__maddr_to_virt
Unexecuted instantiation: delay.c:__maddr_to_virt
domain_page.c:__maddr_to_virt
Line
Count
Source
71
43.7M
{
72
43.7M
    ASSERT(pfn_to_pdx(ma >> PAGE_SHIFT) < (DIRECTMAP_SIZE >> PAGE_SHIFT));
73
43.7M
    return (void *)(DIRECTMAP_VIRT_START +
74
43.7M
                    ((ma & ma_va_bottom_mask) |
75
43.7M
                     ((ma & ma_top_mask) >> pfn_pdx_hole_shift)));
76
43.7M
}
Unexecuted instantiation: e820.c:__maddr_to_virt
Unexecuted instantiation: extable.c:__maddr_to_virt
Unexecuted instantiation: flushtlb.c:__maddr_to_virt
Unexecuted instantiation: hypercall.c:__maddr_to_virt
Unexecuted instantiation: i387.c:__maddr_to_virt
Unexecuted instantiation: i8259.c:__maddr_to_virt
Unexecuted instantiation: io_apic.c:__maddr_to_virt
Unexecuted instantiation: msr.c:__maddr_to_virt
Unexecuted instantiation: ioport_emulate.c:__maddr_to_virt
Unexecuted instantiation: machine_kexec.c:__maddr_to_virt
Unexecuted instantiation: microcode_amd.c:__maddr_to_virt
Unexecuted instantiation: microcode_intel.c:__maddr_to_virt
microcode.c:__maddr_to_virt
Line
Count
Source
71
1
{
72
1
    ASSERT(pfn_to_pdx(ma >> PAGE_SHIFT) < (DIRECTMAP_SIZE >> PAGE_SHIFT));
73
1
    return (void *)(DIRECTMAP_VIRT_START +
74
1
                    ((ma & ma_va_bottom_mask) |
75
1
                     ((ma & ma_top_mask) >> pfn_pdx_hole_shift)));
76
1
}
mm.c:__maddr_to_virt
Line
Count
Source
71
28.3k
{
72
28.3k
    ASSERT(pfn_to_pdx(ma >> PAGE_SHIFT) < (DIRECTMAP_SIZE >> PAGE_SHIFT));
73
28.3k
    return (void *)(DIRECTMAP_VIRT_START +
74
28.3k
                    ((ma & ma_va_bottom_mask) |
75
28.3k
                     ((ma & ma_top_mask) >> pfn_pdx_hole_shift)));
76
28.3k
}
mpparse.c:__maddr_to_virt
Line
Count
Source
71
3
{
72
3
    ASSERT(pfn_to_pdx(ma >> PAGE_SHIFT) < (DIRECTMAP_SIZE >> PAGE_SHIFT));
73
3
    return (void *)(DIRECTMAP_VIRT_START +
74
3
                    ((ma & ma_va_bottom_mask) |
75
3
                     ((ma & ma_top_mask) >> pfn_pdx_hole_shift)));
76
3
}
Unexecuted instantiation: nmi.c:__maddr_to_virt
Unexecuted instantiation: percpu.c:__maddr_to_virt
Unexecuted instantiation: physdev.c:__maddr_to_virt
Unexecuted instantiation: platform_hypercall.c:__maddr_to_virt
Unexecuted instantiation: psr.c:__maddr_to_virt
setup.c:__maddr_to_virt
Line
Count
Source
71
30
{
72
30
    ASSERT(pfn_to_pdx(ma >> PAGE_SHIFT) < (DIRECTMAP_SIZE >> PAGE_SHIFT));
73
30
    return (void *)(DIRECTMAP_VIRT_START +
74
30
                    ((ma & ma_va_bottom_mask) |
75
30
                     ((ma & ma_top_mask) >> pfn_pdx_hole_shift)));
76
30
}
smpboot.c:__maddr_to_virt
Line
Count
Source
71
44
{
72
44
    ASSERT(pfn_to_pdx(ma >> PAGE_SHIFT) < (DIRECTMAP_SIZE >> PAGE_SHIFT));
73
44
    return (void *)(DIRECTMAP_VIRT_START +
74
44
                    ((ma & ma_va_bottom_mask) |
75
44
                     ((ma & ma_top_mask) >> pfn_pdx_hole_shift)));
76
44
}
Unexecuted instantiation: srat.c:__maddr_to_virt
Unexecuted instantiation: traps.c:__maddr_to_virt
Unexecuted instantiation: usercopy.c:__maddr_to_virt
Unexecuted instantiation: x86_emulate.c:__maddr_to_virt
Unexecuted instantiation: tboot.c:__maddr_to_virt
Unexecuted instantiation: hpet.c:__maddr_to_virt
Unexecuted instantiation: xstate.c:__maddr_to_virt
lib.c:__maddr_to_virt
Line
Count
Source
71
5
{
72
5
    ASSERT(pfn_to_pdx(ma >> PAGE_SHIFT) < (DIRECTMAP_SIZE >> PAGE_SHIFT));
73
5
    return (void *)(DIRECTMAP_VIRT_START +
74
5
                    ((ma & ma_va_bottom_mask) |
75
5
                     ((ma & ma_top_mask) >> pfn_pdx_hole_shift)));
76
5
}
Unexecuted instantiation: power.c:__maddr_to_virt
Unexecuted instantiation: suspend.c:__maddr_to_virt
Unexecuted instantiation: cpu_idle.c:__maddr_to_virt
Unexecuted instantiation: cpuidle_menu.c:__maddr_to_virt
Unexecuted instantiation: powernow.c:__maddr_to_virt
Unexecuted instantiation: amd.c:__maddr_to_virt
Unexecuted instantiation: centaur.c:__maddr_to_virt
common.c:__maddr_to_virt
Line
Count
Source
71
1
{
72
1
    ASSERT(pfn_to_pdx(ma >> PAGE_SHIFT) < (DIRECTMAP_SIZE >> PAGE_SHIFT));
73
1
    return (void *)(DIRECTMAP_VIRT_START +
74
1
                    ((ma & ma_va_bottom_mask) |
75
1
                     ((ma & ma_top_mask) >> pfn_pdx_hole_shift)));
76
1
}
Unexecuted instantiation: intel.c:__maddr_to_virt
Unexecuted instantiation: intel_cacheinfo.c:__maddr_to_virt
Unexecuted instantiation: mwait-idle.c:__maddr_to_virt
Unexecuted instantiation: vpmu.c:__maddr_to_virt
Unexecuted instantiation: vpmu_amd.c:__maddr_to_virt
Unexecuted instantiation: vpmu_intel.c:__maddr_to_virt
Unexecuted instantiation: amd_nonfatal.c:__maddr_to_virt
Unexecuted instantiation: mce_amd.c:__maddr_to_virt
Unexecuted instantiation: mcaction.c:__maddr_to_virt
Unexecuted instantiation: barrier.c:__maddr_to_virt
Unexecuted instantiation: mctelem.c:__maddr_to_virt
Unexecuted instantiation: mce.c:__maddr_to_virt
Unexecuted instantiation: mce-apei.c:__maddr_to_virt
Unexecuted instantiation: mce_intel.c:__maddr_to_virt
Unexecuted instantiation: non-fatal.c:__maddr_to_virt
Unexecuted instantiation: util.c:__maddr_to_virt
Unexecuted instantiation: vmce.c:__maddr_to_virt
Unexecuted instantiation: generic.c:__maddr_to_virt
Unexecuted instantiation: main.c:__maddr_to_virt
Unexecuted instantiation: bigsmp.c:__maddr_to_virt
Unexecuted instantiation: x2apic.c:__maddr_to_virt
Unexecuted instantiation: default.c:__maddr_to_virt
Unexecuted instantiation: delivery.c:__maddr_to_virt
Unexecuted instantiation: probe.c:__maddr_to_virt
Unexecuted instantiation: asid.c:__maddr_to_virt
Unexecuted instantiation: dm.c:__maddr_to_virt
Unexecuted instantiation: emulate.c:__maddr_to_virt
Unexecuted instantiation: hvm.c:__maddr_to_virt
Unexecuted instantiation: i8254.c:__maddr_to_virt
Unexecuted instantiation: intercept.c:__maddr_to_virt
Unexecuted instantiation: ioreq.c:__maddr_to_virt
Unexecuted instantiation: mtrr.c:__maddr_to_virt
Unexecuted instantiation: nestedhvm.c:__maddr_to_virt
Unexecuted instantiation: pmtimer.c:__maddr_to_virt
Unexecuted instantiation: rtc.c:__maddr_to_virt
Unexecuted instantiation: save.c:__maddr_to_virt
Unexecuted instantiation: stdvga.c:__maddr_to_virt
Unexecuted instantiation: vioapic.c:__maddr_to_virt
Unexecuted instantiation: viridian.c:__maddr_to_virt
Unexecuted instantiation: vlapic.c:__maddr_to_virt
Unexecuted instantiation: vmsi.c:__maddr_to_virt
Unexecuted instantiation: vpic.c:__maddr_to_virt
Unexecuted instantiation: vpt.c:__maddr_to_virt
Unexecuted instantiation: intr.c:__maddr_to_virt
Unexecuted instantiation: nestedsvm.c:__maddr_to_virt
Unexecuted instantiation: svm.c:__maddr_to_virt
Unexecuted instantiation: svmdebug.c:__maddr_to_virt
Unexecuted instantiation: vmcb.c:__maddr_to_virt
Unexecuted instantiation: realmode.c:__maddr_to_virt
Unexecuted instantiation: vmcs.c:__maddr_to_virt
Unexecuted instantiation: vmx.c:__maddr_to_virt
Unexecuted instantiation: vvmx.c:__maddr_to_virt
Unexecuted instantiation: paging.c:__maddr_to_virt
Unexecuted instantiation: p2m.c:__maddr_to_virt
Unexecuted instantiation: p2m-pt.c:__maddr_to_virt
Unexecuted instantiation: p2m-ept.c:__maddr_to_virt
Unexecuted instantiation: p2m-pod.c:__maddr_to_virt
Unexecuted instantiation: altp2m.c:__maddr_to_virt
Unexecuted instantiation: guest_walk.c:__maddr_to_virt
Unexecuted instantiation: mem_paging.c:__maddr_to_virt
Unexecuted instantiation: mem_sharing.c:__maddr_to_virt
Unexecuted instantiation: multi.c:__maddr_to_virt
Unexecuted instantiation: hap.c:__maddr_to_virt
Unexecuted instantiation: nested_hap.c:__maddr_to_virt
Unexecuted instantiation: nested_ept.c:__maddr_to_virt
Unexecuted instantiation: nmi_int.c:__maddr_to_virt
Unexecuted instantiation: op_model_p4.c:__maddr_to_virt
Unexecuted instantiation: op_model_ppro.c:__maddr_to_virt
Unexecuted instantiation: op_model_athlon.c:__maddr_to_virt
Unexecuted instantiation: backtrace.c:__maddr_to_virt
Unexecuted instantiation: callback.c:__maddr_to_virt
Unexecuted instantiation: descriptor-tables.c:__maddr_to_virt
Unexecuted instantiation: emul-gate-op.c:__maddr_to_virt
Unexecuted instantiation: emul-inv-op.c:__maddr_to_virt
Unexecuted instantiation: emul-priv-op.c:__maddr_to_virt
Unexecuted instantiation: iret.c:__maddr_to_virt
Unexecuted instantiation: misc-hypercalls.c:__maddr_to_virt
Unexecuted instantiation: ro-page-fault.c:__maddr_to_virt
Unexecuted instantiation: acpi_mmcfg.c:__maddr_to_virt
Unexecuted instantiation: mmconf-fam10h.c:__maddr_to_virt
Unexecuted instantiation: mmconfig_64.c:__maddr_to_virt
Unexecuted instantiation: mmconfig-shared.c:__maddr_to_virt
77
78
/* read access (should only be used for debug printk's) */
79
typedef u64 intpte_t;
80
#define PRIpte "016lx"
81
82
typedef struct { intpte_t l1; } l1_pgentry_t;
83
typedef struct { intpte_t l2; } l2_pgentry_t;
84
typedef struct { intpte_t l3; } l3_pgentry_t;
85
typedef struct { intpte_t l4; } l4_pgentry_t;
86
typedef l4_pgentry_t root_pgentry_t;
87
88
#endif /* !__ASSEMBLY__ */
89
90
#define pte_read_atomic(ptep)       read_atomic(ptep)
91
6.20k
#define pte_write_atomic(ptep, pte) write_atomic(ptep, pte)
92
18.4E
#define pte_write(ptep, pte)        write_atomic(ptep, pte)
93
94
/* Given a virtual address, get an entry offset into a linear page table. */
95
0
#define l1_linear_offset(_a) (((_a) & VADDR_MASK) >> L1_PAGETABLE_SHIFT)
96
0
#define l2_linear_offset(_a) (((_a) & VADDR_MASK) >> L2_PAGETABLE_SHIFT)
97
0
#define l3_linear_offset(_a) (((_a) & VADDR_MASK) >> L3_PAGETABLE_SHIFT)
98
#define l4_linear_offset(_a) (((_a) & VADDR_MASK) >> L4_PAGETABLE_SHIFT)
99
100
#define is_guest_l2_slot(_d, _t, _s)                   \
101
0
    ( !is_pv_32bit_domain(_d) ||                       \
102
0
      !((_t) & PGT_pae_xen_l2) ||                      \
103
0
      ((_s) < COMPAT_L2_PAGETABLE_FIRST_XEN_SLOT(_d)) )
104
#define is_guest_l4_slot(_d, _s)                    \
105
0
    ( is_pv_32bit_domain(_d)                        \
106
0
      ? ((_s) == 0)                                 \
107
0
      : (((_s) < ROOT_PAGETABLE_FIRST_XEN_SLOT) ||  \
108
0
         ((_s) > ROOT_PAGETABLE_LAST_XEN_SLOT)))
109
110
#define root_get_pfn              l4e_get_pfn
111
#define root_get_flags            l4e_get_flags
112
#define root_get_intpte           l4e_get_intpte
113
#define root_empty                l4e_empty
114
#define root_from_paddr           l4e_from_paddr
115
0
#define PGT_root_page_table       PGT_l4_page_table
116
117
/*
118
 * PTE pfn and flags:
119
 *  40-bit pfn   = (pte[51:12])
120
 *  24-bit flags = (pte[63:52],pte[11:0])
121
 */
122
123
/* Extract flags into 24-bit integer, or turn 24-bit flags into a pte mask. */
124
#ifndef __ASSEMBLY__
125
static inline unsigned int get_pte_flags(intpte_t x)
126
1.89M
{
127
1.89M
    return ((x >> 40) & ~0xfff) | (x & 0xfff);
128
1.89M
}
Unexecuted instantiation: stub.c:get_pte_flags
Unexecuted instantiation: mmconfig-shared.c:get_pte_flags
Unexecuted instantiation: core_parking.c:get_pte_flags
Unexecuted instantiation: cpu.c:get_pte_flags
Unexecuted instantiation: cpupool.c:get_pte_flags
Unexecuted instantiation: domctl.c:get_pte_flags
Unexecuted instantiation: domain.c:get_pte_flags
Unexecuted instantiation: event_2l.c:get_pte_flags
Unexecuted instantiation: event_channel.c:get_pte_flags
Unexecuted instantiation: event_fifo.c:get_pte_flags
Unexecuted instantiation: grant_table.c:get_pte_flags
Unexecuted instantiation: guestcopy.c:get_pte_flags
Unexecuted instantiation: irq.c:get_pte_flags
Unexecuted instantiation: kernel.c:get_pte_flags
Unexecuted instantiation: keyhandler.c:get_pte_flags
Unexecuted instantiation: kexec.c:get_pte_flags
Unexecuted instantiation: kimage.c:get_pte_flags
Unexecuted instantiation: mem_access.c:get_pte_flags
Unexecuted instantiation: memory.c:get_pte_flags
Unexecuted instantiation: monitor.c:get_pte_flags
Unexecuted instantiation: multicall.c:get_pte_flags
Unexecuted instantiation: notifier.c:get_pte_flags
Unexecuted instantiation: page_alloc.c:get_pte_flags
Unexecuted instantiation: pdx.c:get_pte_flags
Unexecuted instantiation: preempt.c:get_pte_flags
Unexecuted instantiation: random.c:get_pte_flags
Unexecuted instantiation: rangeset.c:get_pte_flags
Unexecuted instantiation: radix-tree.c:get_pte_flags
Unexecuted instantiation: rcupdate.c:get_pte_flags
Unexecuted instantiation: rwlock.c:get_pte_flags
Unexecuted instantiation: sched_arinc653.c:get_pte_flags
Unexecuted instantiation: sched_credit.c:get_pte_flags
Unexecuted instantiation: sched_credit2.c:get_pte_flags
Unexecuted instantiation: sched_rt.c:get_pte_flags
Unexecuted instantiation: sched_null.c:get_pte_flags
Unexecuted instantiation: schedule.c:get_pte_flags
Unexecuted instantiation: shutdown.c:get_pte_flags
Unexecuted instantiation: softirq.c:get_pte_flags
Unexecuted instantiation: smp.c:get_pte_flags
Unexecuted instantiation: spinlock.c:get_pte_flags
Unexecuted instantiation: stop_machine.c:get_pte_flags
Unexecuted instantiation: symbols.c:get_pte_flags
Unexecuted instantiation: sysctl.c:get_pte_flags
Unexecuted instantiation: tasklet.c:get_pte_flags
Unexecuted instantiation: time.c:get_pte_flags
Unexecuted instantiation: timer.c:get_pte_flags
Unexecuted instantiation: trace.c:get_pte_flags
Unexecuted instantiation: virtual_region.c:get_pte_flags
Unexecuted instantiation: vm_event.c:get_pte_flags
Unexecuted instantiation: vmap.c:get_pte_flags
Unexecuted instantiation: vsprintf.c:get_pte_flags
Unexecuted instantiation: wait.c:get_pte_flags
Unexecuted instantiation: xenoprof.c:get_pte_flags
Unexecuted instantiation: xmalloc_tlsf.c:get_pte_flags
Unexecuted instantiation: tmem.c:get_pte_flags
Unexecuted instantiation: tmem_xen.c:get_pte_flags
Unexecuted instantiation: tmem_control.c:get_pte_flags
Unexecuted instantiation: llvm.c:get_pte_flags
Unexecuted instantiation: libelf-tools.c:get_pte_flags
Unexecuted instantiation: libelf-loader.c:get_pte_flags
Unexecuted instantiation: libelf-dominfo.c:get_pte_flags
Unexecuted instantiation: console.c:get_pte_flags
Unexecuted instantiation: ns16550.c:get_pte_flags
Unexecuted instantiation: ehci-dbgp.c:get_pte_flags
Unexecuted instantiation: serial.c:get_pte_flags
Unexecuted instantiation: cpufreq.c:get_pte_flags
Unexecuted instantiation: cpufreq_ondemand.c:get_pte_flags
Unexecuted instantiation: cpufreq_misc_governors.c:get_pte_flags
Unexecuted instantiation: utility.c:get_pte_flags
Unexecuted instantiation: pci.c:get_pte_flags
Unexecuted instantiation: vpci.c:get_pte_flags
Unexecuted instantiation: header.c:get_pte_flags
Unexecuted instantiation: msi.c:get_pte_flags
Unexecuted instantiation: msix.c:get_pte_flags
Unexecuted instantiation: iommu.c:get_pte_flags
Unexecuted instantiation: io.c:get_pte_flags
Unexecuted instantiation: dmar.c:get_pte_flags
Unexecuted instantiation: utils.c:get_pte_flags
Unexecuted instantiation: qinval.c:get_pte_flags
Unexecuted instantiation: intremap.c:get_pte_flags
Unexecuted instantiation: quirks.c:get_pte_flags
Unexecuted instantiation: vtd.c:get_pte_flags
Unexecuted instantiation: ats.c:get_pte_flags
Unexecuted instantiation: iommu_init.c:get_pte_flags
Unexecuted instantiation: iommu_map.c:get_pte_flags
Unexecuted instantiation: pci_amd_iommu.c:get_pte_flags
Unexecuted instantiation: iommu_intr.c:get_pte_flags
Unexecuted instantiation: iommu_cmd.c:get_pte_flags
Unexecuted instantiation: iommu_guest.c:get_pte_flags
Unexecuted instantiation: numa.c:get_pte_flags
Unexecuted instantiation: osl.c:get_pte_flags
Unexecuted instantiation: pmstat.c:get_pte_flags
Unexecuted instantiation: hwregs.c:get_pte_flags
Unexecuted instantiation: reboot.c:get_pte_flags
Unexecuted instantiation: tbutils.c:get_pte_flags
Unexecuted instantiation: utglobal.c:get_pte_flags
Unexecuted instantiation: erst.c:get_pte_flags
Unexecuted instantiation: hest.c:get_pte_flags
Unexecuted instantiation: apei-base.c:get_pte_flags
Unexecuted instantiation: apei-io.c:get_pte_flags
Unexecuted instantiation: vga.c:get_pte_flags
Unexecuted instantiation: vesa.c:get_pte_flags
Unexecuted instantiation: xsm_core.c:get_pte_flags
Unexecuted instantiation: apic.c:get_pte_flags
Unexecuted instantiation: cpuid.c:get_pte_flags
Unexecuted instantiation: compat.c:get_pte_flags
Unexecuted instantiation: crash.c:get_pte_flags
Unexecuted instantiation: debug.c:get_pte_flags
Unexecuted instantiation: delay.c:get_pte_flags
Unexecuted instantiation: domain_page.c:get_pte_flags
Unexecuted instantiation: e820.c:get_pte_flags
Unexecuted instantiation: extable.c:get_pte_flags
Unexecuted instantiation: flushtlb.c:get_pte_flags
Unexecuted instantiation: hypercall.c:get_pte_flags
Unexecuted instantiation: i387.c:get_pte_flags
Unexecuted instantiation: i8259.c:get_pte_flags
Unexecuted instantiation: io_apic.c:get_pte_flags
Unexecuted instantiation: msr.c:get_pte_flags
Unexecuted instantiation: ioport_emulate.c:get_pte_flags
Unexecuted instantiation: machine_kexec.c:get_pte_flags
Unexecuted instantiation: microcode_amd.c:get_pte_flags
Unexecuted instantiation: microcode_intel.c:get_pte_flags
Unexecuted instantiation: microcode.c:get_pte_flags
mm.c:get_pte_flags
Line
Count
Source
126
71.6k
{
127
71.6k
    return ((x >> 40) & ~0xfff) | (x & 0xfff);
128
71.6k
}
Unexecuted instantiation: mpparse.c:get_pte_flags
Unexecuted instantiation: nmi.c:get_pte_flags
Unexecuted instantiation: percpu.c:get_pte_flags
Unexecuted instantiation: physdev.c:get_pte_flags
Unexecuted instantiation: platform_hypercall.c:get_pte_flags
Unexecuted instantiation: psr.c:get_pte_flags
Unexecuted instantiation: setup.c:get_pte_flags
Unexecuted instantiation: smpboot.c:get_pte_flags
Unexecuted instantiation: srat.c:get_pte_flags
Unexecuted instantiation: traps.c:get_pte_flags
Unexecuted instantiation: usercopy.c:get_pte_flags
Unexecuted instantiation: x86_emulate.c:get_pte_flags
Unexecuted instantiation: tboot.c:get_pte_flags
Unexecuted instantiation: hpet.c:get_pte_flags
Unexecuted instantiation: xstate.c:get_pte_flags
Unexecuted instantiation: lib.c:get_pte_flags
Unexecuted instantiation: power.c:get_pte_flags
Unexecuted instantiation: suspend.c:get_pte_flags
Unexecuted instantiation: cpu_idle.c:get_pte_flags
Unexecuted instantiation: cpuidle_menu.c:get_pte_flags
Unexecuted instantiation: powernow.c:get_pte_flags
Unexecuted instantiation: amd.c:get_pte_flags
Unexecuted instantiation: centaur.c:get_pte_flags
Unexecuted instantiation: common.c:get_pte_flags
Unexecuted instantiation: intel.c:get_pte_flags
Unexecuted instantiation: intel_cacheinfo.c:get_pte_flags
Unexecuted instantiation: mwait-idle.c:get_pte_flags
Unexecuted instantiation: vpmu.c:get_pte_flags
Unexecuted instantiation: vpmu_amd.c:get_pte_flags
Unexecuted instantiation: vpmu_intel.c:get_pte_flags
Unexecuted instantiation: amd_nonfatal.c:get_pte_flags
Unexecuted instantiation: mce_amd.c:get_pte_flags
Unexecuted instantiation: mcaction.c:get_pte_flags
Unexecuted instantiation: barrier.c:get_pte_flags
Unexecuted instantiation: mctelem.c:get_pte_flags
Unexecuted instantiation: mce.c:get_pte_flags
Unexecuted instantiation: mce-apei.c:get_pte_flags
Unexecuted instantiation: mce_intel.c:get_pte_flags
Unexecuted instantiation: non-fatal.c:get_pte_flags
Unexecuted instantiation: util.c:get_pte_flags
Unexecuted instantiation: vmce.c:get_pte_flags
Unexecuted instantiation: generic.c:get_pte_flags
Unexecuted instantiation: main.c:get_pte_flags
Unexecuted instantiation: bigsmp.c:get_pte_flags
Unexecuted instantiation: x2apic.c:get_pte_flags
Unexecuted instantiation: default.c:get_pte_flags
Unexecuted instantiation: delivery.c:get_pte_flags
Unexecuted instantiation: probe.c:get_pte_flags
Unexecuted instantiation: asid.c:get_pte_flags
Unexecuted instantiation: dm.c:get_pte_flags
Unexecuted instantiation: emulate.c:get_pte_flags
Unexecuted instantiation: hvm.c:get_pte_flags
Unexecuted instantiation: i8254.c:get_pte_flags
Unexecuted instantiation: intercept.c:get_pte_flags
Unexecuted instantiation: ioreq.c:get_pte_flags
Unexecuted instantiation: mtrr.c:get_pte_flags
Unexecuted instantiation: nestedhvm.c:get_pte_flags
Unexecuted instantiation: pmtimer.c:get_pte_flags
Unexecuted instantiation: rtc.c:get_pte_flags
Unexecuted instantiation: save.c:get_pte_flags
Unexecuted instantiation: stdvga.c:get_pte_flags
Unexecuted instantiation: vioapic.c:get_pte_flags
Unexecuted instantiation: viridian.c:get_pte_flags
Unexecuted instantiation: vlapic.c:get_pte_flags
Unexecuted instantiation: vmsi.c:get_pte_flags
Unexecuted instantiation: vpic.c:get_pte_flags
Unexecuted instantiation: vpt.c:get_pte_flags
Unexecuted instantiation: intr.c:get_pte_flags
Unexecuted instantiation: nestedsvm.c:get_pte_flags
Unexecuted instantiation: svm.c:get_pte_flags
Unexecuted instantiation: svmdebug.c:get_pte_flags
Unexecuted instantiation: vmcb.c:get_pte_flags
Unexecuted instantiation: realmode.c:get_pte_flags
Unexecuted instantiation: vmcs.c:get_pte_flags
Unexecuted instantiation: vmx.c:get_pte_flags
Unexecuted instantiation: vvmx.c:get_pte_flags
Unexecuted instantiation: paging.c:get_pte_flags
Unexecuted instantiation: p2m.c:get_pte_flags
Unexecuted instantiation: p2m-pt.c:get_pte_flags
Unexecuted instantiation: p2m-ept.c:get_pte_flags
Unexecuted instantiation: p2m-pod.c:get_pte_flags
Unexecuted instantiation: altp2m.c:get_pte_flags
guest_walk.c:get_pte_flags
Line
Count
Source
126
1.81M
{
127
1.81M
    return ((x >> 40) & ~0xfff) | (x & 0xfff);
128
1.81M
}
Unexecuted instantiation: mem_paging.c:get_pte_flags
Unexecuted instantiation: mem_sharing.c:get_pte_flags
Unexecuted instantiation: multi.c:get_pte_flags
Unexecuted instantiation: hap.c:get_pte_flags
Unexecuted instantiation: nested_hap.c:get_pte_flags
Unexecuted instantiation: nested_ept.c:get_pte_flags
Unexecuted instantiation: nmi_int.c:get_pte_flags
Unexecuted instantiation: op_model_p4.c:get_pte_flags
Unexecuted instantiation: op_model_ppro.c:get_pte_flags
Unexecuted instantiation: op_model_athlon.c:get_pte_flags
Unexecuted instantiation: backtrace.c:get_pte_flags
Unexecuted instantiation: callback.c:get_pte_flags
Unexecuted instantiation: descriptor-tables.c:get_pte_flags
Unexecuted instantiation: emul-gate-op.c:get_pte_flags
Unexecuted instantiation: emul-inv-op.c:get_pte_flags
Unexecuted instantiation: emul-priv-op.c:get_pte_flags
Unexecuted instantiation: iret.c:get_pte_flags
Unexecuted instantiation: misc-hypercalls.c:get_pte_flags
Unexecuted instantiation: ro-page-fault.c:get_pte_flags
Unexecuted instantiation: acpi_mmcfg.c:get_pte_flags
Unexecuted instantiation: mmconf-fam10h.c:get_pte_flags
Unexecuted instantiation: mmconfig_64.c:get_pte_flags
129
130
static inline intpte_t put_pte_flags(unsigned int x)
131
234k
{
132
234k
    return (((intpte_t)x & ~0xfff) << 40) | (x & 0xfff);
133
234k
}
Unexecuted instantiation: core_parking.c:put_pte_flags
Unexecuted instantiation: mmconfig-shared.c:put_pte_flags
Unexecuted instantiation: mmconfig_64.c:put_pte_flags
Unexecuted instantiation: mmconf-fam10h.c:put_pte_flags
Unexecuted instantiation: acpi_mmcfg.c:put_pte_flags
Unexecuted instantiation: ro-page-fault.c:put_pte_flags
Unexecuted instantiation: misc-hypercalls.c:put_pte_flags
Unexecuted instantiation: iret.c:put_pte_flags
Unexecuted instantiation: emul-priv-op.c:put_pte_flags
Unexecuted instantiation: emul-inv-op.c:put_pte_flags
Unexecuted instantiation: emul-gate-op.c:put_pte_flags
Unexecuted instantiation: descriptor-tables.c:put_pte_flags
Unexecuted instantiation: callback.c:put_pte_flags
Unexecuted instantiation: backtrace.c:put_pte_flags
Unexecuted instantiation: op_model_athlon.c:put_pte_flags
Unexecuted instantiation: op_model_ppro.c:put_pte_flags
Unexecuted instantiation: op_model_p4.c:put_pte_flags
Unexecuted instantiation: nmi_int.c:put_pte_flags
Unexecuted instantiation: nested_ept.c:put_pte_flags
Unexecuted instantiation: nested_hap.c:put_pte_flags
Unexecuted instantiation: hap.c:put_pte_flags
Unexecuted instantiation: multi.c:put_pte_flags
Unexecuted instantiation: mem_sharing.c:put_pte_flags
Unexecuted instantiation: mem_paging.c:put_pte_flags
guest_walk.c:put_pte_flags
Line
Count
Source
131
225k
{
132
225k
    return (((intpte_t)x & ~0xfff) << 40) | (x & 0xfff);
133
225k
}
Unexecuted instantiation: altp2m.c:put_pte_flags
Unexecuted instantiation: p2m-pod.c:put_pte_flags
Unexecuted instantiation: p2m-ept.c:put_pte_flags
Unexecuted instantiation: p2m-pt.c:put_pte_flags
Unexecuted instantiation: p2m.c:put_pte_flags
Unexecuted instantiation: paging.c:put_pte_flags
Unexecuted instantiation: vvmx.c:put_pte_flags
Unexecuted instantiation: vmx.c:put_pte_flags
Unexecuted instantiation: vmcs.c:put_pte_flags
Unexecuted instantiation: realmode.c:put_pte_flags
Unexecuted instantiation: vmcb.c:put_pte_flags
Unexecuted instantiation: svmdebug.c:put_pte_flags
Unexecuted instantiation: svm.c:put_pte_flags
Unexecuted instantiation: nestedsvm.c:put_pte_flags
Unexecuted instantiation: intr.c:put_pte_flags
Unexecuted instantiation: vpt.c:put_pte_flags
Unexecuted instantiation: vpic.c:put_pte_flags
Unexecuted instantiation: vmsi.c:put_pte_flags
Unexecuted instantiation: vlapic.c:put_pte_flags
Unexecuted instantiation: viridian.c:put_pte_flags
Unexecuted instantiation: vioapic.c:put_pte_flags
Unexecuted instantiation: stdvga.c:put_pte_flags
Unexecuted instantiation: save.c:put_pte_flags
Unexecuted instantiation: rtc.c:put_pte_flags
Unexecuted instantiation: pmtimer.c:put_pte_flags
Unexecuted instantiation: nestedhvm.c:put_pte_flags
Unexecuted instantiation: mtrr.c:put_pte_flags
Unexecuted instantiation: ioreq.c:put_pte_flags
Unexecuted instantiation: intercept.c:put_pte_flags
Unexecuted instantiation: i8254.c:put_pte_flags
Unexecuted instantiation: hvm.c:put_pte_flags
Unexecuted instantiation: emulate.c:put_pte_flags
Unexecuted instantiation: dm.c:put_pte_flags
Unexecuted instantiation: asid.c:put_pte_flags
Unexecuted instantiation: probe.c:put_pte_flags
Unexecuted instantiation: delivery.c:put_pte_flags
Unexecuted instantiation: default.c:put_pte_flags
Unexecuted instantiation: x2apic.c:put_pte_flags
Unexecuted instantiation: bigsmp.c:put_pte_flags
Unexecuted instantiation: main.c:put_pte_flags
Unexecuted instantiation: generic.c:put_pte_flags
Unexecuted instantiation: vmce.c:put_pte_flags
Unexecuted instantiation: util.c:put_pte_flags
Unexecuted instantiation: non-fatal.c:put_pte_flags
Unexecuted instantiation: mce_intel.c:put_pte_flags
Unexecuted instantiation: mce-apei.c:put_pte_flags
Unexecuted instantiation: mce.c:put_pte_flags
Unexecuted instantiation: mctelem.c:put_pte_flags
Unexecuted instantiation: barrier.c:put_pte_flags
Unexecuted instantiation: mcaction.c:put_pte_flags
Unexecuted instantiation: mce_amd.c:put_pte_flags
Unexecuted instantiation: amd_nonfatal.c:put_pte_flags
Unexecuted instantiation: vpmu_intel.c:put_pte_flags
Unexecuted instantiation: vpmu_amd.c:put_pte_flags
Unexecuted instantiation: vpmu.c:put_pte_flags
Unexecuted instantiation: mwait-idle.c:put_pte_flags
Unexecuted instantiation: intel_cacheinfo.c:put_pte_flags
Unexecuted instantiation: intel.c:put_pte_flags
Unexecuted instantiation: common.c:put_pte_flags
Unexecuted instantiation: centaur.c:put_pte_flags
Unexecuted instantiation: amd.c:put_pte_flags
Unexecuted instantiation: powernow.c:put_pte_flags
Unexecuted instantiation: cpuidle_menu.c:put_pte_flags
Unexecuted instantiation: cpu_idle.c:put_pte_flags
Unexecuted instantiation: suspend.c:put_pte_flags
Unexecuted instantiation: power.c:put_pte_flags
Unexecuted instantiation: lib.c:put_pte_flags
Unexecuted instantiation: xstate.c:put_pte_flags
Unexecuted instantiation: hpet.c:put_pte_flags
Unexecuted instantiation: tboot.c:put_pte_flags
Unexecuted instantiation: x86_emulate.c:put_pte_flags
Unexecuted instantiation: usercopy.c:put_pte_flags
Unexecuted instantiation: traps.c:put_pte_flags
Unexecuted instantiation: srat.c:put_pte_flags
Unexecuted instantiation: smpboot.c:put_pte_flags
Unexecuted instantiation: setup.c:put_pte_flags
Unexecuted instantiation: psr.c:put_pte_flags
Unexecuted instantiation: platform_hypercall.c:put_pte_flags
Unexecuted instantiation: physdev.c:put_pte_flags
Unexecuted instantiation: percpu.c:put_pte_flags
Unexecuted instantiation: nmi.c:put_pte_flags
Unexecuted instantiation: mpparse.c:put_pte_flags
mm.c:put_pte_flags
Line
Count
Source
131
8.96k
{
132
8.96k
    return (((intpte_t)x & ~0xfff) << 40) | (x & 0xfff);
133
8.96k
}
Unexecuted instantiation: microcode.c:put_pte_flags
Unexecuted instantiation: microcode_intel.c:put_pte_flags
Unexecuted instantiation: microcode_amd.c:put_pte_flags
Unexecuted instantiation: machine_kexec.c:put_pte_flags
Unexecuted instantiation: ioport_emulate.c:put_pte_flags
Unexecuted instantiation: msr.c:put_pte_flags
Unexecuted instantiation: io_apic.c:put_pte_flags
Unexecuted instantiation: i8259.c:put_pte_flags
Unexecuted instantiation: i387.c:put_pte_flags
Unexecuted instantiation: hypercall.c:put_pte_flags
Unexecuted instantiation: flushtlb.c:put_pte_flags
Unexecuted instantiation: extable.c:put_pte_flags
Unexecuted instantiation: e820.c:put_pte_flags
Unexecuted instantiation: domain_page.c:put_pte_flags
Unexecuted instantiation: delay.c:put_pte_flags
Unexecuted instantiation: debug.c:put_pte_flags
Unexecuted instantiation: crash.c:put_pte_flags
Unexecuted instantiation: compat.c:put_pte_flags
Unexecuted instantiation: cpuid.c:put_pte_flags
Unexecuted instantiation: apic.c:put_pte_flags
Unexecuted instantiation: xsm_core.c:put_pte_flags
Unexecuted instantiation: vesa.c:put_pte_flags
Unexecuted instantiation: vga.c:put_pte_flags
Unexecuted instantiation: apei-io.c:put_pte_flags
Unexecuted instantiation: apei-base.c:put_pte_flags
Unexecuted instantiation: hest.c:put_pte_flags
Unexecuted instantiation: erst.c:put_pte_flags
Unexecuted instantiation: utglobal.c:put_pte_flags
Unexecuted instantiation: tbutils.c:put_pte_flags
Unexecuted instantiation: reboot.c:put_pte_flags
Unexecuted instantiation: hwregs.c:put_pte_flags
Unexecuted instantiation: pmstat.c:put_pte_flags
Unexecuted instantiation: osl.c:put_pte_flags
Unexecuted instantiation: numa.c:put_pte_flags
Unexecuted instantiation: iommu_guest.c:put_pte_flags
Unexecuted instantiation: iommu_cmd.c:put_pte_flags
Unexecuted instantiation: iommu_intr.c:put_pte_flags
Unexecuted instantiation: pci_amd_iommu.c:put_pte_flags
Unexecuted instantiation: iommu_map.c:put_pte_flags
Unexecuted instantiation: iommu_init.c:put_pte_flags
Unexecuted instantiation: ats.c:put_pte_flags
Unexecuted instantiation: vtd.c:put_pte_flags
Unexecuted instantiation: quirks.c:put_pte_flags
Unexecuted instantiation: intremap.c:put_pte_flags
Unexecuted instantiation: qinval.c:put_pte_flags
Unexecuted instantiation: utils.c:put_pte_flags
Unexecuted instantiation: dmar.c:put_pte_flags
Unexecuted instantiation: io.c:put_pte_flags
Unexecuted instantiation: iommu.c:put_pte_flags
Unexecuted instantiation: msix.c:put_pte_flags
Unexecuted instantiation: msi.c:put_pte_flags
Unexecuted instantiation: header.c:put_pte_flags
Unexecuted instantiation: vpci.c:put_pte_flags
Unexecuted instantiation: pci.c:put_pte_flags
Unexecuted instantiation: utility.c:put_pte_flags
Unexecuted instantiation: cpufreq_misc_governors.c:put_pte_flags
Unexecuted instantiation: cpufreq_ondemand.c:put_pte_flags
Unexecuted instantiation: cpufreq.c:put_pte_flags
Unexecuted instantiation: serial.c:put_pte_flags
Unexecuted instantiation: ehci-dbgp.c:put_pte_flags
Unexecuted instantiation: ns16550.c:put_pte_flags
Unexecuted instantiation: console.c:put_pte_flags
Unexecuted instantiation: libelf-dominfo.c:put_pte_flags
Unexecuted instantiation: libelf-loader.c:put_pte_flags
Unexecuted instantiation: libelf-tools.c:put_pte_flags
Unexecuted instantiation: llvm.c:put_pte_flags
Unexecuted instantiation: tmem_control.c:put_pte_flags
Unexecuted instantiation: tmem_xen.c:put_pte_flags
Unexecuted instantiation: tmem.c:put_pte_flags
Unexecuted instantiation: xmalloc_tlsf.c:put_pte_flags
Unexecuted instantiation: xenoprof.c:put_pte_flags
Unexecuted instantiation: wait.c:put_pte_flags
Unexecuted instantiation: vsprintf.c:put_pte_flags
Unexecuted instantiation: vmap.c:put_pte_flags
Unexecuted instantiation: vm_event.c:put_pte_flags
Unexecuted instantiation: virtual_region.c:put_pte_flags
Unexecuted instantiation: trace.c:put_pte_flags
Unexecuted instantiation: timer.c:put_pte_flags
Unexecuted instantiation: time.c:put_pte_flags
Unexecuted instantiation: tasklet.c:put_pte_flags
Unexecuted instantiation: sysctl.c:put_pte_flags
Unexecuted instantiation: symbols.c:put_pte_flags
Unexecuted instantiation: stop_machine.c:put_pte_flags
Unexecuted instantiation: spinlock.c:put_pte_flags
Unexecuted instantiation: smp.c:put_pte_flags
Unexecuted instantiation: softirq.c:put_pte_flags
Unexecuted instantiation: shutdown.c:put_pte_flags
Unexecuted instantiation: schedule.c:put_pte_flags
Unexecuted instantiation: sched_null.c:put_pte_flags
Unexecuted instantiation: sched_rt.c:put_pte_flags
Unexecuted instantiation: sched_credit2.c:put_pte_flags
Unexecuted instantiation: sched_credit.c:put_pte_flags
Unexecuted instantiation: sched_arinc653.c:put_pte_flags
Unexecuted instantiation: rwlock.c:put_pte_flags
Unexecuted instantiation: rcupdate.c:put_pte_flags
Unexecuted instantiation: radix-tree.c:put_pte_flags
Unexecuted instantiation: rangeset.c:put_pte_flags
Unexecuted instantiation: random.c:put_pte_flags
Unexecuted instantiation: preempt.c:put_pte_flags
Unexecuted instantiation: pdx.c:put_pte_flags
Unexecuted instantiation: page_alloc.c:put_pte_flags
Unexecuted instantiation: notifier.c:put_pte_flags
Unexecuted instantiation: multicall.c:put_pte_flags
Unexecuted instantiation: monitor.c:put_pte_flags
Unexecuted instantiation: memory.c:put_pte_flags
Unexecuted instantiation: mem_access.c:put_pte_flags
Unexecuted instantiation: kimage.c:put_pte_flags
Unexecuted instantiation: kexec.c:put_pte_flags
Unexecuted instantiation: keyhandler.c:put_pte_flags
Unexecuted instantiation: kernel.c:put_pte_flags
Unexecuted instantiation: irq.c:put_pte_flags
Unexecuted instantiation: guestcopy.c:put_pte_flags
Unexecuted instantiation: grant_table.c:put_pte_flags
Unexecuted instantiation: event_fifo.c:put_pte_flags
Unexecuted instantiation: event_channel.c:put_pte_flags
Unexecuted instantiation: event_2l.c:put_pte_flags
Unexecuted instantiation: domain.c:put_pte_flags
Unexecuted instantiation: domctl.c:put_pte_flags
Unexecuted instantiation: cpupool.c:put_pte_flags
Unexecuted instantiation: cpu.c:put_pte_flags
Unexecuted instantiation: stub.c:put_pte_flags
134
#endif
135
136
/*
137
 * Protection keys define a new 4-bit protection key field
138
 * (PKEY) in bits 62:59 of leaf entries of the page tables.
139
 * This corresponds to bit 22:19 of a 24-bit flags.
140
 *
141
 * Notice: Bit 22 is used by _PAGE_GNTTAB which is visible to PV guests,
142
 * so Protection keys must be disabled on PV guests.
143
 */
144
225k
#define _PAGE_PKEY_BITS  (0x780000)   /* Protection Keys, 22:19 */
145
146
0
#define get_pte_pkey(x) (MASK_EXTR(get_pte_flags(x), _PAGE_PKEY_BITS))
147
148
/* Bit 23 of a 24-bit flag mask. This corresponds to bit 63 of a pte.*/
149
796k
#define _PAGE_NX_BIT (1U<<23)
150
151
/* Bit 22 of a 24-bit flag mask. This corresponds to bit 62 of a pte.*/
152
0
#define _PAGE_GNTTAB (1U<<22)
153
154
/*
155
 * Bit 12 of a 24-bit flag mask. This corresponds to bit 52 of a pte.
156
 * This is needed to distinguish between user and kernel PTEs since _PAGE_USER
157
 * is asserted for both.
158
 */
159
0
#define _PAGE_GUEST_KERNEL (1U<<12)
160
161
1
#define PAGE_HYPERVISOR_RO      (__PAGE_HYPERVISOR_RO      | _PAGE_GLOBAL)
162
8.09k
#define PAGE_HYPERVISOR_RW      (__PAGE_HYPERVISOR_RW      | _PAGE_GLOBAL)
163
13
#define PAGE_HYPERVISOR_RX      (__PAGE_HYPERVISOR_RX      | _PAGE_GLOBAL)
164
0
#define PAGE_HYPERVISOR_RWX     (__PAGE_HYPERVISOR         | _PAGE_GLOBAL)
165
166
#ifdef __ASSEMBLY__
167
/* Dependency on NX being available can't be expressed. */
168
# define PAGE_HYPERVISOR         PAGE_HYPERVISOR_RWX
169
# define PAGE_HYPERVISOR_UCMINUS (__PAGE_HYPERVISOR_UCMINUS | _PAGE_GLOBAL)
170
# define PAGE_HYPERVISOR_UC      (__PAGE_HYPERVISOR_UC      | _PAGE_GLOBAL)
171
#else
172
8.09k
# define PAGE_HYPERVISOR         PAGE_HYPERVISOR_RW
173
38
# define PAGE_HYPERVISOR_UCMINUS (__PAGE_HYPERVISOR_UCMINUS | \
174
38
                                  _PAGE_GLOBAL | _PAGE_NX)
175
1
# define PAGE_HYPERVISOR_UC      (__PAGE_HYPERVISOR_UC | \
176
1
                                  _PAGE_GLOBAL | _PAGE_NX)
177
#endif
178
179
#endif /* __X86_64_PAGE_H__ */
180
181
/*
182
 * Local variables:
183
 * mode: C
184
 * c-file-style: "BSD"
185
 * c-basic-offset: 4
186
 * tab-width: 4
187
 * indent-tabs-mode: nil
188
 * End:
189
 */