Lines Matching refs:fd

23 static void test_file_read_write(int fd)
27 TEST_ASSERT(read(fd, buf, sizeof(buf)) < 0,
28 "read on a guest_mem fd should fail");
29 TEST_ASSERT(write(fd, buf, sizeof(buf)) < 0,
30 "write on a guest_mem fd should fail");
31 TEST_ASSERT(pread(fd, buf, sizeof(buf), 0) < 0,
32 "pread on a guest_mem fd should fail");
33 TEST_ASSERT(pwrite(fd, buf, sizeof(buf), 0) < 0,
34 "pwrite on a guest_mem fd should fail");
37 static void test_mmap(int fd, size_t page_size)
41 mem = mmap(NULL, page_size, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0);
45 static void test_file_size(int fd, size_t page_size, size_t total_size)
50 ret = fstat(fd, &sb);
56 static void test_fallocate(int fd, size_t page_size, size_t total_size)
60 ret = fallocate(fd, FALLOC_FL_KEEP_SIZE, 0, total_size);
63 ret = fallocate(fd, FALLOC_FL_KEEP_SIZE | FALLOC_FL_PUNCH_HOLE,
67 ret = fallocate(fd, FALLOC_FL_KEEP_SIZE, total_size, page_size);
70 ret = fallocate(fd, FALLOC_FL_KEEP_SIZE, total_size + page_size, page_size);
73 ret = fallocate(fd, FALLOC_FL_KEEP_SIZE | FALLOC_FL_PUNCH_HOLE,
77 ret = fallocate(fd, FALLOC_FL_KEEP_SIZE | FALLOC_FL_PUNCH_HOLE,
81 ret = fallocate(fd, FALLOC_FL_KEEP_SIZE | FALLOC_FL_PUNCH_HOLE,
85 ret = fallocate(fd, FALLOC_FL_KEEP_SIZE | FALLOC_FL_PUNCH_HOLE,
89 ret = fallocate(fd, FALLOC_FL_KEEP_SIZE, page_size, page_size);
93 static void test_invalid_punch_hole(int fd, size_t page_size, size_t total_size)
115 ret = fallocate(fd, FALLOC_FL_KEEP_SIZE | FALLOC_FL_PUNCH_HOLE,
128 int fd;
131 fd = __vm_create_guest_memfd(vm, size, 0);
132 TEST_ASSERT(fd == -1 && errno == EINVAL,
138 fd = __vm_create_guest_memfd(vm, page_size, flag);
139 TEST_ASSERT(fd == -1 && errno == EINVAL,
177 int fd;
190 fd = vm_create_guest_memfd(vm, total_size, 0);
192 test_file_read_write(fd);
193 test_mmap(fd, page_size);
194 test_file_size(fd, page_size, total_size);
195 test_fallocate(fd, page_size, total_size);
196 test_invalid_punch_hole(fd, page_size, total_size);
198 close(fd);