Lines Matching +full:1 +full:ac
8 * 1. Redistributions of source code must retain the above copyright
114 * (1) on a match, (0) on a mismatch.
128 return (1); in aio_test_buffer()
136 aio_context_init(struct aio_context *ac, int read_fd, in aio_context_init() argument
143 bzero(ac, sizeof(*ac)); in aio_context_init()
144 ac->ac_read_fd = read_fd; in aio_context_init()
145 ac->ac_write_fd = write_fd; in aio_context_init()
146 ac->ac_buflen = buflen; in aio_context_init()
148 ac->ac_seed = random(); in aio_context_init()
149 aio_fill_buffer(ac->ac_buffer, buflen, ac->ac_seed); in aio_context_init()
150 ATF_REQUIRE_MSG(aio_test_buffer(ac->ac_buffer, buflen, in aio_context_init()
151 ac->ac_seed) != 0, "aio_test_buffer: internal error"); in aio_context_init()
189 return (-1); in poll_signaled()
237 error = aio_suspend(iocbs, 1, NULL); in suspend()
280 struct kevent events[1]; in poll_kqueue()
284 nevents = kevent(kq, NULL, 0, events, 1, NULL); in poll_kqueue()
285 ATF_CHECK_EQ(1, nevents); in poll_kqueue()
301 aio_write_test(struct aio_context *ac, completion comp, struct sigevent *sev) in aio_write_test() argument
307 aio.aio_buf = ac->ac_buffer; in aio_write_test()
308 aio.aio_nbytes = ac->ac_buflen; in aio_write_test()
309 aio.aio_fildes = ac->ac_write_fd; in aio_write_test()
321 if (len != ac->ac_buflen) in aio_write_test()
333 aio_writev_test(struct aio_context *ac, completion comp, struct sigevent *sev) in aio_writev_test() argument
342 aio.aio_fildes = ac->ac_write_fd; in aio_writev_test()
344 len0 = ac->ac_buflen * 3 / 4; in aio_writev_test()
345 len1 = ac->ac_buflen / 4; in aio_writev_test()
346 iov[0].iov_base = ac->ac_buffer + len1; in aio_writev_test()
348 iov[1].iov_base = ac->ac_buffer; in aio_writev_test()
349 iov[1].iov_len = len1; in aio_writev_test()
362 if (len != ac->ac_buflen) in aio_writev_test()
371 aio_read_test(struct aio_context *ac, completion comp, struct sigevent *sev) in aio_read_test() argument
376 bzero(ac->ac_buffer, ac->ac_buflen); in aio_read_test()
378 aio.aio_buf = ac->ac_buffer; in aio_read_test()
379 aio.aio_nbytes = ac->ac_buflen; in aio_read_test()
380 aio.aio_fildes = ac->ac_read_fd; in aio_read_test()
392 ATF_REQUIRE_EQ_MSG(len, ac->ac_buflen, in aio_read_test()
395 if (aio_test_buffer(ac->ac_buffer, ac->ac_buflen, ac->ac_seed) == 0) in aio_read_test()
400 aio_readv_test(struct aio_context *ac, completion comp, struct sigevent *sev) in aio_readv_test() argument
407 bzero(ac->ac_buffer, ac->ac_buflen); in aio_readv_test()
409 aio.aio_fildes = ac->ac_read_fd; in aio_readv_test()
411 len0 = ac->ac_buflen * 3 / 4; in aio_readv_test()
412 len1 = ac->ac_buflen / 4; in aio_readv_test()
413 iov[0].iov_base = ac->ac_buffer + len1; in aio_readv_test()
415 iov[1].iov_base = ac->ac_buffer; in aio_readv_test()
416 iov[1].iov_len = len1; in aio_readv_test()
429 ATF_REQUIRE_EQ_MSG(len, ac->ac_buflen, in aio_readv_test()
432 if (aio_test_buffer(ac->ac_buffer, ac->ac_buflen, ac->ac_seed) == 0) in aio_readv_test()
452 struct aio_context ac; in aio_file_test() local
459 ATF_REQUIRE_MSG(fd != -1, "open failed: %s", strerror(errno)); in aio_file_test()
461 aio_context_init(&ac, fd, fd, FILE_LEN); in aio_file_test()
463 aio_writev_test(&ac, comp, sev); in aio_file_test()
464 aio_readv_test(&ac, comp, sev); in aio_file_test()
466 aio_write_test(&ac, comp, sev); in aio_file_test()
467 aio_read_test(&ac, comp, sev); in aio_file_test()
514 int error, read_fd = -1, write_fd = -1; in aio_fifo_test()
515 struct aio_context ac; in aio_fifo_test() local
520 ATF_REQUIRE_MSG(mkfifo(FIFO_PATHNAME, 0600) != -1, in aio_fifo_test()
524 if (read_fd == -1) { in aio_fifo_test()
532 if (write_fd == -1) { in aio_fifo_test()
539 aio_context_init(&ac, read_fd, write_fd, FIFO_LEN); in aio_fifo_test()
540 aio_write_test(&ac, comp, sev); in aio_fifo_test()
541 aio_read_test(&ac, comp, sev); in aio_fifo_test()
587 struct aio_context ac; in aio_unix_socketpair_test() local
593 ATF_REQUIRE_MSG(socketpair(PF_UNIX, SOCK_STREAM, 0, sockets) != -1, in aio_unix_socketpair_test()
596 aio_context_init(&ac, sockets[0], sockets[1], UNIX_SOCKETPAIR_LEN); in aio_unix_socketpair_test()
597 ATF_REQUIRE_MSG(getrusage(RUSAGE_SELF, &ru_before) != -1, in aio_unix_socketpair_test()
600 aio_writev_test(&ac, comp, sev); in aio_unix_socketpair_test()
601 aio_readv_test(&ac, comp, sev); in aio_unix_socketpair_test()
603 aio_write_test(&ac, comp, sev); in aio_unix_socketpair_test()
604 aio_read_test(&ac, comp, sev); in aio_unix_socketpair_test()
606 ATF_REQUIRE_MSG(getrusage(RUSAGE_SELF, &ru_after) != -1, in aio_unix_socketpair_test()
608 ATF_REQUIRE(ru_after.ru_msgsnd == ru_before.ru_msgsnd + 1); in aio_unix_socketpair_test()
609 ATF_REQUIRE(ru_after.ru_msgrcv == ru_before.ru_msgrcv + 1); in aio_unix_socketpair_test()
612 close(sockets[1]); in aio_unix_socketpair_test()
660 struct aio_context ac; in aio_pty_test() local
683 aio_context_init(&ac, read_fd, write_fd, PTY_LEN); in aio_pty_test()
685 aio_write_test(&ac, comp, sev); in aio_pty_test()
686 aio_read_test(&ac, comp, sev); in aio_pty_test()
732 struct aio_context ac; in aio_pipe_test() local
738 ATF_REQUIRE_MSG(pipe(pipes) != -1, in aio_pipe_test()
741 aio_context_init(&ac, pipes[0], pipes[1], PIPE_LEN); in aio_pipe_test()
742 aio_write_test(&ac, comp, sev); in aio_pipe_test()
743 aio_read_test(&ac, comp, sev); in aio_pipe_test()
746 close(pipes[1]); in aio_pipe_test()
799 ATF_REQUIRE_MSG(mdctl_fd != -1, in aio_md_setup()
824 ATF_REQUIRE_MSG(fd != -1, in aio_md_setup()
843 n = readlink(MDUNIT_LINK, buf, sizeof(buf) - 1); in aio_md_cleanup()
846 if (sscanf(buf, "%d", &unit) == 1 && unit >= 0) { in aio_md_cleanup()
850 if (ioctl(mdctl_fd, MDIOCDETACH, &mdio) == -1) { in aio_md_cleanup()
864 struct aio_context ac; in aio_md_test() local
868 aio_context_init(&ac, fd, fd, MD_LEN); in aio_md_test()
870 aio_writev_test(&ac, comp, sev); in aio_md_test()
871 aio_readv_test(&ac, comp, sev); in aio_md_test()
873 aio_write_test(&ac, comp, sev); in aio_md_test()
874 aio_read_test(&ac, comp, sev); in aio_md_test()
971 #define POOL_SIZE (1 << 28) /* 256 MB */
999 ATF_REQUIRE_MSG(fd != -1, "open failed: %s", strerror(errno)); in aio_zvol_setup()
1022 } while (fd == -1 && errno == EINTR); in aio_zvol_setup()
1023 ATF_REQUIRE_MSG(fd != -1, "open failed: %s", strerror(errno)); in aio_zvol_setup()
1040 ATF_REQUIRE_EQ(1, fscanf(pidfile, "%d", &testpid)); in aio_zvol_cleanup()
1066 -1) in ATF_TC_BODY()
1078 ATF_REQUIRE_MSG(fd != -1, "open failed: %s", strerror(errno)); in ATF_TC_BODY()
1086 if (aio_read(&cb) == -1) in ATF_TC_BODY()
1091 if (nread == -1) in ATF_TC_BODY()
1098 cb.aio_nbytes = len + 1; in ATF_TC_BODY()
1101 if (aio_read(&cb) == -1) { in ATF_TC_BODY()
1109 if (nread == -1) { in ATF_TC_BODY()
1142 ATF_REQUIRE(socketpair(PF_UNIX, SOCK_STREAM, 0, s) != -1); in ATF_TC_BODY()
1155 ATF_REQUIRE(write(s[1], &c, sizeof(c)) == 1); in ATF_TC_BODY()
1157 ATF_REQUIRE(aio_waitcomplete(&iocb, NULL) == 1); in ATF_TC_BODY()
1163 i = 1; in ATF_TC_BODY()
1166 i ^= 1; in ATF_TC_BODY()
1175 close(s[1]); in ATF_TC_BODY()
1192 ATF_REQUIRE(socketpair(PF_UNIX, SOCK_STREAM, 0, s) != -1); in aio_socket_blocking_short_write_test()
1196 -1); in aio_socket_blocking_short_write_test()
1200 ATF_REQUIRE(getsockopt(s[1], SOL_SOCKET, SO_SNDBUF, &sb_size, &len) != in aio_socket_blocking_short_write_test()
1201 -1); in aio_socket_blocking_short_write_test()
1215 buffer[1] = malloc(buffer_size); in aio_socket_blocking_short_write_test()
1216 ATF_REQUIRE(buffer[1] != NULL); in aio_socket_blocking_short_write_test()
1219 aio_fill_buffer(buffer[1], buffer_size, random()); in aio_socket_blocking_short_write_test()
1222 iocb.aio_fildes = s[1]; in aio_socket_blocking_short_write_test()
1224 iov[0].iov_base = buffer[1]; in aio_socket_blocking_short_write_test()
1225 iov[0].iov_len = buffer_size / 2 + 1; in aio_socket_blocking_short_write_test()
1226 iov[1].iov_base = buffer[1] + buffer_size / 2 + 1; in aio_socket_blocking_short_write_test()
1227 iov[1].iov_len = buffer_size / 2 - 1; in aio_socket_blocking_short_write_test()
1233 iocb.aio_buf = buffer[1]; in aio_socket_blocking_short_write_test()
1246 ATF_REQUIRE(memcmp(buffer[0], buffer[1], buffer_size) == 0); in aio_socket_blocking_short_write_test()
1248 close(s[1]); in aio_socket_blocking_short_write_test()
1284 ATF_REQUIRE(s != -1); in ATF_TC_BODY()
1301 ATF_REQUIRE_ERRNO(EINVAL, aio_read(&iocb) == -1); in ATF_TC_BODY()
1302 ATF_REQUIRE_ERRNO(EINVAL, aio_write(&iocb) == -1); in ATF_TC_BODY()
1320 ATF_REQUIRE(s != -1); in ATF_TC_BODY()
1337 ATF_REQUIRE_ERRNO(EINVAL, listen(s, 5) == -1); in ATF_TC_BODY()
1339 ATF_REQUIRE(aio_cancel(s, &iocb) != -1); in ATF_TC_BODY()
1361 ATF_REQUIRE(socketpair(PF_UNIX, SOCK_STREAM, 0, s) != -1); in ATF_TC_BODY()
1365 -1); in ATF_TC_BODY()
1369 ATF_REQUIRE(getsockopt(s[1], SOL_SOCKET, SO_SNDBUF, &sb_size, &len) != in ATF_TC_BODY()
1370 -1); in ATF_TC_BODY()
1385 buffer[1] = malloc(buffer_size * 3); in ATF_TC_BODY()
1386 ATF_REQUIRE(buffer[1] != NULL); in ATF_TC_BODY()
1389 aio_fill_buffer(buffer[1], buffer_size * 3, random()); in ATF_TC_BODY()
1392 iocb.aio_fildes = s[1]; in ATF_TC_BODY()
1393 iocb.aio_buf = buffer[1]; in ATF_TC_BODY()
1401 ATF_REQUIRE(aio_cancel(s[1], &iocb) == AIO_NOTCANCELED); in ATF_TC_BODY()
1407 ATF_REQUIRE(memcmp(buffer[0], buffer[1], buffer_size) == 0); in ATF_TC_BODY()
1409 close(s[1]); in ATF_TC_BODY()
1428 ATF_REQUIRE(socketpair(PF_UNIX, SOCK_STREAM, 0, s) != -1); in ATF_TC_BODY()
1435 ATF_REQUIRE(send(s[1], buffer, bsz, 0) == (ssize_t)bsz); in ATF_TC_BODY()
1438 ATF_REQUIRE(shutdown(s[0], SHUT_RD) != -1); in ATF_TC_BODY()
1455 /* No more writing to s[1]. */ in ATF_TC_BODY()
1456 ATF_REQUIRE(shutdown(s[1], SHUT_WR) != -1); in ATF_TC_BODY()
1464 iocb.aio_fildes = s[1]; in ATF_TC_BODY()
1474 ATF_REQUIRE(close(s[0]) != -1); in ATF_TC_BODY()
1475 ATF_REQUIRE(close(s[1]) != -1); in ATF_TC_BODY()
1492 ATF_REQUIRE_MSG(fd != -1, "open failed: %s", strerror(errno)); in ATF_TC_BODY()
1498 ATF_CHECK_EQ(-1, aio_fsync(666, &iocb)); in ATF_TC_BODY()
1504 ATF_CHECK_EQ(-1, aio_fsync(O_SYNC, &iocb)); in ATF_TC_BODY()
1511 ATF_CHECK_EQ(-1, aio_fsync(666, &iocb)); in ATF_TC_BODY()
1536 ATF_REQUIRE_MSG(fd != -1, "open failed: %s", strerror(errno)); in aio_fsync_test()
1617 struct iovec iov[1]; in ATF_TC_BODY()
1625 ATF_REQUIRE_MSG(fd != -1, "open failed: %s", strerror(errno)); in ATF_TC_BODY()
1628 iov[0].iov_len = 1 << 30; in ATF_TC_BODY()
1633 aio.aio_iovcnt = 1; in ATF_TC_BODY()
1637 ATF_REQUIRE_EQ(0, aio_suspend(iocbs, 1, NULL)); in ATF_TC_BODY()
1639 ATF_CHECK_EQ_MSG(-1, r, "aio_return returned %zd", r); in ATF_TC_BODY()
1655 struct iovec iov[1]; in ATF_TC_BODY()
1663 ATF_REQUIRE_MSG(fd != -1, "open failed: %s", strerror(errno)); in ATF_TC_BODY()
1672 aio.aio_iovcnt = 1 << 30; in ATF_TC_BODY()
1674 ATF_REQUIRE_EQ(-1, aio_writev(&aio)); in ATF_TC_BODY()
1707 iov[1].iov_base = (void*)-1; /* Invalid! */ in ATF_TC_BODY()
1708 iov[1].iov_len = buflen; in ATF_TC_BODY()
1715 ATF_REQUIRE_EQ(-1, aio_writev(&aio)); in ATF_TC_BODY()
1735 ATF_REQUIRE_MSG(fd != -1, "open failed: %s", strerror(errno)); in ATF_TC_BODY()
1758 ATF_REQUIRE_MSG(fd != -1, "open failed: %s", strerror(errno)); in ATF_TC_BODY()
1781 struct kevent events[1]; in ATF_TC_BODY()
1790 ATF_REQUIRE_MSG(fd != -1, "open failed: %s", strerror(errno)); in ATF_TC_BODY()
1801 nevents = kevent(kq, NULL, 0, events, 1, NULL); in ATF_TC_BODY()
1802 ATF_CHECK_EQ(1, nevents); in ATF_TC_BODY()
1816 nevents = kevent(kq, NULL, 0, events, 1, &timeout); in ATF_TC_BODY()
1850 if (sysctlbyname(oid, &max_buf_aio, &sysctl_len, NULL, 0) == -1) in ATF_TC_BODY()
1854 buflen = 512 * (max_buf_aio + 1); in ATF_TC_BODY()
1857 iov = calloc(max_buf_aio + 1, sizeof(struct iovec)); in ATF_TC_BODY()
1864 for (i = 0; i < max_buf_aio + 1; i++) { in ATF_TC_BODY()
1869 aio.aio_iovcnt = max_buf_aio + 1; in ATF_TC_BODY()
1885 aio.aio_iovcnt = max_buf_aio + 1; in ATF_TC_BODY()
1952 struct aio_context ac; in ATF_TC_BODY() local
1969 aio_context_init(&ac, fd, fd, FILE_LEN); in ATF_TC_BODY()
1977 iov[0].iov_base = ac.ac_buffer; in ATF_TC_BODY()
1979 iov[1].iov_base = (void*)((uintptr_t)iov[0].iov_base + iov[0].iov_len); in ATF_TC_BODY()
1980 iov[1].iov_len = 256; in ATF_TC_BODY()
1981 iov[2].iov_base = (void*)((uintptr_t)iov[1].iov_base + iov[1].iov_len); in ATF_TC_BODY()
1982 iov[2].iov_len = 4096 - iov[1].iov_len; in ATF_TC_BODY()
1983 total_len = iov[0].iov_len + iov[1].iov_len + iov[2].iov_len; in ATF_TC_BODY()
1985 aio.aio_fildes = ac.ac_write_fd; in ATF_TC_BODY()
2001 aio.aio_fildes = ac.ac_read_fd; in ATF_TC_BODY()
2010 ATF_REQUIRE_MSG(aio_test_buffer(ac.ac_buffer, total_len, in ATF_TC_BODY()
2011 ac.ac_seed) != 0, "aio_test_buffer: internal error"); in ATF_TC_BODY()
2024 struct aio_context ac; in aio_zvol_test() local
2028 aio_context_init(&ac, fd, fd, MD_LEN); in aio_zvol_test()
2030 aio_writev_test(&ac, comp, sev); in aio_zvol_test()
2031 aio_readv_test(&ac, comp, sev); in aio_zvol_test()
2033 aio_write_test(&ac, comp, sev); in aio_zvol_test()
2034 aio_read_test(&ac, comp, sev); in aio_zvol_test()