<feed xmlns='http://www.w3.org/2005/Atom'>
<title>xavi/android_kernel_m2note/kernel, branch ng-7.1.2</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<id>https://gitea.privatedns.org/xavi/android_kernel_m2note/atom?h=ng-7.1.2</id>
<link rel='self' href='https://gitea.privatedns.org/xavi/android_kernel_m2note/atom?h=ng-7.1.2'/>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/android_kernel_m2note/'/>
<updated>2019-09-11T12:26:36+00:00</updated>
<entry>
<title>futex: Ensure that futex address is aligned in handle_futex_death()</title>
<updated>2019-09-11T12:26:36+00:00</updated>
<author>
<name>Chen Jie</name>
<email>chenjie6@huawei.com</email>
</author>
<published>2019-03-15T03:44:38+00:00</published>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/android_kernel_m2note/commit/?id=1df42f16714e9bbf58917390a29ad564c9df7a14'/>
<id>urn:sha1:1df42f16714e9bbf58917390a29ad564c9df7a14</id>
<content type='text'>
commit 5a07168d8d89b00fe1760120714378175b3ef992 upstream.

The futex code requires that the user space addresses of futexes are 32bit
aligned. sys_futex() checks this in futex_get_keys() but the robust list
code has no alignment check in place.

As a consequence the kernel crashes on architectures with strict alignment
requirements in handle_futex_death() when trying to cmpxchg() on an
unaligned futex address which was retrieved from the robust list.

[ tglx: Rewrote changelog, proper sizeof() based alignement check and add
  	comment ]

Fixes: 0771dfefc9e5 ("[PATCH] lightweight robust futexes: core")
Change-Id: Ia19dbc196f5debc3c506f7d65fc2e155c835703d
Signed-off-by: Chen Jie &lt;chenjie6@huawei.com&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Cc: &lt;dvhart@infradead.org&gt;
Cc: &lt;peterz@infradead.org&gt;
Cc: &lt;zengweilin@huawei.com&gt;
Link: https://lkml.kernel.org/r/1552621478-119787-1-git-send-email-chenjie6@huawei.com
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>UPSTREAM: timer: Export destroy_hrtimer_on_stack()</title>
<updated>2019-08-01T16:12:56+00:00</updated>
<author>
<name>Guenter Roeck</name>
<email>linux@roeck-us.net</email>
</author>
<published>2016-05-27T00:21:05+00:00</published>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/android_kernel_m2note/commit/?id=02af2e27cfe653b744e2382951d98e2df38a16ad'/>
<id>urn:sha1:02af2e27cfe653b744e2382951d98e2df38a16ad</id>
<content type='text'>
hrtimer_init_on_stack() needs a matching call to
destroy_hrtimer_on_stack(), so both need to be exported.

Signed-off-by: Guenter Roeck &lt;linux@roeck-us.net&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
(cherry picked from commit c08376ac97cb202ec65320f3d90d5c4c5e2adb0b)
[astrachan: Fixes {i386,amd64}-allmodconfig build failure in vsoc.ko
 noticed by kernelci.org project building kernel/common]
Bug: 79376877
Change-Id: If4d5c466255019322ea21ef38ee5b1b382cce969
Signed-off-by: Alistair Strachan &lt;astrachan@google.com&gt;
Signed-off-by: Moyster &lt;oysterized@gmail.com&gt;
</content>
</entry>
<entry>
<title>mm/oom_kill: squashed reverts to a stable state</title>
<updated>2019-07-18T22:08:32+00:00</updated>
<author>
<name>Corinna Vinschen</name>
<email>xda@vinschen.de</email>
</author>
<published>2019-04-16T08:32:37+00:00</published>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/android_kernel_m2note/commit/?id=33c8b08c2bbe034fc01b346b1e6ce94913efb8ef'/>
<id>urn:sha1:33c8b08c2bbe034fc01b346b1e6ce94913efb8ef</id>
<content type='text'>
Revert "mm, oom: fix use-after-free in oom_kill_process"

This reverts commit e1bebdeedb497f03d426c85a89c3807c7e75268d.

