All of lore.kernel.org
 help / color / mirror / Atom feed
From: Denis Vlasenko <vda.linux@googlemail.com>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: "Michael K. Edwards" <medwards.linux@gmail.com>,
	Davide Libenzi <davidel@xmailserver.org>,
	"David M. Lloyd" <dmlloyd@flurg.com>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Andrew Morton <akpm@linux-foundation.org>
Subject: Re: [patch 2/5] signalfd v2 - signalfd core ...
Date: Sat, 31 Mar 2007 01:24:22 +0200	[thread overview]
Message-ID: <200703310124.22082.vda.linux@googlemail.com> (raw)
In-Reply-To: <Pine.LNX.4.64.0703080919541.10832@woody.linux-foundation.org>

On Thursday 08 March 2007 18:28, Linus Torvalds wrote:
> The sad part is that there really is no reason why the BSD crowd couldn't 
> have done recvmsg() as an "extended read with per-system call flags", 
> which would have made things like O_NONBLOCK etc unnecessary, because you 
> could do it just with MSG_DONTWAIT..

Wait a second here... O_NONBLOCK is not just unnecessary - it's buggy!

Try to do nonblocking read from stdin (fd #0) -
* setting O_NONBLOCK with fcntl will set it for all other processes
  which has the same stdin!
* trying to reset O_NONBLOCK after the read doesn't help (think kill -9)
* duping fd #0 doesn't help because O_NONBLOCK is not per-fd,
  it's shared just like filepos.

I really like that trick with recvmsg + MSG_DONTWAIT instead.
--
vda

  parent reply	other threads:[~2007-03-30 23:24 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-03-08  1:21 [patch 2/5] signalfd v2 - signalfd core Davide Libenzi
2007-03-08 14:31 ` David M. Lloyd
2007-03-08 15:45   ` Davide Libenzi
2007-03-08 16:22     ` Linus Torvalds
2007-03-08 16:29       ` Davide Libenzi
2007-03-08 16:40         ` Michael K. Edwards
2007-03-08 17:28           ` Linus Torvalds
2007-03-08 20:53             ` Michael K. Edwards
2007-03-30 23:24             ` Denis Vlasenko [this message]
2007-03-08 17:15         ` Linus Torvalds
2007-03-08 19:21           ` Davide Libenzi
2007-03-08 19:27             ` Linus Torvalds
2007-03-08 19:33               ` Davide Libenzi
2007-03-08 20:48               ` Marko Macek
2007-03-08 21:03               ` Marko Macek
2007-03-09 20:22               ` Kent Overstreet
2007-03-08 19:34             ` Avi Kivity
2007-03-08 19:40               ` Davide Libenzi
2007-03-08 23:57       ` Jeremy Fitzhardinge
2007-03-09  0:10         ` Linus Torvalds
2007-03-09 21:33   ` Davide Libenzi
  -- strict thread matches above, loose matches on Subject: below --
2007-03-08 20:43 Oleg Nesterov
2007-03-08 21:12 ` Davide Libenzi
2007-03-08 21:56   ` Oleg Nesterov
2007-03-08 22:11     ` Linus Torvalds
2007-03-08 22:59       ` Davide Libenzi
2007-03-08 23:05     ` Davide Libenzi
2007-03-09  0:14       ` Oleg Nesterov
2007-03-09  1:16         ` Davide Libenzi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200703310124.22082.vda.linux@googlemail.com \
    --to=vda.linux@googlemail.com \
    --cc=akpm@linux-foundation.org \
    --cc=davidel@xmailserver.org \
    --cc=dmlloyd@flurg.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=medwards.linux@gmail.com \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.