Project

General

Profile

Actions

Bug #1313

open

Signal code in kernel needs major overhaul (signal queues, si_code, si_addr)

Added by hasso over 15 years ago. Updated over 3 years ago.

Status:
New
Priority:
Low
Assignee:
-
Category:
Kernel
Target version:
Start date:
Due date:
% Done:

0%

Estimated time:

Description

Although our siginfo structure has a si_code member, we don't use it and
don't even have a defines related to it.

http://www.opengroup.org/onlinepubs/009695399/basedefs/signal.h.html

Actions #1

Updated by alexh over 15 years ago

I'm currently working on this, especially for the most important cases (
platform/${arch}/${arch}/trap.c ).

Actions #2

Updated by alexh over 15 years ago

corecode commented on this on IRC, and it seems the changes should not focus
just on adding support for si_code but rather a major overhaul.
New signal code using signal queues should be added instead of just hacking the
current code to support si_code and si_addr.

Possibly FreeBSD can be used as a reference as they use signal queues and
si_code/si_addr. Their basic structure is ksiginfo_t in sys/signalvar.h.

Actions #3

Updated by alexh almost 15 years ago

About this: I really think we should implement si_code and si_addr asap,
without any major overhaul or anything. Not having for example CLD_EXITED
breaks pkgsrc build of boost-libs, which in turn breaks 40-something more
packages. Both FreeBSD and NetBSD support this properly.

Any comments?

Cheers,
Alex Hornung

Actions #4

Updated by corecode almost 15 years ago

Alex Hornung (via DragonFly issue tracker) wrote:

Alex Hornung <> added the comment:

About this: I really think we should implement si_code and si_addr asap,
without any major overhaul or anything. Not having for example CLD_EXITED
breaks pkgsrc build of boost-libs, which in turn breaks 40-something more
packages. Both FreeBSD and NetBSD support this properly.

Any comments?

Agreed.

Actions #5

Updated by alexh almost 15 years ago

The most basic part made it into master already. This includes si_code for
most of the traps, and the proper defines for all of the si_code. This
unbreaks build of boost-libs, too, but still doesn't properly assign all the
SIGCHLD codes.

Cheers,
Alex Hornung

Actions #6

Updated by tuxillo almost 10 years ago

  • Description updated (diff)
  • Category set to Kernel
  • Assignee deleted (0)
  • Target version set to 4.2

Hi,

Is this in the same status as per the last update?

Cheers,
Antonio Huete

Actions #7

Updated by tuxillo over 3 years ago

  • Target version changed from 4.2 to 6.0
Actions

Also available in: Atom PDF