Re: start_kernel(): bug: interrupts were enabled early

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: H. Peter Anvin
Date: Thursday, April 1, 2010 - 9:15 am

On 03/31/2010 11:48 PM, Benjamin Herrenschmidt wrote:

I would like to point out that initialization is a particular subcase of
a more general rule:

- It is safe to call a semaphore/rwlock down with IRQ disabled *if and
only if* the caller can guarantee non-contention.

Initialization is an obvious subcase, but there might be others.

	-hpa

-- 
H. Peter Anvin, Intel Open Source Technology Center
I work for Intel.  I don't speak on their behalf.

--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
start_kernel(): bug: interrupts were enabled early, Rabin Vincent, (Thu Mar 25, 12:41 pm)
Re: start_kernel(): bug: interrupts were enabled early, Andrew Morton, (Wed Mar 31, 1:40 pm)
Re: start_kernel(): bug: interrupts were enabled early, Andrew Morton, (Wed Mar 31, 1:52 pm)
Re: start_kernel(): bug: interrupts were enabled early, Matthew Wilcox, (Wed Mar 31, 2:01 pm)
Re: start_kernel(): bug: interrupts were enabled early, H. Peter Anvin, (Wed Mar 31, 2:05 pm)
Re: start_kernel(): bug: interrupts were enabled early, Russell King, (Wed Mar 31, 2:05 pm)
Re: start_kernel(): bug: interrupts were enabled early, H. Peter Anvin, (Wed Mar 31, 2:08 pm)
Re: start_kernel(): bug: interrupts were enabled early, H. Peter Anvin, (Wed Mar 31, 2:12 pm)
Re: start_kernel(): bug: interrupts were enabled early, Matthew Wilcox, (Wed Mar 31, 2:17 pm)
Re: start_kernel(): bug: interrupts were enabled early, Andrew Morton, (Wed Mar 31, 2:28 pm)
Re: start_kernel(): bug: interrupts were enabled early, Christoph Lameter, (Wed Mar 31, 2:42 pm)
Re: start_kernel(): bug: interrupts were enabled early, Russell King, (Wed Mar 31, 2:54 pm)
Re: start_kernel(): bug: interrupts were enabled early, H. Peter Anvin, (Wed Mar 31, 2:57 pm)
Re: start_kernel(): bug: interrupts were enabled early, Andrew Morton, (Wed Mar 31, 3:26 pm)
Re: start_kernel(): bug: interrupts were enabled early, Russell King, (Wed Mar 31, 3:30 pm)
Re: start_kernel(): bug: interrupts were enabled early, Benjamin Herrenschmidt, (Wed Mar 31, 3:31 pm)
Re: start_kernel(): bug: interrupts were enabled early, Benjamin Herrenschmidt, (Wed Mar 31, 3:35 pm)
Re: start_kernel(): bug: interrupts were enabled early, H. Peter Anvin, (Wed Mar 31, 3:36 pm)
Re: start_kernel(): bug: interrupts were enabled early, Benjamin Herrenschmidt, (Wed Mar 31, 3:36 pm)
Re: start_kernel(): bug: interrupts were enabled early, Benjamin Herrenschmidt, (Wed Mar 31, 3:37 pm)
Re: start_kernel(): bug: interrupts were enabled early, Andrew Morton, (Wed Mar 31, 3:49 pm)
Re: start_kernel(): bug: interrupts were enabled early, David Howells, (Wed Mar 31, 3:58 pm)
Re: start_kernel(): bug: interrupts were enabled early, Benjamin Herrenschmidt, (Wed Mar 31, 6:17 pm)
Re: start_kernel(): bug: interrupts were enabled early, Andrew Morton, (Wed Mar 31, 8:33 pm)
Re: start_kernel(): bug: interrupts were enabled early, H. Peter Anvin, (Wed Mar 31, 11:26 pm)
Re: start_kernel(): bug: interrupts were enabled early, Benjamin Herrenschmidt, (Wed Mar 31, 11:48 pm)
Re: start_kernel(): bug: interrupts were enabled early, Benjamin Herrenschmidt, (Wed Mar 31, 11:50 pm)
Re: start_kernel(): bug: interrupts were enabled early, Jamie Lokier, (Thu Apr 1, 2:41 am)
Re: start_kernel(): bug: interrupts were enabled early, David Howells, (Thu Apr 1, 3:50 am)
Re: start_kernel(): bug: interrupts were enabled early, David Howells, (Thu Apr 1, 4:06 am)
Re: start_kernel(): bug: interrupts were enabled early, Matthew Wilcox, (Thu Apr 1, 4:23 am)
Re: start_kernel(): bug: interrupts were enabled early, Andrew Morton, (Thu Apr 1, 7:27 am)
Re: start_kernel(): bug: interrupts were enabled early, Christoph Lameter, (Thu Apr 1, 8:55 am)
Re: start_kernel(): bug: interrupts were enabled early, Christoph Lameter, (Thu Apr 1, 8:57 am)
Re: start_kernel(): bug: interrupts were enabled early, Linus Torvalds, (Thu Apr 1, 9:13 am)
Re: start_kernel(): bug: interrupts were enabled early, H. Peter Anvin, (Thu Apr 1, 9:15 am)
Re: start_kernel(): bug: interrupts were enabled early, Linus Torvalds, (Thu Apr 1, 1:12 pm)
Re: start_kernel(): bug: interrupts were enabled early, Benjamin Herrenschmidt, (Thu Apr 1, 4:00 pm)
Re: start_kernel(): bug: interrupts were enabled early, David Howells, (Fri Apr 2, 7:46 am)
Re: start_kernel(): bug: interrupts were enabled early, Linus Torvalds, (Fri Apr 2, 7:54 am)
Re: start_kernel(): bug: interrupts were enabled early, Kevin Hilman, (Wed Apr 7, 12:09 pm)
Re: start_kernel(): bug: interrupts were enabled early, =?utf-8?Q?Am=C3=A9ri ..., (Thu Apr 8, 8:55 am)