Re: [RFC] mlock/stack guard interaction fixup

From: Peter Zijlstra
Date: Tue Aug 24 2010 - 03:09:34 EST


On Mon, 2010-08-23 at 12:54 -0700, Jeremy Fitzhardinge wrote:
> On 08/23/2010 12:26 PM, Peter Zijlstra wrote:
> > On Mon, 2010-08-23 at 12:23 -0700, Jeremy Fitzhardinge wrote:
> >> On 08/23/2010 12:07 PM, Peter Zijlstra wrote:
> >>> mlock() simply avoids major faults, nothing more.
> >>>
> >>> I think both page migration and page-out for shared pages where some
> >>> maps are !mlocked can cause unmaps and thus minor faults.
> >>>
> >>> mlock and dirty do not interact, they will still be cleaned/written out
> >>> as normal.
> >> So mlock is useless for preventing secret stuff from being written to disk.
> > Well, if you put your sekrit in a file map, sure.
> >
> > Use a mmap(MAP_ANONYMOUS|MAP_LOCK) and madvise(MADV_DONTFORK) for your
> > sekrits.
>
> Won't dirty anonymous pages also get written to swap?

Not if all the maps are mlocked (private like above would only have a
single map), there'd be no point would there.
--
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/