Re: [RFC v2 0/5] introduce gcma

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Michal,

Thanks for your comment :)

On Tue, 24 Feb 2015, Michal Hocko wrote:

On Tue 24-02-15 04:54:18, SeongJae Park wrote:
[...]
 include/linux/cma.h  |    4 +
 include/linux/gcma.h |   64 +++
 mm/Kconfig           |   24 +
 mm/Makefile          |    1 +
 mm/cma.c             |  113 ++++-
 mm/gcma.c            | 1321 ++++++++++++++++++++++++++++++++++++++++++++++++++
 6 files changed, 1508 insertions(+), 19 deletions(-)
 create mode 100644 include/linux/gcma.h
 create mode 100644 mm/gcma.c

Wow this is huge! And I do not see reason for it to be so big. Why
cannot you simply define (per-cma area) 2-class users policy? Either via
kernel command line or export areas to userspace and allow to set policy
there.

For implementation of the idea, we should develop not only policy selection, but also backend for discardable memory. Most part of this patch were made for the backend.

Current implementation gives selection of policy per cma area to users. Only about 120 lines of code were changed for that though it's most ugly part of this patch. The part remains as ugly in this RFC because this is just prototype. The part will be changed in next version patchset.


For starter something like the following policies should suffice AFAIU
your description.
	- NONE - exclusive pool for CMA allocations only
	- DROPABLE - only allocations which might be dropped without any
	  additional actions - e.g. cleancache and frontswap with
	  write-through policy
	- RECLAIMABLE - only movable allocations which can be migrated
	  or dropped after writeback.

Has such an approach been considered?

Similarly, but not in same way. In summary, GCMA gives DROPABLE and RECLAIMABLE policy selection per cma area and NONE policy to entire cma area declared using GCMA interface.

In detail, user could set policy of cma area as gcma way(DROPABLE) or cma way(RECLAIMABLE). Also, user could set gcma to utilize their cma area with Cleancache and/or Frontswap or not(NONE policy).

Your suggestion looks simple and better to understand. Next version of gcma will let users to be able to select policy as those per cma area.


Thanks,
SeongJae Park

--
Michal Hocko
SUSE Labs


--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]