RE: Why can't we sleep in an ISR?

From: David Schwartz
Date: Tue May 15 2007 - 13:24:44 EST



> No, the term context here has a specific meaning. It refers to those
> things which flow from the current pointer, including the virtual memory
> space, file descriptor table, current uid, and so forth.

And none of these things are used by an ISR.

> Because the
> current pointer is not changed on entry to an ISR, the ISR is executing
> in the context of the interrupted process, and thus uses that process'
> virtual memory, etc.

You mean it would be if it ever looked at the current pointer. It is not the
setting of the current pointer that determines the context but actually
*using* that pointer.

As you said, it is the "things which flow from the current pointer" that
matter, not the value of the pointer itself. An ISR uses none of those
things.

DS


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/