2.6.32-stable review patch. If anyone has any objections, please let us know.

------------------

From: Nathan Lynch <ntl@pobox.com>

commit a2a20c412c86e0bb46a9ab0dd31bcfe6d201b913 upstream.

If signalfd is used to consume a signal generated by a POSIX intervaltimer or POSIX message queue, the ssi_int field does not reflect the data(sigevent->sigev_value) supplied to timer_create(2) or mq_notify(3). (Thessi_ptr field, however, is filled in.)

This behavior differs from signalfd's treatment of sigqueue-generatedsignals -- see the default case in signalfd_copyinfo. It also givesresults that differ from the case when a signal is handled conventionallyvia a sigaction-registered handler.

So, set signalfd_siginfo->ssi_int in the remaining cases (__SI_TIMER,__SI_MESGQ) where ssi_ptr is set.

akpm: a non-back-compatible change. Merge into -stable to minimise thenumber of kernels which are in the field and which miss this feature.