Signed-off-by: Corinna Vinschen &lt;xda@vinschen.de&gt;

Revert "mm,oom: make oom_killer_disable() killable"

This reverts commit 65a7400a432639aa8d5e572f30687fbca204b6f8.

Signed-off-by: Corinna Vinschen &lt;xda@vinschen.de&gt;

Revert "mm: oom_kill: don't ignore oom score on exiting tasks"

This reverts commit d60dae46b27a8f381e4a7ad9dde870faa49fa5f1.

Signed-off-by: Corinna Vinschen &lt;xda@vinschen.de&gt;

Revert "mm/oom_kill.c: avoid attempting to kill init sharing same memory"

This reverts commit 10773c0325259d6640b93c0694b5598ddf84939f.

Signed-off-by: Corinna Vinschen &lt;xda@vinschen.de&gt;

Revert "CHROMIUM: DROP: mm/oom_kill: Double-check before killing a child in our place"

This reverts commit 2bdd9a2042a0e12d96c545773d9d8038c920f813.

Revert "mm/oom_kill: fix the wrong task-&gt;mm == mm checks in oom_kill_process()"

This reverts commit 419a313435b31821e4d045ca4b7ea1cc5fa02035.

Signed-off-by: Corinna Vinschen &lt;xda@vinschen.de&gt;

Revert "mm/oom_kill: cleanup the "kill sharing same memory" loop"

This reverts commit afda78c6de38f9f66eba0955153b380d540d8276.

Revert "mm/oom_kill: remove the wrong fatal_signal_pending() check in oom_kill_process()"

This reverts commit acde9c2ace298b249c06ec5b0b971c333449dc09.

Signed-off-by: Corinna Vinschen &lt;xda@vinschen.de&gt;

Revert "mm, oom: remove task_lock protecting comm printing"

This reverts commit 9a9ca142d250ec9de1215284857f4528c6ddb080.

Signed-off-by: Corinna Vinschen &lt;xda@vinschen.de&gt;

Revert "mm/oom_kill.c: suppress unnecessary "sharing same memory" message"

This reverts commit 1aa2960f7c70d65b1481f805ac73b988faff6747.

Signed-off-by: Corinna Vinschen &lt;xda@vinschen.de&gt;

Revert "mm/oom_kill.c: reverse the order of setting TIF_MEMDIE and sending SIGKILL"

This reverts commit f028aedfcfd2e2bb98921b98d3ae183387ab8fed.

Revert "mm, oom: remove unnecessary variable"

This reverts commit 54b0b58224146d68a11bccb5e64683ab3029373a.

Revert "mm/oom_kill.c: print points as unsigned int"

This reverts commit 603f975a6d4f0b56c7f6df7889ef2a704eca94a3.

Signed-off-by: Corinna Vinschen &lt;xda@vinschen.de&gt;

Revert "mm: oom_kill: simplify OOM killer locking"

This reverts commit 7951a52ed35d162063fa08b27894e302fd716ccd.

Revert "mm: oom_kill: remove unnecessary locking in exit_oom_victim()"

This reverts commit f0739b25ac884682865d6aae7485e79489107bfb.

Revert "mm: oom_kill: generalize OOM progress waitqueue"

This reverts commit eb4b1243c72ba0b392bbe05dbf9f91959f70eb18.

Revert "mm: oom_kill: switch test-and-clear of known TIF_MEMDIE to clear"

This reverts commit e611f16275c3642cb8a6345ff2470926fef52110.

Revert "mm: oom_kill: clean up victim marking and exiting interfaces"

This reverts commit c6fada01b9370e3d7603b4ad8c26b56759174667.

Revert "mm: oom_kill: remove unnecessary locking in oom_enable()"

This reverts commit 5dd152d7351b3805f59b2b1f624722ab2f3c5fd8.

Revert "oom, PM: make OOM detection in the freezer path raceless"

