linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCHv24 00/16] Contiguous Memory Allocator
@ 2012-04-03 14:10 Marek Szyprowski
  2012-04-03 14:10 ` [PATCHv24 01/16] mm: page_alloc: remove trailing whitespace Marek Szyprowski
                   ` (20 more replies)
  0 siblings, 21 replies; 28+ messages in thread
From: Marek Szyprowski @ 2012-04-03 14:10 UTC (permalink / raw)
  To: linux-kernel, linux-arm-kernel, linux-media, linux-mm, linaro-mm-sig
  Cc: Michal Nazarewicz, Marek Szyprowski, Kyungmin Park, Russell King,
	Andrew Morton, KAMEZAWA Hiroyuki, Daniel Walker, Mel Gorman,
	Arnd Bergmann, Jesse Barker, Jonathan Corbet, Chunsang Jeong,
	Dave Hansen, Benjamin Gaignard, Rob Clark, Ohad Ben-Cohen,
	Sandeep Patil

Hi,

This is (yet another) update of CMA patches. I've rebased them onto
recent v3.4-rc1 kernel tree and integrated some minor bugfixes. The
first issue has been pointed by Sandeep Patil - alloc_contig_range
reclaimed two times too many pages, second issue (possible mismatch
between pageblock size and MAX_ORDER pages) has been recently spotted
by Michal Nazarewicz.

These patches are also available on my git repository:
git://git.linaro.org/people/mszyprowski/linux-dma-mapping.git 3.4-rc1-cma-v24

Best regards
Marek Szyprowski
Samsung Poland R&D Center

Links to previous versions of the patchset:
v23: <http://www.spinics.net/lists/linux-media/msg44547.html>
v22: <http://www.spinics.net/lists/linux-media/msg44370.html>
v21: <http://www.spinics.net/lists/linux-media/msg44155.html>
v20: <http://www.spinics.net/lists/linux-mm/msg29145.html>
v19: <http://www.spinics.net/lists/linux-mm/msg29145.html>
v18: <http://www.spinics.net/lists/linux-mm/msg28125.html>
v17: <http://www.spinics.net/lists/arm-kernel/msg148499.html>
v16: <http://www.spinics.net/lists/linux-mm/msg25066.html>
v15: <http://www.spinics.net/lists/linux-mm/msg23365.html>
v14: <http://www.spinics.net/lists/linux-media/msg36536.html>
v13: (internal, intentionally not released)
v12: <http://www.spinics.net/lists/linux-media/msg35674.html>
v11: <http://www.spinics.net/lists/linux-mm/msg21868.html>
v10: <http://www.spinics.net/lists/linux-mm/msg20761.html>
 v9: <http://article.gmane.org/gmane.linux.kernel.mm/60787>
 v8: <http://article.gmane.org/gmane.linux.kernel.mm/56855>
 v7: <http://article.gmane.org/gmane.linux.kernel.mm/55626>
 v6: <http://article.gmane.org/gmane.linux.kernel.mm/55626>
 v5: (intentionally left out as CMA v5 was identical to CMA v4)
 v4: <http://article.gmane.org/gmane.linux.kernel.mm/52010>
 v3: <http://article.gmane.org/gmane.linux.kernel.mm/51573>
 v2: <http://article.gmane.org/gmane.linux.kernel.mm/50986>
 v1: <http://article.gmane.org/gmane.linux.kernel.mm/50669>


Changelog:

v24:
    1. fixed handling of diffrent sizes of pageblock and MAX_ORDER size
       pages

    2. fixed number of the reclaimed pages before performing the allocation
       (thanks to Sandeep Patil for pointing this issue)

    3. rebased onto Linux v3.4-rc1

v23:
    1. fixed bug spotted by Aaro Koskinen (incorrect check inside VM_BUG_ON)

    2. rebased onto next-20120222 tree from
       git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git 

v22:
    1. Fixed compilation break caused by missing fixup patch in v21

    2. Fixed typos in the comments

    3. Removed superfluous #include entries

v21:
    1. Fixed incorrect check which broke memory compaction code

    2. Fixed hacky and racy min_free_kbytes handling

    3. Added serialization patch to watermark calculation

    4. Fixed typos here and there in the comments

v20 and earlier - see previous patchsets.


Patches in this patchset:

Marek Szyprowski (6):
  mm: extract reclaim code from __alloc_pages_direct_reclaim()
  mm: trigger page reclaim in alloc_contig_range() to stabilise
    watermarks
  drivers: add Contiguous Memory Allocator
  X86: integrate CMA with DMA-mapping subsystem
  ARM: integrate CMA with DMA-mapping subsystem
  ARM: Samsung: use CMA for 2 memory banks for s5p-mfc device

Mel Gorman (1):
  mm: Serialize access to min_free_kbytes

