diff options
author | hunt <hunt> | 2007-07-16 17:20:31 +0000 |
---|---|---|
committer | hunt <hunt> | 2007-07-16 17:20:31 +0000 |
commit | ab3a415066fb4f086a99952012547db468113542 (patch) | |
tree | ec228f2037a3ee6d3f698ceea5e1c4a825633663 | |
parent | 7f9250cd27a07cf41fd6a5cd1dbd45527f475b15 (diff) | |
download | systemtap-steved-ab3a415066fb4f086a99952012547db468113542.tar.gz systemtap-steved-ab3a415066fb4f086a99952012547db468113542.tar.xz systemtap-steved-ab3a415066fb4f086a99952012547db468113542.zip |
2007-07-16 Martin Hunt <hunt@redhat.com>
* select.c, poll.c: New.
-rw-r--r-- | testsuite/systemtap.syscall/ChangeLog | 4 | ||||
-rw-r--r-- | testsuite/systemtap.syscall/poll.c | 35 | ||||
-rw-r--r-- | testsuite/systemtap.syscall/select.c | 34 |
3 files changed, 73 insertions, 0 deletions
diff --git a/testsuite/systemtap.syscall/ChangeLog b/testsuite/systemtap.syscall/ChangeLog index e76fb33d..34bdf664 100644 --- a/testsuite/systemtap.syscall/ChangeLog +++ b/testsuite/systemtap.syscall/ChangeLog @@ -1,3 +1,7 @@ +2007-07-16 Martin Hunt <hunt@redhat.com> + + * select.c, poll.c: New. + 2007-07-10 Martin Hunt <hunt@redhat.com> * uid16.c (main): 16-bit syscalls now have diff --git a/testsuite/systemtap.syscall/poll.c b/testsuite/systemtap.syscall/poll.c new file mode 100644 index 00000000..436a56f7 --- /dev/null +++ b/testsuite/systemtap.syscall/poll.c @@ -0,0 +1,35 @@ +/* COVERAGE: epoll_create epoll_ctl epoll_wait poll ppoll */ +#define _GNU_SOURCE +#include <sys/epoll.h> +#include <poll.h> +#include <signal.h> + +int main() +{ + struct epoll_event ev; + struct pollfd pfd = {7, 0x23, 0}; + int fd; + struct timespec tim = {.tv_sec=0, .tv_nsec=200000000}; + sigset_t sigs; + + sigemptyset(&sigs); + sigaddset(&sigs,SIGUSR2); + + fd = epoll_create(32); + // epoll_create (32) + + epoll_ctl(fd, EPOLL_CTL_ADD, 13, &ev); + // epoll_ctl (3, EPOLL_CTL_ADD, 13, XXXX) + + epoll_wait(fd, &ev, 17,0); + // epoll_wait (3, XXXX, 17, 0) + close(fd); + + poll(&pfd, 1, 0); + // poll (XXXX, 1, 0) + + ppoll(&pfd, 1, &tim, &sigs); + // ppoll (XXXX, 1, \[0.200000000\], XXXX, 8) + + return 0; +} diff --git a/testsuite/systemtap.syscall/select.c b/testsuite/systemtap.syscall/select.c new file mode 100644 index 00000000..1e0823a4 --- /dev/null +++ b/testsuite/systemtap.syscall/select.c @@ -0,0 +1,34 @@ +/* COVERAGE: select pselect6 pselect7 */ +#define _GNU_SOURCE +#include <unistd.h> +#include <sys/select.h> +#include <signal.h> + +int main() +{ + int fd; + struct timespec tim = {0, 200000000}; + sigset_t sigs; + fd_set rfds; + struct timeval tv = {0, 117}; + + sigemptyset(&sigs); + sigaddset(&sigs,SIGUSR2); + + select( 1, &rfds, NULL, NULL, &tv); + // select (1, XXXX, 0x[0]+, 0x[0]+, \[0.000117\]) + + tv.tv_sec = 0; + tv.tv_usec = 113; + + select( 1, NULL, NULL, NULL, &tv); + // select (1, 0x[0]+, 0x[0]+, 0x[0]+, \[0.000113\]) + + pselect( 1, &rfds, NULL, NULL, &tim, &sigs); + //pselect[67] (1, XXXX, 0x[0]+, 0x[0]+, \[0.200000000\], XXXX) + + pselect( 0, NULL, NULL, NULL, &tim, &sigs); + // pselect[67] (0, 0x[0]+, 0x[0]+, 0x[0]+, \[0.200000000\], XXXX) = + + return 0; +} |