Lines Matching refs:params
48 void MmapBenchmarkImpl(benchmark::State& state, const struct MmapParams& params, int fd, in MmapBenchmarkImpl() argument
52 void* addr = mmap(area, params.size, params.prot, params.flags, fd, 0); in MmapBenchmarkImpl()
60 if (params.prot & PROT_WRITE) { in MmapBenchmarkImpl()
61 MakeAllocationResident(addr, params.size, page_sz); in MmapBenchmarkImpl()
66 if (munmap(addr, params.size) != 0) { in MmapBenchmarkImpl()
75 static void MmapBenchmark(benchmark::State& state, const struct MmapParams& params, int fd, in MmapBenchmark() argument
77 MmapBenchmarkImpl<kBenchmarkAll>(state, params, fd, area); in MmapBenchmark()
80 static void MmapFixedBenchmark(benchmark::State& state, const struct MmapParams& params, int fd, in MmapFixedBenchmark() argument
82 if ((params.flags & MAP_FIXED) == 0) { in MmapFixedBenchmark()
89 mmap(nullptr, area_size, params.prot, params.flags & ~MAP_FIXED, fd, 0)); in MmapFixedBenchmark()
95 MmapBenchmark(state, params, fd, area + offs); in MmapFixedBenchmark()
103 static void MmapFileBenchmark(benchmark::State& state, const struct MmapParams& params, in MmapFileBenchmark() argument
120 if (params.flags & MAP_FIXED) { in MmapFileBenchmark()
121 MmapFixedBenchmark(state, params, tf.fd, area_size, offs); in MmapFileBenchmark()
123 MmapBenchmark(state, params, tf.fd); in MmapFileBenchmark()
129 struct MmapParams params = { in BM_syscall_mmap_anon_rw() local
135 MmapBenchmark(state, params, 0); in BM_syscall_mmap_anon_rw()
140 struct MmapParams params = { in BM_syscall_mmap_anon_noreserve() local
146 MmapBenchmark(state, params, 0); in BM_syscall_mmap_anon_noreserve()
151 struct MmapParams params = { in BM_syscall_mmap_anon_none() local
157 MmapBenchmark(state, params, 0); in BM_syscall_mmap_anon_none()
163 struct MmapParams params = { in BM_syscall_mmap_anon_rw_fixed() local
169 MmapFixedBenchmark(state, params, -1, params.size, 0); in BM_syscall_mmap_anon_rw_fixed()
174 struct MmapParams params = { in BM_syscall_mmap_anon_none_fixed() local
180 MmapFixedBenchmark(state, params, -1, params.size, 0); in BM_syscall_mmap_anon_none_fixed()
186 struct MmapParams params = { in BM_syscall_mmap_file_rd_priv() local
192 MmapFileBenchmark(state, params, params.size, 0); in BM_syscall_mmap_file_rd_priv()
197 struct MmapParams params = { in BM_syscall_mmap_file_rw_shared() local
203 MmapFileBenchmark(state, params, params.size, 0); in BM_syscall_mmap_file_rw_shared()
209 struct MmapParams params = { in BM_syscall_mmap_file_rw_priv_fixed_start() local
216 MmapFileBenchmark(state, params, params.size * 3, 0); in BM_syscall_mmap_file_rw_priv_fixed_start()
221 struct MmapParams params = { in BM_syscall_mmap_file_rw_priv_fixed_mid() local
228 MmapFileBenchmark(state, params, params.size * 3, params.size); in BM_syscall_mmap_file_rw_priv_fixed_mid()
234 struct MmapParams params = { in BM_syscall_mmap_file_rw_priv_fixed_end() local
241 MmapFileBenchmark(state, params, params.size * 3, params.size * 2); in BM_syscall_mmap_file_rw_priv_fixed_end()
247 struct MmapParams params = { in BM_syscall_mmap_anon_mmap_only() local
252 MmapBenchmarkImpl<kBenchmarkMmapOnly>(state, params, 0); in BM_syscall_mmap_anon_mmap_only()
257 struct MmapParams params = { in BM_syscall_mmap_anon_munmap_only() local
262 MmapBenchmarkImpl<kBenchmarkMunmapOnly>(state, params, 0); in BM_syscall_mmap_anon_munmap_only()
266 void MadviseBenchmark(benchmark::State& state, const struct MmapParams& params, int madvise_flags) { in MadviseBenchmark() argument
267 void* addr = mmap(nullptr, params.size, params.prot, params.flags, 0, 0); in MadviseBenchmark()
274 if (params.prot & PROT_WRITE) { in MadviseBenchmark()
275 MakeAllocationResident(addr, params.size, page_sz); in MadviseBenchmark()
279 madvise(addr, params.size, madvise_flags); in MadviseBenchmark()
282 if (munmap(addr, params.size) != 0) { in MadviseBenchmark()
288 struct MmapParams params = { in BM_syscall_mmap_anon_madvise_dontneed() local
293 MadviseBenchmark(state, params, MADV_DONTNEED); in BM_syscall_mmap_anon_madvise_dontneed()
298 struct MmapParams params = { in BM_syscall_mmap_anon_madvise_pageout() local
303 MadviseBenchmark(state, params, MADV_PAGEOUT); in BM_syscall_mmap_anon_madvise_pageout()
308 struct MmapParams params = { in BM_syscall_mmap_anon_madvise_free() local
313 MadviseBenchmark(state, params, MADV_FREE); in BM_syscall_mmap_anon_madvise_free()
317 void MprotectBenchmark(benchmark::State& state, const struct MprotectParams& params, void* addr) { in MprotectBenchmark() argument
324 if (params.initial_prot & PROT_WRITE) { in MprotectBenchmark()
325 MakeAllocationResident(addr, params.size, page_sz); in MprotectBenchmark()
329 if (mprotect(addr, params.size, params.mprotect_prot) != 0) { in MprotectBenchmark()
336 int res = mprotect(addr, params.size, params.initial_prot); in MprotectBenchmark()
347 const struct MprotectParams& params) { in MprotectBenchmarkWithMmapAnon() argument
348 void* addr = mmap(nullptr, params.size, params.initial_prot, MAP_PRIVATE | MAP_ANONYMOUS, 0, 0); in MprotectBenchmarkWithMmapAnon()
354 MprotectBenchmark(state, params, addr); in MprotectBenchmarkWithMmapAnon()
356 if (munmap(addr, params.size) != 0) in MprotectBenchmarkWithMmapAnon()
361 struct MprotectParams params = { in BM_syscall_mmap_anon_mprotect_rw_to_rd() local
366 MprotectBenchmarkWithMmapAnon(state, params); in BM_syscall_mmap_anon_mprotect_rw_to_rd()
371 struct MprotectParams params = { in BM_syscall_mmap_anon_mprotect_rw_to_none() local
376 MprotectBenchmarkWithMmapAnon(state, params); in BM_syscall_mmap_anon_mprotect_rw_to_none()
381 struct MprotectParams params = { in BM_syscall_mmap_anon_mprotect_rd_to_none() local
386 MprotectBenchmarkWithMmapAnon(state, params); in BM_syscall_mmap_anon_mprotect_rd_to_none()
391 const struct MprotectParams& params) { in MprotectBenchmarkWithMmapFile() argument
399 if (params.size > 0 && ftruncate(tf.fd, params.size)) { in MprotectBenchmarkWithMmapFile()
404 void* addr = mmap(nullptr, params.size, params.initial_prot, MAP_PRIVATE, tf.fd, 0); in MprotectBenchmarkWithMmapFile()
410 MprotectBenchmark(state, params, addr); in MprotectBenchmarkWithMmapFile()
412 if (munmap(addr, params.size) != 0) in MprotectBenchmarkWithMmapFile()
417 struct MprotectParams params = { in BM_syscall_mmap_file_mprotect_rw_to_rd() local
422 MprotectBenchmarkWithMmapFile(state, params); in BM_syscall_mmap_file_mprotect_rw_to_rd()
427 struct MprotectParams params = { in BM_syscall_mmap_file_mprotect_rw_to_none() local
432 MprotectBenchmarkWithMmapFile(state, params); in BM_syscall_mmap_file_mprotect_rw_to_none()
437 struct MprotectParams params = { in BM_syscall_mmap_file_mprotect_none_to_rw() local
442 MprotectBenchmarkWithMmapFile(state, params); in BM_syscall_mmap_file_mprotect_none_to_rw()
447 struct MprotectParams params = { in BM_syscall_mmap_file_mprotect_none_to_rd() local
452 MprotectBenchmarkWithMmapFile(state, params); in BM_syscall_mmap_file_mprotect_none_to_rd()
457 struct MprotectParams params = { in BM_syscall_mmap_file_mprotect_rd_to_none() local
462 MprotectBenchmarkWithMmapFile(state, params); in BM_syscall_mmap_file_mprotect_rd_to_none()