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

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

Merge branch 'akpm' (patches from Andrew)

Merge second patch-bomb from Andrew Morton:

 - most of the rest of MM

 - procfs

 - lib/ updates

 - printk updates

 - bitops infrastructure tweaks

 - checkpatch updates

 - nilfs2 update

 - signals

 - various other misc bits: coredump, seqfile, kexec, pidns, zlib, ipc,
   dma-debug, dma-mapping, ...

* emailed patches from Andrew Morton <akpm@linux-foundation.org>: (102 commits)
  ipc,msg: drop dst nil validation in copy_msg
  include/linux/zutil.h: fix usage example of zlib_adler32()
  panic: release stale console lock to always get the logbuf printed out
  dma-debug: check nents in dma_sync_sg*
  dma-mapping: tidy up dma_parms default handling
  pidns: fix set/getpriority and ioprio_set/get in PRIO_USER mode
  kexec: use file name as the output message prefix
  fs, seqfile: always allow oom killer
  seq_file: reuse string_escape_str()
  fs/seq_file: use seq_* helpers in seq_hex_dump()
  coredump: change zap_threads() and zap_process() to use for_each_thread()
  coredump: ensure all coredumping tasks have SIGNAL_GROUP_COREDUMP
  signal: remove jffs2_garbage_collect_thread()->allow_signal(SIGCONT)
  signal: introduce kernel_signal_stop() to fix jffs2_garbage_collect_thread()
  signal: turn dequeue_signal_lock() into kernel_dequeue_signal()
  signals: kill block_all_signals() and unblock_all_signals()
  nilfs2: fix gcc uninitialized-variable warnings in powerpc build
  nilfs2: fix gcc unused-but-set-variable warnings
  MAINTAINERS: nilfs2: add header file for tracing
  nilfs2: add tracepoints for analyzing reading and writing metadata files
  ...
parents ab9f2faf 5f2a2d5d
Loading
Loading
Loading
Loading
+29 −0
Original line number Diff line number Diff line
@@ -23,6 +23,10 @@ Example:

Reminder: sizeof() result is of type size_t.

The kernel's printf does not support %n. For obvious reasons, floating
point formats (%e, %f, %g, %a) are also not recognized. Use of any
unsupported specifier or length qualifier results in a WARN and early
return from vsnprintf.

Raw pointer value SHOULD be printed with %p. The kernel supports
the following extended format specifiers for pointer types:
@@ -119,6 +123,7 @@ Raw buffer as an escaped string:
	If field width is omitted the 1 byte only will be escaped.

Raw buffer as a hex string:

	%*ph	00 01 02  ...  3f
	%*phC	00:01:02: ... :3f
	%*phD	00-01-02- ... -3f
@@ -234,6 +239,7 @@ UUID/GUID addresses:
	Passed by reference.

dentry names:

	%pd{,2,3,4}
	%pD{,2,3,4}

@@ -256,6 +262,8 @@ struct va_format:
		va_list *va;
	};

	Implements a "recursive vsnprintf".

	Do not use this feature without some mechanism to verify the
	correctness of the format string and va_list arguments.

@@ -284,6 +292,27 @@ bitmap and its derivatives such as cpumask and nodemask:

	Passed by reference.

Network device features:

	%pNF	0x000000000000c000

	For printing netdev_features_t.

	Passed by reference.

Command from struct task_struct

	%pT	ls

	For printing executable name excluding path from struct
	task_struct.

	Passed by reference.

If you add other %p extensions, please extend lib/test_printf.c with
one or more test cases, if at all feasible.


Thank you for your cooperation and attention.


+8 −6
Original line number Diff line number Diff line
Started Jan 2000 by Kanoj Sarcar <kanoj@sgi.com>

Memory balancing is needed for non __GFP_WAIT as well as for non
__GFP_IO allocations.
Memory balancing is needed for !__GFP_ATOMIC and !__GFP_KSWAPD_RECLAIM as
well as for non __GFP_IO allocations.

There are two reasons to be requesting non __GFP_WAIT allocations:
the caller can not sleep (typically intr context), or does not want
to incur cost overheads of page stealing and possible swap io for
whatever reasons.
The first reason why a caller may avoid reclaim is that the caller can not
sleep due to holding a spinlock or is in interrupt context. The second may
be that the caller is willing to fail the allocation without incurring the
overhead of page reclaim. This may happen for opportunistic high-order
allocation requests that have order-0 fallback options. In such cases,
the caller may also wish to avoid waking kswapd.

__GFP_IO allocation requests are made to prevent file system deadlocks.

+2 −2
Original line number Diff line number Diff line
@@ -54,8 +54,8 @@ everything required is done by pgtable_page_ctor() and pgtable_page_dtor(),
which must be called on PTE table allocation / freeing.

Make sure the architecture doesn't use slab allocator for page table
allocation: slab uses page->slab_cache and page->first_page for its pages.
These fields share storage with page->ptl.
allocation: slab uses page->slab_cache for its pages.
This field shares storage with page->ptl.

PMD split lock only makes sense if you have more than two page table
levels.
+4 −0
Original line number Diff line number Diff line
@@ -4209,7 +4209,10 @@ L: linux-kernel@vger.kernel.org
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/chanwoo/extcon.git
S:	Maintained
F:	drivers/extcon/
F:	include/linux/extcon/
F:	include/linux/extcon.h
F:	Documentation/extcon/
F:	Documentation/devicetree/bindings/extcon/

EXYNOS DP DRIVER
M:	Jingoo Han <jingoohan1@gmail.com>
@@ -7490,6 +7493,7 @@ S: Supported
F:	Documentation/filesystems/nilfs2.txt
F:	fs/nilfs2/
F:	include/linux/nilfs2_fs.h
F:	include/trace/events/nilfs2.h

NINJA SCSI-3 / NINJA SCSI-32Bi (16bit/CardBus) PCMCIA SCSI HOST ADAPTER DRIVER
M:	YOKOTA Hiroshi <yokota@netlab.is.tsukuba.ac.jp>
+3 −3
Original line number Diff line number Diff line
@@ -651,12 +651,12 @@ static void *__dma_alloc(struct device *dev, size_t size, dma_addr_t *handle,

	if (nommu())
		addr = __alloc_simple_buffer(dev, size, gfp, &page);
	else if (dev_get_cma_area(dev) && (gfp & __GFP_WAIT))
	else if (dev_get_cma_area(dev) && (gfp & __GFP_DIRECT_RECLAIM))
		addr = __alloc_from_contiguous(dev, size, prot, &page,
					       caller, want_vaddr);
	else if (is_coherent)
		addr = __alloc_simple_buffer(dev, size, gfp, &page);
	else if (!(gfp & __GFP_WAIT))
	else if (!gfpflags_allow_blocking(gfp))
		addr = __alloc_from_pool(size, &page);
	else
		addr = __alloc_remap_buffer(dev, size, gfp, prot, &page,
@@ -1363,7 +1363,7 @@ static void *arm_iommu_alloc_attrs(struct device *dev, size_t size,
	*handle = DMA_ERROR_CODE;
	size = PAGE_ALIGN(size);

	if (!(gfp & __GFP_WAIT))
	if (!gfpflags_allow_blocking(gfp))
		return __iommu_alloc_atomic(dev, size, handle);

	/*
Loading