All of lore.kernel.org
 help / color / mirror / Atom feed
From: george@moberg.com
To: linux-kernel@vger.kernel.org
Subject: Can EINTR be handled the way BSD handles it? -- a plea from a user-land  programmer...
Date: Fri, 03 Nov 2000 14:29:14 -0500	[thread overview]
Message-ID: <3A03120A.DFC62AD5@moberg.com> (raw)

Considering that the threading library for Linux uses signals to make it
work, would it be possible to change the Linux kernel to operate the way
BSD does--instead of returning EINTR, just restart the interrupted
primitive?

For example, if I'm using read(2) to read data from a file descriptor,
and a signal happens, the signal handler runs, and read(2) returns EINTR
after the system call finishes.  Then I'm supposed to catch this and
re-try the system call.

I assume that this is true for _any_ system call which makes the process
block, right?

Can we _PLEASE_PLEASE_PLEASE_ not do this anymore and have the kernel do
what BSD does:  re-start the interrupted call?

Please?  If this is something that would be acceptable for integration
into a mainline kernel, I would do my best to help with a patch.

If I'm wrong about this, please enlighten me.  Also, please cc: me off
the list, as I don't get the list directly.

Thank you for your consideration.
--
George T. Talbot
<george at moberg dot com>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/

             reply	other threads:[~2000-11-03 19:29 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-11-03 19:29 george [this message]
2000-11-03 19:41 ` Can EINTR be handled the way BSD handles it? -- a plea from a user-land programmer Ulrich Drepper
2000-11-03 19:49   ` george
2000-11-03 21:34     ` dean gaudet
2000-11-03 19:51   ` kuznet
2000-11-03 21:24     ` H. Peter Anvin
2000-11-03 20:20 ` Richard B. Johnson
  -- strict thread matches above, loose matches on Subject: below --
2000-11-04  3:06 David Feuer
     [not found] <20001105042410.C3961@fuji.laendle>
2000-11-06 14:13 ` George Talbot
2000-11-06 16:55   ` Theodore Y. Ts'o
2000-11-06 18:50     ` Ulrich Drepper
2000-11-06 19:11       ` Ulrich Drepper
2000-11-06 19:37         ` kuznet
2000-11-07 15:53       ` Theodore Y. Ts'o
2000-11-07  4:46   ` dean gaudet

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=3A03120A.DFC62AD5@moberg.com \
    --to=george@moberg.com \
    --cc=linux-kernel@vger.kernel.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.