This is the mail archive of the libc-hacker@sources.redhat.com mailing list for the glibc project.

Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] Fix tst-timer (was Re: Some make check results)


On Sun, Sep 29, 2002 at 11:21:09AM -0700, Ulrich Drepper wrote:
> I have put in your patch but I've also moved bug-erange from tests to
> xtests.  This goal was creates for just this purpose, tests which cannot
> generally be run but are still useful.

Thanks.

> > string/stratcliff failed on alpha/alphaev6/ia64
> 
> I've asked rth to review the strncpy patch...

That's alpha.
On IA-64 the following segfaults:
#include <sys/mman.h>
#include <string.h>
#include <stdlib.h>

char buf[128] __attribute__((aligned(128)));

int main (void)
{
  int i;
  char *p = mmap (NULL, 65536, PROT_READ, MAP_PRIVATE | MAP_ANON, -1, 0);
  if (p == NULL) abort ();
  memset (p + 65536 - 26, 'T', 26);
  strncpy (buf, p + 65536 - 26, 25);
}

Will debug it.

> > and tst-timer on ia64/i686 (both builds).
> 
> Don't know what that is.  Works for me.

tst-timer fails on sparc build too actually (well, there
it run for 3 hours until I killed that test, with exception of bug-regex12
all other tests succeeded).
On i686 and ia64 the reason is random value in sigev_notify_attributes.
It may well be 0 for you and you don't see the crash, for me it died on:
        newtimer->attr = *(pthread_attr_t *) evp->sigev_notify_attributes;
because evp->sigev_notify_attributes was garbage.
Will need to check sparc if that is the same reason or something else.

2002-09-29  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/pthread/tst-timer.c (main): Clear
	sigev2.sigev_notify_attributes.

--- linuxthreads/sysdeps/pthread/tst-timer.c.jj	2002-09-28 16:37:10.000000000 -0400
+++ linuxthreads/sysdeps/pthread/tst-timer.c	2002-09-29 18:30:42.000000000 -0400
@@ -76,6 +76,7 @@ main (void)
 
   sigev2.sigev_notify = SIGEV_THREAD;
   sigev2.sigev_notify_function = notify_func;
+  sigev2.sigev_notify_attributes = NULL;
 
   setvbuf (stdout, 0, _IOLBF, 0);
 

	Jakub


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]