<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/arch/um/include/shared, branch linux-3.18.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.18.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.18.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2018-02-07T19:07:53Z</updated>
<entry>
<title>um: Remove copy&amp;paste code from init.h</title>
<updated>2018-02-07T19:07:53Z</updated>
<author>
<name>Richard Weinberger</name>
</author>
<published>2015-05-31T20:15:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b1cf5261fedb0cb74f18279ea6f206529d381ff5'/>
<id>urn:sha1:b1cf5261fedb0cb74f18279ea6f206529d381ff5</id>
<content type='text'>
commit 30b11ee9ae23d78de66b9ae315880af17a64ba83 upstream.

As we got rid of the __KERNEL__ abuse, we can directly
include linux/compiler.h now.
This also allows gcc 5 to build UML.

Reported-by: Hans-Werner Hilse &lt;hwhilse@gmail.com&gt;
Signed-off-by: Richard Weinberger &lt;richard@nod.at&gt;
Cc: Greg Hackmann &lt;ghackmann@google.com&gt;
Cc: Bernie Innocenti &lt;codewiz@google.com&gt;
Cc: Lorenzo Colitti &lt;lorenzo@google.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>um: Stop abusing __KERNEL__</title>
<updated>2018-02-07T19:07:53Z</updated>
<author>
<name>Richard Weinberger</name>
</author>
<published>2015-05-31T17:50:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=db72a03c34b5fb6ab37053ea4dffc37f831892ff'/>
<id>urn:sha1:db72a03c34b5fb6ab37053ea4dffc37f831892ff</id>
<content type='text'>
commit 298e20ba8c197e8d429a6c8671550c41c7919033 upstream.

Currently UML is abusing __KERNEL__ to distinguish between
kernel and host code (os-Linux). It is better to use a custom
define such that existing users of __KERNEL__ don't get confused.

Signed-off-by: Richard Weinberger &lt;richard@nod.at&gt;
Cc: Greg Hackmann &lt;ghackmann@google.com&gt;
Cc: Bernie Innocenti &lt;codewiz@google.com&gt;
Cc: Lorenzo Colitti &lt;lorenzo@google.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>um: delete unnecessary bootmem struct page array</title>
<updated>2014-10-13T15:15:09Z</updated>
<author>
<name>Honggang Li</name>
</author>
<published>2014-06-03T05:30:45Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9e6a57d2cdee36a6d9c5d5cc3db85713dd416719'/>
<id>urn:sha1:9e6a57d2cdee36a6d9c5d5cc3db85713dd416719</id>
<content type='text'>
1) uml kernel bootmem managed through bootmem_data-&gt;node_bootmem_map,
not the struct page array, so the array is unnecessary.

2) the bootmem struct page array has been pointed by a *local* pointer,
struct page *map, in init_maps function. The array can be accessed only
in init_maps's scope. As a result, uml kernel wastes about 1% of total
memory.

Signed-off-by: Honggang Li &lt;enjoymindful@gmail.com&gt;
Signed-off-by: Richard Weinberger &lt;richard@nod.at&gt;
</content>
</entry>
<entry>
<title>um: Use get_signal() signal_setup_done()</title>
<updated>2014-08-06T11:03:41Z</updated>
<author>
<name>Richard Weinberger</name>
</author>
<published>2013-10-06T19:57:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=307627eebbb0bc41b21e74d78b932362a6c1b38d'/>
<id>urn:sha1:307627eebbb0bc41b21e74d78b932362a6c1b38d</id>
<content type='text'>
Use the more generic functions get_signal() signal_setup_done()
for signal delivery.

Signed-off-by: Richard Weinberger &lt;richard@nod.at&gt;
</content>
</entry>
<entry>
<title>um: Memory corruption on startup</title>
<updated>2014-04-20T21:57:21Z</updated>
<author>
<name>Anton Ivanov</name>
</author>
<published>2014-03-07T18:37:47Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0565103d1adbd765ca45248d04c327c076dd1571'/>
<id>urn:sha1:0565103d1adbd765ca45248d04c327c076dd1571</id>
<content type='text'>
The reverse case of this race (you must msync before read) is
well known. This is the not so common one.

It can be triggered only on systems which do a lot of task
switching and only at UML startup. If you are starting 200+ UMLs
~ 0.5% will always die without this fix.

Signed-off-by: Anton Ivanov &lt;antivano@cisco.com&gt;
[rw: minor whitespace fixes]
Signed-off-by: Richard Weinberger &lt;richard@nod.at&gt;
</content>
</entry>
<entry>
<title>um: Remove unused declarations from &lt;as-layout.h&gt;</title>
<updated>2013-11-17T10:39:22Z</updated>
<author>
<name>Geert Uytterhoeven</name>
</author>
<published>2013-11-12T19:42:27Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=33a7d42999b1857d4494f6ad6367e3aef0ae8137'/>
<id>urn:sha1:33a7d42999b1857d4494f6ad6367e3aef0ae8137</id>
<content type='text'>
_end is used, but it's already provided by &lt;asm/sections.h&gt;, so use that.

Signed-off-by: Geert Uytterhoeven &lt;geert@linux-m68k.org&gt;
Cc: Richard Weinberger &lt;richard@nod.at&gt;
Cc: user-mode-linux-devel@lists.sourceforge.net
Signed-off-by: Richard Weinberger &lt;richard@nod.at&gt;
</content>
</entry>
<entry>
<title>um: Make stack trace reliable against kernel mode faults</title>
<updated>2013-11-17T10:27:30Z</updated>
<author>
<name>Richard Weinberger</name>
</author>
<published>2013-09-23T15:38:02Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f72c22e45e8f8fe78c7f793d983bee5bed63497e'/>
<id>urn:sha1:f72c22e45e8f8fe78c7f793d983bee5bed63497e</id>
<content type='text'>
As UML uses an alternative signal stack we cannot use
the current stack pointer for stack dumping if UML itself
dies by SIGSEGV. To bypass this issue we save regs taken
from mcontext in our segv handler into thread_struct and
use these regs to obtain the stack pointer in show_stack().

Signed-off-by: Richard Weinberger &lt;richard@nod.at&gt;
</content>
</entry>
<entry>
<title>um: Cleanup SIGTERM handling</title>
<updated>2013-09-07T08:56:58Z</updated>
<author>
<name>Richard Weinberger</name>
</author>
<published>2013-08-18T11:30:08Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=91d44ff860a9e9c0db81a89cbc24fa31fbd8e6d3'/>
<id>urn:sha1:91d44ff860a9e9c0db81a89cbc24fa31fbd8e6d3</id>
<content type='text'>
Richard reported that some UML processes survive if the UML
main process receives a SIGTERM.
This issue was caused by a wrongly placed signal(SIGTERM, SIG_DFL)
in init_new_thread_signals().
It disabled the UML exit handler accidently for some processes.
The correct solution is to disable the fatal handler for all
UML helper threads/processes.
Such that last_ditch_exit() does not get called multiple times
and all processes can exit due to SIGTERM.

Reported-and-tested-by: Richard W.M. Jones &lt;rjones@redhat.com&gt;
Signed-off-by: Richard Weinberger &lt;richard@nod.at&gt;
</content>
</entry>
<entry>
<title>um: ubd: Add REQ_FLUSH suppport</title>
<updated>2013-09-07T08:56:49Z</updated>
<author>
<name>Richard Weinberger</name>
</author>
<published>2013-08-18T11:30:06Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=805f11a0d515658106bfbfadceff0eb30bd90ad2'/>
<id>urn:sha1:805f11a0d515658106bfbfadceff0eb30bd90ad2</id>
<content type='text'>
UML's block device driver does not support write barriers,
to support this this patch adds REQ_FLUSH suppport.
Every time the block layer sends a REQ_FLUSH we fsync() now
our backing file to guarantee data consistency.

Reported-and-tested-by: Richard W.M. Jones &lt;rjones@redhat.com&gt;
Signed-off-by: Richard Weinberger &lt;richard@nod.at&gt;
</content>
</entry>
<entry>
<title>um: Implement probe_kernel_read()</title>
<updated>2013-09-07T08:38:34Z</updated>
<author>
<name>Richard Weinberger</name>
</author>
<published>2013-08-17T16:46:00Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f75b1b1bedfb498cc43a992ce4d7ed8df3b1e770'/>
<id>urn:sha1:f75b1b1bedfb498cc43a992ce4d7ed8df3b1e770</id>
<content type='text'>
UML needs it's own probe_kernel_read() to handle kernel
mode faults correctly.
The implementation uses mincore() on the host side to detect
whether a page is owned by the UML kernel process.

This fixes also a possible crash when sysrq-t is used.
Starting with 3.10 sysrq-t calls probe_kernel_read() to
read details from the kernel workers. As kernel worker are
completely async pointers may turn NULL while reading them.

Cc: &lt;stian@nixia.no&gt;
Cc: &lt;tj@kernel.org&gt;
Cc: &lt;stable@vger.kernel.org&gt; # 3.10.x
Signed-off-by: Richard Weinberger &lt;richard@nod.at&gt;
</content>
</entry>
</feed>
