Add sleep to avoid the busy loop when waiting for the aiocb
completion.

Signed-off-by: Wanlong Gao <[email protected]>
---
 .../conformance/interfaces/aio_cancel/8-1.c                | 10 +++++++++-
 .../conformance/interfaces/aio_error/1-1.c                 | 11 ++++++-----
 .../conformance/interfaces/aio_fsync/5-1.c                 | 10 ++++++++--
 .../conformance/interfaces/aio_read/1-1.c                  |  6 ++++--
 .../conformance/interfaces/aio_read/10-1.c                 |  7 ++++---
 .../conformance/interfaces/aio_read/11-1.c                 |  7 +++++--
 .../conformance/interfaces/aio_read/3-1.c                  | 11 ++++++-----
 .../conformance/interfaces/aio_read/3-2.c                  | 11 ++++++-----
 .../conformance/interfaces/aio_read/4-1.c                  |  6 ++++--
 .../conformance/interfaces/aio_read/5-1.c                  |  6 ++++--
 .../conformance/interfaces/aio_read/7-1.c                  |  6 +++++-
 .../conformance/interfaces/aio_return/1-1.c                |  7 +++++--
 .../conformance/interfaces/aio_return/2-1.c                |  7 +++++--
 .../conformance/interfaces/aio_return/3-1.c                | 14 ++++++++++----
 .../conformance/interfaces/aio_return/3-2.c                |  7 +++++--
 .../conformance/interfaces/aio_return/4-1.c                |  7 +++++--
 .../conformance/interfaces/aio_write/1-1.c                 |  6 ++++--
 .../conformance/interfaces/aio_write/1-2.c                 |  6 ++++--
 .../conformance/interfaces/aio_write/2-1.c                 |  5 ++++-
 .../conformance/interfaces/aio_write/3-1.c                 |  6 ++++--
 .../conformance/interfaces/aio_write/5-1.c                 |  6 ++++--
 .../conformance/interfaces/aio_write/8-1.c                 |  6 ++++--
 .../conformance/interfaces/aio_write/8-2.c                 |  6 ++++--
 .../conformance/interfaces/aio_write/9-1.c                 |  7 +++++--
 .../conformance/interfaces/aio_write/9-2.c                 |  7 +++++--
 25 files changed, 129 insertions(+), 59 deletions(-)

diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_cancel/8-1.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_cancel/8-1.c
index 988f3e4..c461dde 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_cancel/8-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_cancel/8-1.c
@@ -42,6 +42,7 @@ int main()
 #define BUF_SIZE 1024
        char buf[BUF_SIZE];
        int fd;
+       int ret;
        struct aiocb aiocb;
 
        if (sysconf(_SC_ASYNCHRONOUS_IO) < 200112L)
@@ -69,7 +70,14 @@ int main()
                return PTS_FAIL;
        }
 
-       while (aio_error(&aiocb) == EINPROGRESS) ;
+       do {
+               usleep(10000);
+               ret = aio_error(&aiocb);
+       } while (ret == EINPROGRESS);
+       if (ret < 0) {
+               printf(TNAME " Error at aio_error() : %s\n", strerror(ret));
+               exit(PTS_FAIL);
+       }
 
        if (aio_cancel(fd, &aiocb) != AIO_ALLDONE) {
                printf(TNAME " Error at aio_cancel(): %s\n", strerror(errno));
diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_error/1-1.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_error/1-1.c
index 31c04f1..16c8a0a 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_error/1-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_error/1-1.c
@@ -67,12 +67,13 @@ int main()
                return PTS_FAIL;
        }
 
-       while (aio_error(&aiocb) == EINPROGRESS) ;
-
-       ret = aio_error(&aiocb);
+       do {
+               usleep(10000);
+               ret = aio_error(&aiocb);
+       } while (ret == EINPROGRESS);
        if (ret != 0) {
-               printf(TNAME " Error at aio_error(): %s\n", strerror(ret));
-               return PTS_FAIL;
+               printf(TNAME " Error at aio_error() : %s\n", strerror(ret));
+               exit(PTS_FAIL);
        }
 
        close(fd);
diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_fsync/5-1.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_fsync/5-1.c
index ddc4a69..438a430 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_fsync/5-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_fsync/5-1.c
@@ -72,8 +72,14 @@ int main()
         * something else
         * otherwise test hangs
         */
-
-       while (aio_error(&aiocb_fsync) == EINPROGRESS) ;
+       do {
+               usleep(10000);
+               ret = aio_error(&aiocb_fsync);
+       } while (ret == EINPROGRESS);
+       if (ret < 0) {
+               printf(TNAME " Error at aio_error() : %s\n", strerror(ret));
+               exit(PTS_FAIL);
+       }
 
        close(fd);
 
diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_read/1-1.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_read/1-1.c
index 4e7f58f..3b1743e 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_read/1-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_read/1-1.c
@@ -81,9 +81,11 @@ int main()
        }
 
        /* Wait until end of transaction */
-       while ((err = aio_error(&aiocb)) == EINPROGRESS) ;
+       do {
+               usleep(10000);
+               err = aio_error(&aiocb);
+       } while (err == EINPROGRESS);
 
-       err = aio_error(&aiocb);
        ret = aio_return(&aiocb);
 
        if (err != 0) {
diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_read/10-1.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_read/10-1.c
index 29986ed..2b07b8e 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_read/10-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_read/10-1.c
@@ -61,9 +61,10 @@ int main()
                exit(PTS_FAIL);
        }
 
-       while (aio_error(&aiocb) == EINPROGRESS) ;
-       ret = aio_error(&aiocb);
-
+       do {
+               usleep(10000);
+               ret = aio_error(&aiocb);
+       } while (ret == EINPROGRESS);
        if (ret != EBADF) {
                printf(TNAME " errno is not EBADF %s\n", strerror(errno));
                exit(PTS_FAIL);
diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_read/11-1.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_read/11-1.c
index 4f89ee6..f22251a 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_read/11-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_read/11-1.c
@@ -70,9 +70,12 @@ int main()
        aiocb.aio_nbytes = BUF_SIZE;
 
        if (aio_read(&aiocb) != -1) {
-               while (aio_error(&aiocb) == EINPROGRESS) ;
+               int err;
+               do {
+                       usleep(10000);
+                       err = aio_error(&aiocb);
+               } while (err == EINPROGRESS);
 
-               int err = aio_error(&aiocb);
                int ret = aio_return(&aiocb);
 
                if (ret != -1) {
diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_read/3-1.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_read/3-1.c
index 3789acc..0f8fa97 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_read/3-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_read/3-1.c
@@ -39,6 +39,7 @@ int main()
 #define BUF_SIZE 111
        char buf[BUF_SIZE];
        int fd;
+       int ret;
        struct aiocb aiocb;
 
        if (sysconf(_SC_ASYNCHRONOUS_IO) < 200112L)
@@ -71,13 +72,13 @@ int main()
        }
 
        /* Wait for request completion */
-       while (aio_error(&aiocb) == EINPROGRESS) ;
+       do {
+               usleep(10000);
+               ret = aio_error(&aiocb);
+       } while (ret == EINPROGRESS);
 
        /* error status shall be 0 and return status shall be BUF_SIZE */
-
-       while (aio_error(&aiocb) == EINPROGRESS) ;
-
-       if (aio_error(&aiocb) != 0) {
+       if (ret != 0) {
                printf(TNAME " Error at aio_error()\n");
                exit(PTS_FAIL);
        }
diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_read/3-2.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_read/3-2.c
index ad4f044..7086ee8 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_read/3-2.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_read/3-2.c
@@ -39,6 +39,7 @@ int main()
 #define BUF_SIZE 1024
        char buf[BUF_SIZE];
        int fd;
+       int ret;
        struct aiocb aiocb;
 
        if (sysconf(_SC_ASYNCHRONOUS_IO) < 200112L)
@@ -73,13 +74,13 @@ int main()
        }
 
        /* Wait for request completion */
-       while (aio_error(&aiocb) == EINPROGRESS) ;
+       do {
+               usleep(10000);
+               ret = aio_error(&aiocb);
+       } while (ret == EINPROGRESS);
 
        /* error status shall be 0 and return status shall be BUF_SIZE/2 */
-
-       while (aio_error(&aiocb) == EINPROGRESS) ;
-
-       if (aio_error(&aiocb) != 0) {
+       if (ret != 0) {
                printf(TNAME " Error at aio_error()\n");
                exit(PTS_FAIL);
        }
diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_read/4-1.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_read/4-1.c
index 1b87aa8..aa033ab 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_read/4-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_read/4-1.c
@@ -81,9 +81,11 @@ int main()
        int ret;
 
        /* Wait until end of transaction */
-       while ((err = aio_error(&aiocb)) == EINPROGRESS) ;
+       do {
+               usleep(10000);
+               err = aio_error(&aiocb);
+       } while (err == EINPROGRESS);
 
-       err = aio_error(&aiocb);
        ret = aio_return(&aiocb);
 
        if (err != 0) {
diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_read/5-1.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_read/5-1.c
index f24d936..853c602 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_read/5-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_read/5-1.c
@@ -82,9 +82,11 @@ int main()
        int ret;
 
        /* Wait until end of transaction */
-       while ((err = aio_error(&aiocb)) == EINPROGRESS) ;
+       do {
+               usleep(10000);
+               err = aio_error(&aiocb);
+       } while (err == EINPROGRESS);
 
-       err = aio_error(&aiocb);
        ret = aio_return(&aiocb);
 
        if (err != 0) {
diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_read/7-1.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_read/7-1.c
index ccc2caa..2213799 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_read/7-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_read/7-1.c
@@ -40,6 +40,7 @@ int main()
 #define BUF_SIZE 111
        unsigned char check[BUF_SIZE];
        int fd;
+       int ret;
        struct aiocb aiocb;
 
        if (sysconf(_SC_ASYNCHRONOUS_IO) < 200112L)
@@ -67,7 +68,10 @@ int main()
                exit(PTS_FAIL);
        }
 
-       while (aio_error(&aiocb) == EINPROGRESS) ;
+       do {
+               usleep(10000);
+               ret = aio_error(&aiocb);
+       } while (ret == EINPROGRESS);
 
        close(fd);
        printf("Test PASSED\n");
diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_return/1-1.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_return/1-1.c
index e5f268f..a76ebd6 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_return/1-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_return/1-1.c
@@ -70,8 +70,11 @@ int main(void)
                exit(PTS_FAIL);
        }
 
-       while (aio_error(&aiocb) == EINPROGRESS)
-               sleep(1);
+       do {
+               usleep(10000);
+               retval = aio_error(&aiocb);
+       } while (retval == EINPROGRESS);
+
        retval = aio_return(&aiocb);
 
        if (retval == -1) {
diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_return/2-1.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_return/2-1.c
index e17dc6a..77d976d 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_return/2-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_return/2-1.c
@@ -69,8 +69,11 @@ int main(void)
                exit(PTS_FAIL);
        }
 
-       while (aio_error(&aiocb) == EINPROGRESS)
-               sleep(1);
+       do {
+               usleep(10000);
+               retval = aio_error(&aiocb);
+       } while (retval == EINPROGRESS);
+
        retval = aio_return(&aiocb);
 
        if (0 < retval) {
diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_return/3-1.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_return/3-1.c
index 0ba8226..bdb1a83 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_return/3-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_return/3-1.c
@@ -74,8 +74,11 @@ int main(void)
                exit(PTS_FAIL);
        }
 
-       while (aio_error(&aiocb) == EINPROGRESS)
-               sleep(1);
+       do {
+               usleep(10000);
+               retval = aio_error(&aiocb);
+       } while (retval == EINPROGRESS);
+
        retval = aio_return(&aiocb);
 
        if (retval == -1) {
@@ -97,8 +100,11 @@ int main(void)
                exit(PTS_FAIL);
        }
 
-       while (aio_error(&aiocb) == EINPROGRESS)
-               sleep(1);
+       do {
+               usleep(10000);
+               retval = aio_error(&aiocb);
+       } while (retval == EINPROGRESS);
+
        retval = aio_return(&aiocb);
 
        if (retval == -1) {
diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_return/3-2.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_return/3-2.c
index eb16587..8df6585 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_return/3-2.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_return/3-2.c
@@ -72,8 +72,11 @@ int main(void)
                exit(PTS_FAIL);
        }
 
-       while (aio_error(&aiocb) == EINPROGRESS)
-               sleep(1);
+       do {
+               usleep(10000);
+               retval = aio_error(&aiocb);
+       } while (retval == EINPROGRESS);
+
        retval = aio_return(&aiocb);
 
        if (retval == -1) {
diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_return/4-1.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_return/4-1.c
index 1c056d4..388c985 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_return/4-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_return/4-1.c
@@ -71,8 +71,11 @@ int main(void)
                exit(PTS_FAIL);
        }
 
-       while (aio_error(&aiocb) == EINPROGRESS)
-               sleep(1);
+       do {
+               usleep(10000);
+               retval = aio_error(&aiocb);
+       } while (retval == EINPROGRESS);
+
        retval = aio_error(&aiocb);
 
        if (retval == 0) {
diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_write/1-1.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_write/1-1.c
index f500232..0c129a6 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_write/1-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_write/1-1.c
@@ -74,9 +74,11 @@ int main()
        }
 
        /* Wait until completion */
-       while (aio_error(&aiocb) == EINPROGRESS) ;
+       do {
+               usleep(10000);
+               err = aio_error(&aiocb);
+       } while (err == EINPROGRESS);
 
-       err = aio_error(&aiocb);
        ret = aio_return(&aiocb);
 
        if (err != 0) {
diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_write/1-2.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_write/1-2.c
index 8412b54..6ea5a93 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_write/1-2.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_write/1-2.c
@@ -87,9 +87,11 @@ int main()
        }
 
        /* Wait until end of transaction */
-       while (aio_error(&aiocb) == EINPROGRESS) ;
+       do {
+               usleep(10000);
+               err = aio_error(&aiocb);
+       } while (err == EINPROGRESS);
 
-       err = aio_error(&aiocb);
        ret = aio_return(&aiocb);
 
        if (err != 0) {
diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_write/2-1.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_write/2-1.c
index cc4c217..7927f31 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_write/2-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_write/2-1.c
@@ -86,7 +86,10 @@ int main()
        }
 
        /* Wait until completion */
-       while (aio_error(&aiocb[2]) == EINPROGRESS) ;
+       do {
+               usleep(10000);
+               err = aio_error(&aiocb[2]);
+       } while (err == EINPROGRESS);
 
        for (i = 0; i < 3; i++) {
                err = aio_error(&aiocb[i]);
diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_write/3-1.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_write/3-1.c
index a7e7997..fd06b56 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_write/3-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_write/3-1.c
@@ -74,9 +74,11 @@ int main()
        }
 
        /* Wait until completion */
-       while (aio_error(&aiocb) == EINPROGRESS) ;
+       do {
+               usleep(10000);
+               err = aio_error(&aiocb);
+       } while (err == EINPROGRESS);
 
-       err = aio_error(&aiocb);
        ret = aio_return(&aiocb);
 
        if (err != 0) {
diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_write/5-1.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_write/5-1.c
index bafd8ac..6a245f0 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_write/5-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_write/5-1.c
@@ -70,9 +70,11 @@ int main()
        }
 
        /* Wait until completion */
-       while (aio_error(&aiocb) == EINPROGRESS) ;
+       do {
+               usleep(10000);
+               err = aio_error(&aiocb);
+       } while (err == EINPROGRESS);
 
-       err = aio_error(&aiocb);
        ret = aio_return(&aiocb);
 
        if (err != 0) {
diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_write/8-1.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_write/8-1.c
index 21e5615..5f6b535 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_write/8-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_write/8-1.c
@@ -61,8 +61,10 @@ int main()
                exit(PTS_FAIL);
        }
 
-       while (aio_error(&aiocb) == EINPROGRESS) ;
-       ret = aio_error(&aiocb);
+       do {
+               usleep(10000);
+               ret = aio_error(&aiocb);
+       } while (ret == EINPROGRESS);
 
        if (ret != EBADF) {
                printf(TNAME " errno is not EBADF %s\n", strerror(errno));
diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_write/8-2.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_write/8-2.c
index d184bc2..b11cb1d 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_write/8-2.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_write/8-2.c
@@ -74,8 +74,10 @@ int main()
                exit(PTS_FAIL);
        }
 
-       while (aio_error(&aiocb) == EINPROGRESS) ;
-       ret = aio_error(&aiocb);
+       do {
+               usleep(10000);
+               ret = aio_error(&aiocb);
+       } while (ret == EINPROGRESS);
 
        if (ret != EBADF) {
                printf(TNAME " errno is not EBADF %s\n", strerror(errno));
diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_write/9-1.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_write/9-1.c
index 40ba68e..e368ce7 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_write/9-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_write/9-1.c
@@ -67,9 +67,12 @@ int main()
        aiocb.aio_nbytes = BUF_SIZE;
 
        if (aio_write(&aiocb) != -1) {
-               while (aio_error(&aiocb) == EINPROGRESS) ;
+               int err;
+               do {
+                       usleep(10000);
+                       err = aio_error(&aiocb);
+               } while (err == EINPROGRESS);
 
-               int err = aio_error(&aiocb);
                int ret = aio_return(&aiocb);
 
                if (ret != -1) {
diff --git 
a/testcases/open_posix_testsuite/conformance/interfaces/aio_write/9-2.c 
b/testcases/open_posix_testsuite/conformance/interfaces/aio_write/9-2.c
index 21f20db..6450c77 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/aio_write/9-2.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/aio_write/9-2.c
@@ -67,9 +67,12 @@ int main()
        aiocb.aio_nbytes = BUF_SIZE;
 
        if (aio_write(&aiocb) != -1) {
-               while (aio_error(&aiocb) == EINPROGRESS) ;
+               int err;
+               do {
+                       usleep(10000);
+                       err = aio_error(&aiocb);
+               } while (err == EINPROGRESS);
 
-               int err = aio_error(&aiocb);
                int ret = aio_return(&aiocb);
 
                if (ret != -1) {
-- 
1.8.0


------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list

Reply via email to