[patch 0/3] add rt_tgsigqueueinfo syscall [RESEND]

From: Thomas Gleixner
Date: Thu Feb 26 2009 - 08:36:48 EST


sys_kill has a counterpart sys_tgkill which allows to send signals to
a particular thread. sys_rt_sigqueueinfo is lacking such a counterpart.

Aside of the asymetry it is a show stopper for migrating applications
from other unix-alike RTOSes.

The following patch series implements rt_tgsigqueueinfo and hooks it
up for x86.

Find below the raw documentation.

Thanks,

tglx
----

NAME
rt_tgsigqueueinfo - Send signal information to a signal to a thread

SYNOPSIS
long sys_rt_tgsigqueueinfo (int tgid, int tid, int sig, siginfo_t *uinfo);

DESCRIPTION

rt_tgsigqueueinfo sends signal sig information uinfo to the
thread with the thread ID tid in the thread group tgid. (By
contrast, rt_sigqueueinfo(2) can only be used to send a signal
info to a process (i.e., thread group) as a whole, and the
signal will be delivered to an arbitrary thread within that
process.)

RETURN VALUE

rt_tgsigqueueinfo returns 0 on success; otherwise,
rt_sigqueueinfo returns one of the errors listed in the
"Errors" section.

ERRORS
-EFAULT
An invalid value for uinfo was specified.

-EINVAL
An invalid TID, TGID or signal was specified.

-EPERM
Permission denied. For the required permissions,
see rt_sigqueueinfo(2).

-ESRCH
No process with the specified thread ID and thread group
ID exists.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/