MCPcopy Create free account
hub / github.com/axboe/liburing / init_buffers

Function init_buffers

test/vec-regbuf.c:112–139  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

110}
111
112static void init_buffers(struct buf_desc *bd, size_t size)
113{
114 void *start;
115 void *mem;
116
117 start = mmap(NULL, size + page_sz * 2, PROT_NONE,
118 MAP_PRIVATE | MAP_ANONYMOUS | MAP_NORESERVE, -1, 0);
119 if (start == MAP_FAILED) {
120 fprintf(stderr, "Unable to preserve the page mixture memory.\n");
121 exit(1);
122 }
123
124 mem = mmap(start + page_sz, size, PROT_READ | PROT_WRITE,
125 MAP_PRIVATE | MAP_ANONYMOUS | MAP_FIXED, -1, 0);
126 if (mem == MAP_FAILED) {
127 fprintf(stderr, "mmap fail\n");
128 exit(1);
129 }
130
131 memset(bd, 0, sizeof(*bd));
132 bd->size = size;
133 bd->buf_wr = mem;
134 bd->buf_rd = malloc(size);
135 if (!bd->buf_rd) {
136 fprintf(stderr, "malloc fail\n");
137 exit(1);
138 }
139}
140
141static int verify_data(struct buf_desc *bd, struct iovec *wr_vecs, int nr_iovec,
142 int fd)

Callers 1

mainFunction · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected