Michael Kerrisk wrote:
c) The Linux baehviour has been arbitrary across kernel versions and
system calls. In particular, the following system calls showed this
behaviour in earlier kernel versions, but then the behaviour was
changed without forewarning and (AFAIK) without subsequent complaint:
[snip]
* msgsnd() and msgrcv() in kernels before 2.6.9.
That was my change - and I even forgot to mention it in the changelog
(hiding in shame):
I replaced -EINTR with -ERESTARTNOHAND.
That hides signals that are handled in the kernel from user space -
probably what we want.
Michael: Could you replace the EINTR in inotify.c with ERESTARTNOHAND?
That should prevent the kernel from showing the signal to user space.
I'd guess that most instances of EINTR are wrong, except in device
drivers: It means we return from the syscall, even if the signal handler
wants to restart the system call.
--
Manfred
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]