public inbox for linux-newbie@vger.kernel.org
 help / color / mirror / Atom feed
From: Rik van Riel <riel@redhat.com>
To: linux@horizon.com
Cc: learninglinux4@gmail.com, linux-kernel@vger.kernel.org,
	linux-newbie@vger.kernel.org
Subject: Re: Why can't we sleep in an ISR?
Date: Mon, 14 May 2007 11:55:10 -0400	[thread overview]
Message-ID: <4648865E.5030706@redhat.com> (raw)
In-Reply-To: <20070514152218.19773.qmail@science.horizon.com>

linux@horizon.com wrote:
> Sleeping in an ISR is not fundamentally impossible - I could design
> a multitasker that permitted it - but has significant problems, and
> most multitaskers, including Linux, forbid it.

You could design a system in which most ISRs can sleep,
but even then you'll probably need to make exceptions.

For example, the timer interrupt tends to drive the
scheduler.  This means the timer interrupt cannot go
to sleep and expect the scheduler to wake it up at
some point in the future - since there will be no new
timer interrupts to drive the scheduler.

This precludes the timer interrupt from taking certain
sleeping locks, even on a system where interrupts can
sleep (not Linux).

Interrupts will always have some limitations, under
any OS design.

-- 
All Rights Reversed
-
To unsubscribe from this list: send the line "unsubscribe linux-newbie" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.linux-learn.org/faqs

  reply	other threads:[~2007-05-14 15:55 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-05-14 15:22 Why can't we sleep in an ISR? linux
2007-05-14 15:55 ` Rik van Riel [this message]
  -- strict thread matches above, loose matches on Subject: below --
2007-05-15  9:34 rohit  hooda
2007-05-15  9:46 ` pradeep singh
2007-05-14  6:37 Learning Linux
2007-05-14  7:10 ` pradeep singh
2007-05-14  7:16   ` Learning Linux
2007-05-14 15:24     ` Bahadir Balban
2007-05-14 15:56       ` Dong Feng
2007-05-15  5:17       ` pradeep singh
2007-05-15  6:45         ` Dong Feng
2007-05-15  7:10           ` pradeep singh
2007-05-15  7:28             ` Dong Feng
2007-05-15  8:12               ` pradeep singh
2007-05-15  8:40               ` Learning Linux
2007-05-15  8:58                 ` Dong Feng
2007-05-15 16:57           ` Phillip Susi
2007-05-15 22:49             ` Dong Feng
2007-05-16 15:20               ` Phillip Susi
2007-05-16 23:17                 ` Dong Feng
2007-05-17 16:07                   ` Phillip Susi
2007-05-17 23:50                     ` Dong Feng
2007-05-14 12:25 ` Helge Hafting
2007-05-14 12:52   ` pradeep singh
2007-05-14 13:36     ` Dong Feng

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=4648865E.5030706@redhat.com \
    --to=riel@redhat.com \
    --cc=learninglinux4@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-newbie@vger.kernel.org \
    --cc=linux@horizon.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox