problem in aio_notify.c in glibc 2.1.92?

Geoff Keating geoffk@cygnus.com
Tue Aug 15 02:08:00 GMT 2000


> Date: Mon, 14 Aug 2000 23:39:05 -0700 (PDT)
> From: Kaz Kylheku <kaz@ashi.footprints.net>

> Note that the target callback receives a parameter of type sigval_t,
> which is a union, and returns void.  Whereas a proper thread
> function used by pthread create has type void *(void *).

> The motivation for the trick is understandable, since it eliminates
> the need for a bounce function to be passed to pthread create which
> would process the argument.  Maybe the type system abuse is not
> working on the PPC target of the compiler version you are using?

Indeed this is the problem.  The SVR4 ABI specifies that structure and
union arguments are passed by passing a pointer to a copy of the
structure.  So this trick will not work on powerpc.

-- 
- Geoffrey Keating <geoffk@cygnus.com>


More information about the Libc-alpha mailing list