Skip to content

Commit

Permalink
* sysdeps/mach/i386/syscall.S (syscall): Call END.
Browse files Browse the repository at this point in the history
  • Loading branch information
Roland McGrath committed May 29, 2005
1 parent 52ee639 commit 8074c5c
Show file tree
Hide file tree
Showing 3 changed files with 35 additions and 4 deletions.
4 changes: 4 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
2005-05-24 Thomas Schwinge <schwinge@nic-nac-project.de>

* sysdeps/mach/i386/syscall.S (syscall): Call END.

2005-05-28 Richard Henderson <rth@redhat.com>

* elf/elf.h (DT_ALPHA_PLTRO, DT_ALPHA_NUM): New.
Expand Down
7 changes: 7 additions & 0 deletions nptl/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
2005-05-29 Richard Henderson <rth@redhat.com>

* tst-cancel4.c (WRITE_BUFFER_SIZE): New.
(tf_write, tf_writev): Use it.
(do_test): Use socketpair instead of pipe. Set SO_SNDBUF to
the system minimum.

2005-05-23 Jakub Jelinek <jakub@redhat.com>

* sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep-cancel.h
Expand Down
28 changes: 24 additions & 4 deletions nptl/tst-cancel4.c
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,8 @@ static pthread_barrier_t b2;
# define IPC_ADDVAL 0
#endif

#define WRITE_BUFFER_SIZE 4096

/* Cleanup handling test. */
static int cl_called;

Expand Down Expand Up @@ -220,7 +222,7 @@ tf_write (void *arg)
ssize_t s;
pthread_cleanup_push (cl, NULL);

char buf[100000];
char buf[WRITE_BUFFER_SIZE];
memset (buf, '\0', sizeof (buf));
s = write (fd, buf, sizeof (buf));

Expand Down Expand Up @@ -266,7 +268,7 @@ tf_writev (void *arg)
ssize_t s;
pthread_cleanup_push (cl, NULL);

char buf[100000];
char buf[WRITE_BUFFER_SIZE];
memset (buf, '\0', sizeof (buf));
struct iovec iov[1] = { [0] = { .iov_base = buf, .iov_len = sizeof (buf) } };
s = writev (fd, iov, 1);
Expand Down Expand Up @@ -2043,11 +2045,29 @@ static struct
static int
do_test (void)
{
if (pipe (fds) != 0)
int val;
socklen_t len;

if (socketpair (AF_UNIX, SOCK_STREAM, PF_UNIX, fds) != 0)
{
perror ("socketpair");
exit (1);
}

val = 1;
len = sizeof(val);
setsockopt (fds[1], SOL_SOCKET, SO_SNDBUF, &val, sizeof(val));
if (getsockopt (fds[1], SOL_SOCKET, SO_SNDBUF, &val, &len) < 0)
{
perror ("getsockopt");
exit (1);
}
if (val >= WRITE_BUFFER_SIZE)
{
puts ("pipe failed");
puts ("minimum write buffer size too large");
exit (1);
}
setsockopt (fds[1], SOL_SOCKET, SO_SNDBUF, &val, sizeof(val));

int result = 0;
size_t cnt;
Expand Down

0 comments on commit 8074c5c

Please sign in to comment.