On Tue, Oct 23, 2012 at 02:24:58PM +0000, KY Srinivasan wrote: > > > > -----Original Message----- > > From: Dan Carpenter [mailto:dan.carpen...@oracle.com] > > Sent: Tuesday, October 23, 2012 1:47 AM > > To: KY Srinivasan > > Cc: gre...@linuxfoundation.org; linux-kernel@vger.kernel.org; > > de...@linuxdriverproject.org; o...@aepfle.de; a...@canonical.com; > > jasow...@redhat.com > > Subject: Re: 3.7 RC1 > > > > On Mon, Oct 22, 2012 at 04:37:45PM -0700, K. Y. Srinivasan wrote: > > > > > > While testing 3.7 RC1 I discovered that invoking the function > > orderly_poweroff() > > > from an interrupt context will trigger an ASSERT(). This was not the case > > > till > > > recently. The comment preceding the orderly_poweroff() function claims > > > that > > this > > > function can be invoked from any context and in the current Hyper-V util > > > driver, > > > we support host-driven orderly shut down of the guest by invoking this > > > orderly_poweroff() function in the context of the message callback. This > > > code > > has > > > been working for a very long time and it is broken now. Is my assumption > > > that > > > orderly_poweroff() could be invoked from the interrupt context a wrong > > assumption? > > > > You can't call orderly_poweroff() from interrupt context. > > Thanks Dan; I am curious to understand the basis for your assertion. > As I noted earlier the documentation for this function clearly says it can > be called from any context. Furthermore, __orderly_poweroff(), the helper > function allocates memory with the GFP_ATOMIC flag set. Lastly, the behavior > of orderly_poweroff() has been such that this function could be called from > interrupt context > for a very long time and something has changed now. For what it is worth, > there are other users in > the kernel (in 3.7 RC1) that are invoking the orderly_poweroff() function > from interrupt > context other than the Hyper-V shutdown handler: fsl_hv_shutdown_isr() in > drivers/virt/fsl_hypervisor.c. > I suspect there are other users as well that have made this similar > assumption. >
Aw crap. I was wrong. Sorry about that. regards, dan carpenter -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/