Commit acce87f92b8eefce3f12ddb85d63fb600794e729
1 parent
0d0ab49a
Really fix the BSD build this time
struct aioinit isn't defined on BSD it appears so we need to guard everything in an #if defined(__linux__). Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5325 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
16 additions
and
11 deletions
block-raw-posix.c
| ... | ... | @@ -569,7 +569,6 @@ static int posix_aio_init(void) |
| 569 | 569 | { |
| 570 | 570 | sigset_t mask; |
| 571 | 571 | PosixAioState *s; |
| 572 | - struct aioinit ai; | |
| 573 | 572 | |
| 574 | 573 | if (posix_aio_state) |
| 575 | 574 | return 0; |
| ... | ... | @@ -590,18 +589,24 @@ static int posix_aio_init(void) |
| 590 | 589 | |
| 591 | 590 | qemu_aio_set_fd_handler(s->fd, posix_aio_read, NULL, posix_aio_flush, s); |
| 592 | 591 | |
| 593 | - memset(&ai, 0, sizeof(ai)); | |
| 594 | -#if !defined(__linux__) || (defined(__GLIBC_PREREQ) && __GLIBC_PREREQ(2, 4)) | |
| 595 | - ai.aio_threads = 5; | |
| 596 | - ai.aio_num = 1; | |
| 592 | +#if defined(__linux__) | |
| 593 | + { | |
| 594 | + struct aioinit ai; | |
| 595 | + | |
| 596 | + memset(&ai, 0, sizeof(ai)); | |
| 597 | +#if defined(__GLIBC_PREREQ) && __GLIBC_PREREQ(2, 4) | |
| 598 | + ai.aio_threads = 64; | |
| 599 | + ai.aio_num = 64; | |
| 597 | 600 | #else |
| 598 | - /* XXX: aio thread exit seems to hang on RedHat 9 and this init | |
| 599 | - seems to fix the problem. */ | |
| 600 | - ai.aio_threads = 1; | |
| 601 | - ai.aio_num = 1; | |
| 602 | - ai.aio_idle_time = 365 * 100000; | |
| 601 | + /* XXX: aio thread exit seems to hang on RedHat 9 and this init | |
| 602 | + seems to fix the problem. */ | |
| 603 | + ai.aio_threads = 1; | |
| 604 | + ai.aio_num = 1; | |
| 605 | + ai.aio_idle_time = 365 * 100000; | |
| 606 | +#endif | |
| 607 | + aio_init(&ai); | |
| 608 | + } | |
| 603 | 609 | #endif |
| 604 | - aio_init(&ai); | |
| 605 | 610 | posix_aio_state = s; |
| 606 | 611 | |
| 607 | 612 | return 0; | ... | ... |