Re: Using remap_pfn_range() to increase total_vm beyond RLIMIT_AS

From: Jeremy Fitzhardinge
Date: Sun Oct 18 2009 - 22:40:56 EST


On 10/16/09 06:17, Earl Chew wrote:
> remap_pfn_range() is defined in mm/memory.c and as far as I
> can tell, does _not_ cause total_vm or reserved_vm to be updated.
>
> Is this right?
>
>
> RLIMIT_AS is only checked against total_vm in mm/mmap.c in the function
> may_expand_vm().
>
> I think this means that a device driver can map pages into
> a process and thus effectively increase address space of
> a process above and beyond the limit set by RLIMIT_AS.

I suspect this is justified because remap_pfn_range is generally
(always?) used to map device memory, and other memory which isn't
represented by struct pages, so it doesn't really count as real memory
usage.

J
--
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/