On Fri 2014-06-13 10:32:56, Kees Cook wrote: > On Fri, Jun 13, 2014 at 3:51 AM, Pavel Machek <pavel@xxxxxx> wrote: > > Hi! > > > > > >> >>> Any way we can make them work together instead? > >> >> > >> >> I'm sure there is, but I don't know the solution. :) > >> >> > >> >> At the very least this gets us one step closer (we can build them together). > >> >> > >> > > >> > But it is really invasive. > >> > >> Well, I don't agree there. I actually would like to be able to turn > >> off hibernation support on distro kernels regardless of kASLR, so I > >> think this is really killing two birds with one stone. > >> > >> > I have to admit to being somewhat fuzzy on what the core problem with > >> > hibernation and kASLR is... in both cases there is a set of pages that > >> > need to be installed, some of which will overlap the loader kernel. > >> > What am I missing? > >> > >> I don't know how resume works, but I have assumed that the newly > >> loaded kernel stays in memory and pulls in the vmalloc, kmalloc, > >> modules, and userspace memory maps from disk. Since these things can > >> easily contain references to kernel text, if the newly loaded kernel > >> has moved with regard to the hibernated image, everything breaks. > >> IIUC, this is similar why you can't rebuild your kernel and resume > >> from a different version. > > > > x86-64 can resume from different kernel that did the suspend. kASLR > > should not be too different from that. (You just include kernel text > > in the hibernation image. It is small enough to do that.) > > Oooh, that's very exciting! How does that work (what happens to the > kernel that booted first, etc)? I assume physical memory layout can't > change between hibernation and resume? Or, where should I be reading > code that does this? I'm not sure what you mean by "physical memory layout can't change". You may not remove RAM between suspend/resume, no. It is Rafael's design, actually, you can see it in arch/x86/power/hibernate_asm_64.S . 32bit version does have that ability, IIRC. Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html -- To unsubscribe from this list: send the line "unsubscribe linux-doc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html