Revision 3f4cb3d3 block-cow.c
b/block-cow.c | ||
---|---|---|
95 | 95 |
|
96 | 96 |
/* mmap the bitmap */ |
97 | 97 |
s->cow_bitmap_size = ((bs->total_sectors + 7) >> 3) + sizeof(cow_header); |
98 |
s->cow_bitmap_addr = mmap(get_mmap_addr(s->cow_bitmap_size), |
|
99 |
s->cow_bitmap_size, |
|
100 |
PROT_READ | PROT_WRITE, |
|
101 |
MAP_SHARED, s->fd, 0); |
|
98 |
s->cow_bitmap_addr = (void *)mmap(get_mmap_addr(s->cow_bitmap_size),
|
|
99 |
s->cow_bitmap_size,
|
|
100 |
PROT_READ | PROT_WRITE,
|
|
101 |
MAP_SHARED, s->fd, 0);
|
|
102 | 102 |
if (s->cow_bitmap_addr == MAP_FAILED) |
103 | 103 |
goto fail; |
104 | 104 |
s->cow_bitmap = s->cow_bitmap_addr + sizeof(cow_header); |
... | ... | |
197 | 197 |
static void cow_close(BlockDriverState *bs) |
198 | 198 |
{ |
199 | 199 |
BDRVCowState *s = bs->opaque; |
200 |
munmap(s->cow_bitmap_addr, s->cow_bitmap_size); |
|
200 |
munmap((void *)s->cow_bitmap_addr, s->cow_bitmap_size);
|
|
201 | 201 |
close(s->fd); |
202 | 202 |
} |
203 | 203 |
|
Also available in: Unified diff