From: Ulrich Drepper Date: Wed, 4 Jan 2006 19:34:40 +0000 (+0000) Subject: Test for lio_listio returning an error for LIO_WAIT if an IO request failed. X-Git-Tag: upstream/2.30~15980 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=4da28a490bc322423d9b26de8abe377965666ef9;p=external%2Fglibc.git Test for lio_listio returning an error for LIO_WAIT if an IO request failed. --- diff --git a/rt/tst-aio8.c b/rt/tst-aio8.c new file mode 100644 index 0000000..531a08a --- /dev/null +++ b/rt/tst-aio8.c @@ -0,0 +1,38 @@ +#include +#include +#include +#include +#include +#include + +static int +do_test (void) +{ + int fd = open ("/dev/full", O_RDWR); + if (fd == -1) + { + puts ("could not open /dev/full"); + return 0; + } + + struct aiocb req; + req.aio_fildes = fd; + req.aio_lio_opcode = LIO_WRITE; + req.aio_reqprio = 0; + req.aio_buf = (void *) "hello"; + req.aio_nbytes = 5; + req.aio_sigevent.sigev_notify = SIGEV_NONE; + + struct aiocb *list[1]; + list[0] = &req; + + int r = lio_listio (LIO_WAIT, list, 1, NULL); + int e = errno; + + printf ("r = %d, e = %d (%s)\n", r, e, strerror (e)); + + return r != -1 || e != EIO; +} + +#define TEST_FUNCTION do_test () +#include "../test-skeleton.c"