Lines Matching refs:ga
2753 static bool pgb_try_mmap_set(const PGBAddrs *ga, uintptr_t base, uintptr_t brk) in pgb_try_mmap_set() argument
2755 for (int i = ga->nbounds - 1; i >= 0; --i) { in pgb_try_mmap_set()
2756 if (pgb_try_mmap_skip_brk(ga->bounds[i][0] + base, in pgb_try_mmap_set()
2757 ga->bounds[i][1] + base, in pgb_try_mmap_set()
2774 static bool pgb_addr_set(PGBAddrs *ga, abi_ulong guest_loaddr, in pgb_addr_set() argument
2792 memset(ga, 0, sizeof(*ga)); in pgb_addr_set()
2796 ga->bounds[n][0] = try_identity ? mmap_min_addr : 0; in pgb_addr_set()
2797 ga->bounds[n][1] = reserved_va; in pgb_addr_set()
2803 ga->bounds[n][0] = 0; in pgb_addr_set()
2804 ga->bounds[n][1] = LO_COMMPAGE + TARGET_PAGE_SIZE - 1; in pgb_addr_set()
2807 ga->bounds[n][0] = 0; in pgb_addr_set()
2808 ga->bounds[n][1] = TARGET_PAGE_SIZE - 1; in pgb_addr_set()
2814 ga->bounds[n][0] = guest_loaddr; in pgb_addr_set()
2815 ga->bounds[n][1] = guest_hiaddr; in pgb_addr_set()
2830 ga->bounds[n][0] = HI_COMMPAGE & qemu_real_host_page_mask(); in pgb_addr_set()
2831 ga->bounds[n][1] = HI_COMMPAGE + TARGET_PAGE_SIZE - 1; in pgb_addr_set()
2837 ga->nbounds = n; in pgb_addr_set()
2852 PGBAddrs ga; in pgb_fixed() local
2862 if (!pgb_addr_set(&ga, guest_loaddr, guest_hiaddr, !guest_base) in pgb_fixed()
2863 || !pgb_try_mmap_set(&ga, guest_base, brk)) { in pgb_fixed()
2876 static uintptr_t pgb_find_fallback(const PGBAddrs *ga, uintptr_t align, in pgb_find_fallback() argument
2884 if (pgb_try_mmap_set(ga, base, brk)) { in pgb_find_fallback()
2893 static uintptr_t pgb_try_itree(const PGBAddrs *ga, uintptr_t base, in pgb_try_itree() argument
2896 for (int i = ga->nbounds - 1; i >= 0; --i) { in pgb_try_itree()
2897 uintptr_t s = base + ga->bounds[i][0]; in pgb_try_itree()
2898 uintptr_t l = base + ga->bounds[i][1]; in pgb_try_itree()
2915 static uintptr_t pgb_find_itree(const PGBAddrs *ga, IntervalTreeRoot *root, in pgb_find_itree() argument
2927 skip = pgb_try_itree(ga, base, root); in pgb_find_itree()
2944 return pgb_try_mmap_set(ga, base, brk) ? base : -1; in pgb_find_itree()
2952 PGBAddrs ga; in pgb_dynamic() local
2955 if (pgb_addr_set(&ga, guest_loaddr, guest_hiaddr, true)) { in pgb_dynamic()
2957 if (pgb_try_mmap_set(&ga, 0, brk)) { in pgb_dynamic()
2967 pgb_addr_set(&ga, guest_loaddr, guest_hiaddr, false); in pgb_dynamic()
2975 ret = pgb_find_fallback(&ga, align, brk); in pgb_dynamic()
2986 ret = pgb_find_itree(&ga, root, align, brk); in pgb_dynamic()
2996 for (int i = 0; i < ga.nbounds; ++i) { in pgb_dynamic()
2998 w, (uint64_t)ga.bounds[i][0], in pgb_dynamic()
2999 w, (uint64_t)ga.bounds[i][1]); in pgb_dynamic()