[Bug 95331] fcntl.2 + sigaction.2 + signal.7 need further information about use of a SA_SIGINFO signal handler that uses si->si_fd

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



https://bugzilla.kernel.org/show_bug.cgi?id=95331

--- Comment #1 from Jason Vas Dias <jason.vas.dias@xxxxxxxxx> ---
To test (under kernel 3.13, Linux x86_64 8-core)

   $ gcc -g -pthread -o t_sigio_rdwr  t_sigio_rdwr.c
   $ mkfifo -m 0600 /tmp/f.in /tmp/f.out
   $ strace -f bash -c './t_sigio_rdwr </tmp/f.in >/tmp/f.out' &
   ...
   $ echo 'hello' >/tmp/f.in && read res </tmp/f.out && echo "RES: $res"
   RES: hello
   ...
   $ echo 'hel2o' >/tmp/f.in 
   ...
   $ read res </tmp/f.out && echo "RES: $res"
   ^C
   ^- now you have to press <CTRL+C>, at which time the t_sigio_rdwr
      process does get a SIGIO with si->si_fd == 1, but it is now too late -
      the reader has disconnected.

Can anyone answer the question:
  For output (O_WRONLY|O_ASYNC) file descriptors, WHEN is the F_SETOWN signal 
  or SIGIO meant to be sent ? Is it upon connection of a new reader FD to the
  read end of the the pipe, or when a reader FD is closed, or both ? 
  IMHO, it must be possible to trigger the first case (sent on connection of
new 
  reader) but I can't see how to do it - the process only gets a SIGIO when a
  reader disconnects.

-- 
You are receiving this mail because:
You are watching the assignee of the bug.
--
To unsubscribe from this list: send the line "unsubscribe linux-man" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Kernel Documentation]     [Netdev]     [Linux Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux