Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 27 Jun 1996 22:40:19 +1000
From:      Bruce Evans <bde@zeta.org.au>
To:        hackers@freebsd.com, jau@jau.csc.fi
Subject:   Re: POSIX.4 signals + other POSIX.4 stuff to FreeBSD...
Message-ID:  <199606271240.WAA10241@godzilla.zeta.org.au>

next in thread | raw e-mail | index | archive | help
>	the kernel though. The kernel seems still to be infested with
>	fragments of code that assume sigset_t is a simple integer
>	type ANDing and ORing bits in the sigset_t variables instead
>	of using the POSIX.1 macros to manipulate the signal sets.

The kernel is allowed to do this as an optimization since it knows
that sigset_t is an unsigned int in the "machine-independent" file
<sys/signal.h>.  The POSIX macros require the sigset_t to be indirect
so they are likely to be unnecessarily inefficient.

>	containing such an array. I have now more or less figured out
>	all these code fragments within the kernel itself, but it seems
>	that also the Linux application binary interface etc. LKMs have

More importantly, the size of a sigset_t is appart of the BSD binary
interface.  The kernel would have to support variably-sized sigset_t's
to support old binaries :-(.  There is no such thing as a variably-sized
struct, and the current sigset_t doesn't encode its size, this isn't
easy.

Bruce



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199606271240.WAA10241>