Michal Nazarewicz (9):
  mm: page_alloc: remove trailing whitespace
  mm: compaction: introduce isolate_migratepages_range()
  mm: compaction: introduce map_pages()
  mm: compaction: introduce isolate_freepages_range()
  mm: compaction: export some of the functions
  mm: page_alloc: introduce alloc_contig_range()
  mm: page_alloc: change fallbacks array handling
  mm: mmzone: MIGRATE_CMA migration type added
  mm: page_isolation: MIGRATE_CMA isolation functions added

 Documentation/kernel-parameters.txt   |    9 +
 arch/Kconfig                          |    3 +
 arch/arm/Kconfig                      |    2 +
 arch/arm/include/asm/dma-contiguous.h |   15 ++
 arch/arm/include/asm/mach/map.h       |    1 +
 arch/arm/kernel/setup.c               |    9 +-
 arch/arm/mm/dma-mapping.c             |  370 ++++++++++++++++++++++++------
 arch/arm/mm/init.c                    |   23 ++-
 arch/arm/mm/mm.h                      |    3 +
 arch/arm/mm/mmu.c                     |   31 ++-
 arch/arm/plat-s5p/dev-mfc.c           |   51 +----
 arch/x86/Kconfig                      |    1 +
 arch/x86/include/asm/dma-contiguous.h |   13 +
 arch/x86/include/asm/dma-mapping.h    |    4 +
 arch/x86/kernel/pci-dma.c             |   18 ++-
 arch/x86/kernel/pci-nommu.c           |    8 +-
 arch/x86/kernel/setup.c               |    2 +
 drivers/base/Kconfig                  |   89 +++++++
 drivers/base/Makefile                 |    1 +
 drivers/base/dma-contiguous.c         |  401 +++++++++++++++++++++++++++++++
 include/asm-generic/dma-contiguous.h  |   28 +++
 include/linux/device.h                |    4 +
 include/linux/dma-contiguous.h        |  110 +++++++++
 include/linux/gfp.h                   |   12 +
 include/linux/mmzone.h                |   47 +++-
 include/linux/page-isolation.h        |   18 +-
 mm/Kconfig                            |    2 +-
 mm/Makefile                           |    3 +-
 mm/compaction.c                       |  418 +++++++++++++++++++++------------
 mm/internal.h                         |   33 +++
 mm/memory-failure.c                   |    2 +-
 mm/memory_hotplug.c                   |    6 +-
 mm/page_alloc.c                       |  409 ++++++++++++++++++++++++++++----
 mm/page_isolation.c                   |   15 +-
 mm/vmstat.c                           |    3 +
 35 files changed, 1791 insertions(+), 373 deletions(-)
 create mode 100644 arch/arm/include/asm/dma-contiguous.h
 create mode 100644 arch/x86/include/asm/dma-contiguous.h
 create mode 100644 drivers/base/dma-contiguous.c
 create mode 100644 include/asm-generic/dma-contiguous.h
 create mode 100644 include/linux/dma-contiguous.h

-- 
1.7.1.569.g6f426


^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2012-05-10 15:14 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-04-03 14:10 [PATCHv24 00/16] Contiguous Memory Allocator Marek Szyprowski
2012-04-03 14:10 ` [PATCHv24 01/16] mm: page_alloc: remove trailing whitespace Marek Szyprowski
2012-04-03 14:10 ` [PATCHv24 02/16] mm: compaction: introduce isolate_migratepages_range() Marek Szyprowski
2012-04-03 14:10 ` [PATCHv24 03/16] mm: compaction: introduce map_pages() Marek Szyprowski
2012-04-03 14:10 ` [PATCHv24 04/16] mm: compaction: introduce isolate_freepages_range() Marek Szyprowski
2012-04-03 14:10 ` [PATCHv24 05/16] mm: compaction: export some of the functions Marek Szyprowski
2012-04-03 14:10 ` [PATCHv24 06/16] mm: page_alloc: introduce alloc_contig_range() Marek Szyprowski
2012-04-03 14:10 ` [PATCHv24 07/16] mm: page_alloc: change fallbacks array handling Marek Szyprowski
2012-04-03 14:10 ` [PATCHv24 08/16] mm: mmzone: MIGRATE_CMA migration type added Marek Szyprowski
2012-04-03 14:10 ` [PATCHv24 09/16] mm: page_isolation: MIGRATE_CMA isolation functions added Marek Szyprowski
2012-04-03 14:10 ` [PATCHv24 10/16] mm: Serialize access to min_free_kbytes Marek Szyprowski
2012-04-03 14:10 ` [PATCHv24 11/16] mm: extract reclaim code from __alloc_pages_direct_reclaim() Marek Szyprowski
2012-04-03 14:10 ` [PATCHv24 12/16] mm: trigger page reclaim in alloc_contig_range() to stabilise watermarks Marek Szyprowski
2012-04-03 14:10 ` [PATCHv24 13/16] drivers: add Contiguous Memory Allocator Marek Szyprowski
2012-04-03 14:10 ` [PATCHv24 14/16] X86: integrate CMA with DMA-mapping subsystem Marek Szyprowski
2012-04-03 14:10 ` [PATCHv24 15/16] ARM: " Marek Szyprowski
2012-04-03 14:10 ` [PATCHv24 16/16] ARM: Samsung: use CMA for 2 memory banks for s5p-mfc device Marek Szyprowski
2012-04-10 13:41 ` [PATCHv24 00/16] Contiguous Memory Allocator Aaro Koskinen
2012-04-10 17:19   ` Sandeep Patil
2012-04-11  6:48     ` Marek Szyprowski
2012-04-12 12:39 ` cary.zou
2012-04-19 19:40 ` Andrew Morton
2012-04-20 12:22   ` Marek Szyprowski
2012-04-20 18:30   ` Kumar Gala
2012-04-20 18:31   ` Kumar Gala
2012-04-30  3:38 ` [Linaro-mm-sig] " Barry Song
2012-05-10 13:19 ` [PATCH] drivers: cma: don't fail if migration returns -EAGAIN Marek Szyprowski
2012-05-10 15:14   ` Minchan Kim

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).