On 07/17/2014 11:48 AM, H. Peter Anvin wrote: > On 07/17/2014 08:13 AM, Sasha Levin wrote: >> > When going through our initialization code (init_espfix_ap() ) we need to >> > keep in mind IRQs are off, and we need to handle it appropriately: >> > >> > - Do not allocate with __GFP_FS. >> > - No point in using a mutex. >> > >> > Signed-off-by: Sasha Levin <[email protected]> > I don't think this is safe. The whole point was that if we do > GFP_ATOMIC we have to accept failure, and if we have a spin lock then > sleeping is not permitted. It is unclear to me is sleeping is safe in > this context even so, so we may still have a problem, but calling > __get_free_page(GFP_ATOMIC) and then unconditionally use the results is > not right.
This is the result of getting an error message for allocating with GFP_KERNEL saying that we can't do that with IRQs off. My assumption after that was that we're not going to be sleeping at all, which is why spinlock/GFP_ATOMIC would be correct here. Thanks, Sasha -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