This reverts commit 5fc5b1ddee5404a7629dd7045f54eaf8941bc11c.
</content>
</entry>
<entry>
<title>kernel/sysctl.c: add missing range check in do_proc_dointvec_minmax_conv</title>
<updated>2019-07-18T18:42:45+00:00</updated>
<author>
<name>Zev Weiss</name>
<email>zev@bewilderbeest.net</email>
</author>
<published>2019-03-12T06:28:02+00:00</published>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/android_kernel_m2note/commit/?id=3356fe24ed568211f68b37c4afd8de134abfb39c'/>
<id>urn:sha1:3356fe24ed568211f68b37c4afd8de134abfb39c</id>
<content type='text'>
commit 8cf7630b29701d364f8df4a50e4f1f5e752b2778 upstream.

This bug has apparently existed since the introduction of this function
in the pre-git era (4500e91754d3 in Thomas Gleixner's history.git,
"[NET]: Add proc_dointvec_userhz_jiffies, use it for proper handling of
neighbour sysctls.").

As a minimal fix we can simply duplicate the corresponding check in
do_proc_dointvec_conv().

Change-Id: Ibf26281f3b0c0d35aacafa006341b6ff8e7e002f
Link: http://lkml.kernel.org/r/20190207123426.9202-3-zev@bewilderbeest.net
Signed-off-by: Zev Weiss &lt;zev@bewilderbeest.net&gt;
Cc: Brendan Higgins &lt;brendanhiggins@google.com&gt;
Cc: Iurii Zaikin &lt;yzaikin@google.com&gt;
Cc: Kees Cook &lt;keescook@chromium.org&gt;
Cc: Luis Chamberlain &lt;mcgrof@kernel.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>mm, oom: remove task_lock protecting comm printing</title>
<updated>2019-07-08T12:08:55+00:00</updated>
<author>
<name>David Rientjes</name>
<email>rientjes@google.com</email>
</author>
<published>2015-11-06T02:48:05+00:00</published>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/android_kernel_m2note/commit/?id=173048a77ade2e0a276ba52ebf5e9ead5f4091d3'/>
<id>urn:sha1:173048a77ade2e0a276ba52ebf5e9ead5f4091d3</id>
<content type='text'>
The oom killer takes task_lock() in a couple of places solely to protect
printing the task's comm.

A process's comm, including current's comm, may change due to
/proc/pid/comm or PR_SET_NAME.

The comm will always be NULL-terminated, so the worst race scenario would
only be during update.  We can tolerate a comm being printed that is in
the middle of an update to avoid taking the lock.

Other locations in the kernel have already dropped task_lock() when
printing comm, so this is consistent.

Change-Id: I89f64666a1db5d414aa53862fd6b665bbb8125bc
Signed-off-by: David Rientjes &lt;rientjes@google.com&gt;
Suggested-by: Oleg Nesterov &lt;oleg@redhat.com&gt;
Cc: Michal Hocko &lt;mhocko@kernel.org&gt;
Cc: Vladimir Davydov &lt;vdavydov@parallels.com&gt;
Cc: Sergey Senozhatsky &lt;sergey.senozhatsky.work@gmail.com&gt;
Acked-by: Johannes Weiner &lt;hannes@cmpxchg.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>mm: oom_kill: clean up victim marking and exiting interfaces</title>
<updated>2019-07-08T11:36:44+00:00</updated>
<author>
<name>Johannes Weiner</name>
<email>hannes@cmpxchg.org</email>
</author>
<published>2015-06-24T23:57:07+00:00</published>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/android_kernel_m2note/commit/?id=c6fada01b9370e3d7603b4ad8c26b56759174667'/>
<id>urn:sha1:c6fada01b9370e3d7603b4ad8c26b56759174667</id>
<content type='text'>
Rename unmark_oom_victim() to exit_oom_victim().  Marking and unmarking
are related in functionality, but the interface is not symmetrical at
all: one is an internal OOM killer function used during the killing, the
other is for an OOM victim to signal its own death on exit later on.
This has locking implications, see follow-up changes.

While at it, rename mark_tsk_oom_victim() to mark_oom_victim(), which
is easier on the eye.

Change-Id: I8956f6357e98f17e0ae6096c6a2c7027886a4fda
Signed-off-by: Johannes Weiner &lt;hannes@cmpxchg.org&gt;
Acked-by: David Rientjes &lt;rientjes@google.com&gt;
Acked-by: Michal Hocko &lt;mhocko@suse.cz&gt;
Cc: Tetsuo Handa &lt;penguin-kernel@I-love.SAKURA.ne.jp&gt;
Cc: Andrea Arcangeli &lt;aarcange@redhat.com&gt;
Cc: Dave Chinner &lt;david@fromorbit.com&gt;
Cc: Vlastimil Babka &lt;vbabka@suse.cz&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>oom, PM: make OOM detection in the freezer path raceless</title>
<updated>2019-07-08T11:36:44+00:00</updated>
<author>
<name>Michal Hocko</name>
<email>mhocko@suse.cz</email>
</author>
<published>2015-02-11T23:26:24+00:00</published>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/android_kernel_m2note/commit/?id=5fc5b1ddee5404a7629dd7045f54eaf8941bc11c'/>
<id>urn:sha1:5fc5b1ddee5404a7629dd7045f54eaf8941bc11c</id>
<content type='text'>
Commit 5695be142e20 ("OOM, PM: OOM killed task shouldn't escape PM
suspend") has left a race window when OOM killer manages to
note_oom_kill after freeze_processes checks the counter.  The race
window is quite small and really unlikely and partial solution deemed
sufficient at the time of submission.

Tejun wasn't happy about this partial solution though and insisted on a
full solution.  That requires the full OOM and freezer's task freezing
exclusion, though.  This is done by this patch which introduces oom_sem
RW lock and turns oom_killer_disable() into a full OOM barrier.

oom_killer_disabled check is moved from the allocation path to the OOM
level and we take oom_sem for reading for both the check and the whole
OOM invocation.

oom_killer_disable() takes oom_sem for writing so it waits for all
currently running OOM killer invocations.  Then it disable all the further
OOMs by setting oom_killer_disabled and checks for any oom victims.
Victims are counted via mark_tsk_oom_victim resp.  unmark_oom_victim.  The
last victim wakes up all waiters enqueued by oom_killer_disable().
Therefore this function acts as the full OOM barrier.

The page fault path is covered now as well although it was assumed to be
safe before.  As per Tejun, "We used to have freezing points deep in file
system code which may be reacheable from page fault." so it would be
better and more robust to not rely on freezing points here.  Same applies
to the memcg OOM killer.

out_of_memory tells the caller whether the OOM was allowed to trigger and
the callers are supposed to handle the situation.  The page allocation
path simply fails the allocation same as before.  The page fault path will
retry the fault (more on that later) and Sysrq OOM trigger will simply
complain to the log.

Normally there wouldn't be any unfrozen user tasks after
try_to_freeze_tasks so the function will not block. But if there was an
OOM killer racing with try_to_freeze_tasks and the OOM victim didn't
finish yet then we have to wait for it. This should complete in a finite
time, though, because

	- the victim cannot loop in the page fault handler (it would die
	  on the way out from the exception)
	- it cannot loop in the page allocator because all the further
	  allocation would fail and __GFP_NOFAIL allocations are not
	  acceptable at this stage
	- it shouldn't be blocked on any locks held by frozen tasks
	  (try_to_freeze expects lockless context) and kernel threads and
	  work queues are not frozen yet

Change-Id: Ie72c2cfc39dad6420802b873053c739e804f956f
Signed-off-by: Michal Hocko &lt;mhocko@suse.cz&gt;
Suggested-by: Tejun Heo &lt;tj@kernel.org&gt;
Cc: David Rientjes &lt;rientjes@google.com&gt;
Cc: Johannes Weiner &lt;hannes@cmpxchg.org&gt;
Cc: Oleg Nesterov &lt;oleg@redhat.com&gt;
Cc: Cong Wang &lt;xiyou.wangcong@gmail.com&gt;
Cc: "Rafael J. Wysocki" &lt;rjw@rjwysocki.net&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>alarmtimer: Prevent overflow for relative nanosleep</title>
<updated>2019-07-08T11:36:43+00:00</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2018-07-02T07:34:29+00:00</published>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/android_kernel_m2note/commit/?id=820fa9ba24e50a9de378b4149b38f67d0452c8fb'/>
<id>urn:sha1:820fa9ba24e50a9de378b4149b38f67d0452c8fb</id>
<content type='text'>
commit 5f936e19cc0ef97dbe3a56e9498922ad5ba1edef upstream.

Air Icy reported:

  UBSAN: Undefined behaviour in kernel/time/alarmtimer.c:811:7
  signed integer overflow:
  1529859276030040771 + 9223372036854775807 cannot be represented in type 'long long int'
  Call Trace:
   alarm_timer_nsleep+0x44c/0x510 kernel/time/alarmtimer.c:811
   __do_sys_clock_nanosleep kernel/time/posix-timers.c:1235 [inline]
   __se_sys_clock_nanosleep kernel/time/posix-timers.c:1213 [inline]
   __x64_sys_clock_nanosleep+0x326/0x4e0 kernel/time/posix-timers.c:1213
   do_syscall_64+0xb8/0x3a0 arch/x86/entry/common.c:290

alarm_timer_nsleep() uses ktime_add() to add the current time and the
relative expiry value. ktime_add() has no sanity checks so the addition
can overflow when the relative timeout is large enough.

Use ktime_add_safe() which has the necessary sanity checks in place and
limits the result to the valid range.

Fixes: 9a7adcf5c6de ("timers: Posix interface for alarm-timers")
Change-Id: Iee4f4d2c4fed03833643bf7fee90ad1c54b6b065
Reported-by: Team OWL337 &lt;icytxw@gmail.com&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Cc: John Stultz &lt;john.stultz@linaro.org&gt;
Link: https://lkml.kernel.org/r/alpine.DEB.2.21.1807020926360.1595@nanos.tec.linutronix.de
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>ANDROID: lib: vsprintf: additional kernel pointer filtering options</title>
<updated>2019-05-03T16:09:53+00:00</updated>
<author>
<name>Dave Weinstein</name>
<email>olorin@google.com</email>
</author>
<published>2017-01-11T23:39:07+00:00</published>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/android_kernel_m2note/commit/?id=2fe065dee79d9eb3525116a262083bc71a9b5c73'/>
<id>urn:sha1:2fe065dee79d9eb3525116a262083bc71a9b5c73</id>
<content type='text'>
Add the kptr_restrict setting of 3 which results in both
%p and %pK values being replaced by zeros.

Add an additional %pP value inspired by the Grsecurity
option which explicitly whitelists pointers for output.

This patch is based on work by William Roberts
&lt;william.c.roberts@intel.com&gt;

[CV: fixed GCC warning on 32 bit targets]

BUG: 30368199
Change-Id: Ic5cef86617f7758514271edd67199683d2c4e2bb
Signed-off-by: Dave Weinstein &lt;olorin@google.com&gt;
</content>
</entry>
<entry>
<title>oom: add helpers for setting and clearing TIF_MEMDIE</title>
<updated>2019-05-02T17:06:04+00:00</updated>
<author>
<name>Michal Hocko</name>
<email>mhocko@suse.cz</email>
</author>
<published>2015-02-11T23:26:12+00:00</published>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/android_kernel_m2note/commit/?id=f5b67d273819a8079da116bb74980c76051d2b74'/>
<id>urn:sha1:f5b67d273819a8079da116bb74980c76051d2b74</id>
<content type='text'>
This patchset addresses a race which was described in the changelog for
5695be142e20 ("OOM, PM: OOM killed task shouldn't escape PM suspend"):

: PM freezer relies on having all tasks frozen by the time devices are
: getting frozen so that no task will touch them while they are getting
: frozen.  But OOM killer is allowed to kill an already frozen task in order
: to handle OOM situtation.  In order to protect from late wake ups OOM
: killer is disabled after all tasks are frozen.  This, however, still keeps
: a window open when a killed task didn't manage to die by the time
: freeze_processes finishes.

The original patch hasn't closed the race window completely because that
would require a more complex solution as it can be seen by this patchset.

The primary motivation was to close the race condition between OOM killer
and PM freezer _completely_.  As Tejun pointed out, even though the race
condition is unlikely the harder it would be to debug weird bugs deep in
the PM freezer when the debugging options are reduced considerably.  I can
only speculate what might happen when a task is still runnable
unexpectedly.

On a plus side and as a side effect the oom enable/disable has a better
(full barrier) semantic without polluting hot paths.

I have tested the series in KVM with 100M RAM:
- many small tasks (20M anon mmap) which are triggering OOM continually
- s2ram which resumes automatically is triggered in a loop
	echo processors &gt; /sys/power/pm_test
	while true
	do
		echo mem &gt; /sys/power/state
		sleep 1s
	done
- simple module which allocates and frees 20M in 8K chunks. If it sees
  freezing(current) then it tries another round of allocation before calling
  try_to_freeze
- debugging messages of PM stages and OOM killer enable/disable/fail added
  and unmark_oom_victim is delayed by 1s after it clears TIF_MEMDIE and before
  it wakes up waiters.
- rebased on top of the current mmotm which means some necessary updates
  in mm/oom_kill.c. mark_tsk_oom_victim is now called under task_lock but
  I think this should be OK because __thaw_task shouldn't interfere with any
  locking down wake_up_process. Oleg?

As expected there are no OOM killed tasks after oom is disabled and
allocations requested by the kernel thread are failing after all the tasks
are frozen and OOM disabled.  I wasn't able to catch a race where
oom_killer_disable would really have to wait but I kinda expected the race
is really unlikely.

[  242.609330] Killed process 2992 (mem_eater) total-vm:24412kB, anon-rss:2164kB, file-rss:4kB
[  243.628071] Unmarking 2992 OOM victim. oom_victims: 1
[  243.636072] (elapsed 2.837 seconds) done.
[  243.641985] Trying to disable OOM killer
[  243.643032] Waiting for concurent OOM victims
[  243.644342] OOM killer disabled
[  243.645447] Freezing remaining freezable tasks ... (elapsed 0.005 seconds) done.
[  243.652983] Suspending console(s) (use no_console_suspend to debug)
[  243.903299] kmem_eater: page allocation failure: order:1, mode:0x204010
[...]
[  243.992600] PM: suspend of devices complete after 336.667 msecs
[  243.993264] PM: late suspend of devices complete after 0.660 msecs
[  243.994713] PM: noirq suspend of devices complete after 1.446 msecs
[  243.994717] ACPI: Preparing to enter system sleep state S3
[  243.994795] PM: Saving platform NVS memory
[  243.994796] Disabling non-boot CPUs ...

The first 2 patches are simple cleanups for OOM.  They should go in
regardless the rest IMO.

Patches 3 and 4 are trivial printk -&gt; pr_info conversion and they should
go in ditto.

The main patch is the last one and I would appreciate acks from Tejun and
Rafael.  I think the OOM part should be OK (except for __thaw_task vs.
task_lock where a look from Oleg would appreciated) but I am not so sure I
haven't screwed anything in the freezer code.  I have found several
surprises there.

This patch (of 5):

This patch is just a preparatory and it doesn't introduce any functional
change.

Note:
I am utterly unhappy about lowmemory killer abusing TIF_MEMDIE just to
wait for the oom victim and to prevent from new killing. This is
just a side effect of the flag. The primary meaning is to give the oom
victim access to the memory reserves and that shouldn't be necessary
here.

Change-Id: If4188f68cdfb73f8cf2721f89c9739ec0a8f0e12
Signed-off-by: Michal Hocko &lt;mhocko@suse.cz&gt;
Cc: Tejun Heo &lt;tj@kernel.org&gt;
Cc: David Rientjes &lt;rientjes@google.com&gt;
Cc: Johannes Weiner &lt;hannes@cmpxchg.org&gt;
Cc: Oleg Nesterov &lt;oleg@redhat.com&gt;
Cc: Cong Wang &lt;xiyou.wangcong@gmail.com&gt;
Cc: "Rafael J. Wysocki" &lt;rjw@rjwysocki.net&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
</feed>
