Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit eae21770 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge branch 'akpm' (patches from Andrew)

Merge third patch-bomb from Andrew Morton:
 "I'm pretty much done for -rc1 now:

   - the rest of MM, basically

   - lib/ updates

   - checkpatch, epoll, hfs, fatfs, ptrace, coredump, exit

   - cpu_mask simplifications

   - kexec, rapidio, MAINTAINERS etc, etc.

   - more dma-mapping cleanups/simplifications from hch"

* emailed patches from Andrew Morton <akpm@linux-foundation.org>: (109 commits)
  MAINTAINERS: add/fix git URLs for various subsystems
  mm: memcontrol: add "sock" to cgroup2 memory.stat
  mm: memcontrol: basic memory statistics in cgroup2 memory controller
  mm: memcontrol: do not uncharge old page in page cache replacement
  Documentation: cgroup: add memory.swap.{current,max} description
  mm: free swap cache aggressively if memcg swap is full
  mm: vmscan: do not scan anon pages if memcg swap limit is hit
  swap.h: move memcg related stuff to the end of the file
  mm: memcontrol: replace mem_cgroup_lruvec_online with mem_cgroup_online
  mm: vmscan: pass memcg to get_scan_count()
  mm: memcontrol: charge swap to cgroup2
  mm: memcontrol: clean up alloc, online, offline, free functions
  mm: memcontrol: flatten struct cg_proto
  mm: memcontrol: rein in the CONFIG space madness
  net: drop tcp_memcontrol.c
  mm: memcontrol: introduce CONFIG_MEMCG_LEGACY_KMEM
  mm: memcontrol: allow to disable kmem accounting for cgroup2
  mm: memcontrol: account "kmem" consumers in cgroup2 memory controller
  mm: memcontrol: move kmem accounting code to CONFIG_MEMCG
  mm: memcontrol: separate kmem code from legacy tcp accounting code
  ...
parents e9f57ebc 9f273c24
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -1856,6 +1856,16 @@ S: Korte Heul 95
S: 1403 ND  BUSSUM
S: The Netherlands

N: Martin Kepplinger
E: martink@posteo.de
E: martin.kepplinger@theobroma-systems.com
W: http://www.martinkepplinger.com
D: mma8452 accelerators iio driver
D: Kernel cleanups
S: Garnisonstraße 26
S: 4020 Linz
S: Austria

N: Karl Keyte
E: karl@koft.com
D: Disk usage statistics and modifications to line printer driver
+0 −10
Original line number Diff line number Diff line
@@ -951,16 +951,6 @@ to "Closing".
   alignment constraints (e.g. the alignment constraints about 64-bit
   objects).

3) Supporting multiple types of IOMMUs

   If your architecture needs to support multiple types of IOMMUs, you
   can use include/linux/asm-generic/dma-mapping-common.h. It's a
   library to support the DMA API with multiple types of IOMMUs. Lots
   of architectures (x86, powerpc, sh, alpha, ia64, microblaze and
   sparc) use it. Choose one to see how it can be used. If you need to
   support multiple types of IOMMUs in a single system, the example of
   x86 or powerpc helps.

			   Closing

This document, and the API itself, would not be in its current
+89 −0
Original line number Diff line number Diff line
@@ -819,6 +819,78 @@ PAGE_SIZE multiple when read back.
		the cgroup.  This may not exactly match the number of
		processes killed but should generally be close.

  memory.stat

	A read-only flat-keyed file which exists on non-root cgroups.

	This breaks down the cgroup's memory footprint into different
	types of memory, type-specific details, and other information
	on the state and past events of the memory management system.

	All memory amounts are in bytes.

	The entries are ordered to be human readable, and new entries
	can show up in the middle. Don't rely on items remaining in a
	fixed position; use the keys to look up specific values!

	  anon

		Amount of memory used in anonymous mappings such as
		brk(), sbrk(), and mmap(MAP_ANONYMOUS)

	  file

		Amount of memory used to cache filesystem data,
		including tmpfs and shared memory.

	  file_mapped

		Amount of cached filesystem data mapped with mmap()

	  file_dirty

		Amount of cached filesystem data that was modified but
		not yet written back to disk

	  file_writeback

		Amount of cached filesystem data that was modified and
		is currently being written back to disk

	  inactive_anon
	  active_anon
	  inactive_file
	  active_file
	  unevictable

		Amount of memory, swap-backed and filesystem-backed,
		on the internal memory management lists used by the
		page reclaim algorithm

	  pgfault

		Total number of page faults incurred

	  pgmajfault

		Number of major page faults incurred

  memory.swap.current

	A read-only single value file which exists on non-root
	cgroups.

	The total amount of swap currently being used by the cgroup
	and its descendants.

  memory.swap.max

	A read-write single value file which exists on non-root
	cgroups.  The default is "max".

	Swap usage hard limit.  If a cgroup's swap usage reaches this
	limit, anonymous meomry of the cgroup will not be swapped out.


5-2-2. General Usage

@@ -1291,3 +1363,20 @@ allocation from the slack available in other groups or the rest of the
system than killing the group.  Otherwise, memory.max is there to
limit this type of spillover and ultimately contain buggy or even
malicious applications.

The combined memory+swap accounting and limiting is replaced by real
control over swap space.

The main argument for a combined memory+swap facility in the original
cgroup design was that global or parental pressure would always be
able to swap all anonymous memory of a child group, regardless of the
child's own (possibly untrusted) configuration.  However, untrusted
groups can sabotage swapping by other means - such as referencing its
anonymous memory in a tight loop - and an admin can not assume full
swappability when overcommitting untrusted jobs.

For trusted jobs, on the other hand, a combined counter is not an
intuitive userspace interface, and it flies in the face of the idea
that cgroup controllers should account and limit specific physical
resources.  Swap space is a resource like all others in the system,
and that's why unified hierarchy allows distributing it separately.
+0 −40
Original line number Diff line number Diff line
#
# Feature name:          dma_map_attrs
#         Kconfig:       HAVE_DMA_ATTRS
#         description:   arch provides dma_*map*_attrs() APIs
#
    -----------------------
    |         arch |status|
    -----------------------
    |       alpha: |  ok  |
    |         arc: | TODO |
    |         arm: |  ok  |
    |       arm64: |  ok  |
    |       avr32: | TODO |
    |    blackfin: | TODO |
    |         c6x: | TODO |
    |        cris: | TODO |
    |         frv: | TODO |
    |       h8300: |  ok  |
    |     hexagon: |  ok  |
    |        ia64: |  ok  |
    |        m32r: | TODO |
    |        m68k: | TODO |
    |       metag: | TODO |
    |  microblaze: |  ok  |
    |        mips: |  ok  |
    |     mn10300: | TODO |
    |       nios2: | TODO |
    |    openrisc: |  ok  |
    |      parisc: | TODO |
    |     powerpc: |  ok  |
    |        s390: |  ok  |
    |       score: | TODO |
    |          sh: |  ok  |
    |       sparc: |  ok  |
    |        tile: |  ok  |
    |          um: | TODO |
    |   unicore32: |  ok  |
    |         x86: |  ok  |
    |      xtensa: | TODO |
    -----------------------
+10 −0
Original line number Diff line number Diff line
@@ -180,6 +180,16 @@ dos1xfloppy -- If set, use a fallback default BIOS Parameter Block

<bool>: 0,1,yes,no,true,false

LIMITATION
---------------------------------------------------------------------
* The fallocated region of file is discarded at umount/evict time
  when using fallocate with FALLOC_FL_KEEP_SIZE.
  So, User should assume that fallocated region can be discarded at
  last close if there is memory pressure resulting in eviction of
  the inode from the memory. As a result, for any dependency on
  the fallocated region, user should make sure to recheck fallocate
  after reopening the file.

TODO
----------------------------------------------------------------------
* Need to get rid of the raw scanning stuff.  Instead, always use
Loading