<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/arch/x86/boot, branch linux-2.6.37.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.37.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.37.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2010-12-17T03:11:09Z</updated>
<entry>
<title>x86-32: Make sure we can map all of lowmem if we need to</title>
<updated>2010-12-17T03:11:09Z</updated>
<author>
<name>H. Peter Anvin</name>
</author>
<published>2010-12-17T03:11:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=147dd5610c8d1bacb88a6c1dfdaceaf257946ed0'/>
<id>urn:sha1:147dd5610c8d1bacb88a6c1dfdaceaf257946ed0</id>
<content type='text'>
A relocatable kernel can be anywhere in lowmem -- and in the case of a
kdump kernel, is likely to be fairly high.  Since the early page
tables map everything from address zero up we need to make sure we
allocate enough brk that we can map all of lowmem if we need to.

Reported-by: Stanislaw Gruszka &lt;sgruszka@redhat.com&gt;
Signed-off-by: H. Peter Anvin &lt;hpa@linux.intel.com&gt;
Tested-by: Yinghai Lu &lt;yinghai@kernel.org&gt;
LKML-Reference: &lt;4D0AD3ED.8070607@kernel.org&gt;
</content>
</entry>
<entry>
<title>x86, setup: Use string copy operation to optimze copy in kernel compression</title>
<updated>2010-10-08T04:23:09Z</updated>
<author>
<name>Zhao Yakui</name>
</author>
<published>2010-10-08T01:47:33Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=68f4d5a00adaab33b136fce2c72d5c377b39b0b0'/>
<id>urn:sha1:68f4d5a00adaab33b136fce2c72d5c377b39b0b0</id>
<content type='text'>
The kernel decompression code parses the ELF header and then copies
the segment to the corresponding destination.  Currently it uses slow
byte-copy code.  This patch makes it use the string copy operations
instead.

In the test the copy performance can be improved very significantly after using
the string copy operation mechanism.
        1. The copy time can be reduced from 150ms to 20ms on one Atom machine
	2. The copy time can be reduced about 80% on another machine
		The time is reduced from 7ms to 1.5ms when using 32-bit kernel.
		The time is reduced from 10ms to 2ms when using 64-bit kernel.

Signed-off-by: Zhao Yakui &lt;yakui.zhao@intel.com&gt;
LKML-Reference: &lt;1286502453-7043-1-git-send-email-yakui.zhao@intel.com&gt;
Signed-off-by: H. Peter Anvin &lt;hpa@zytor.com&gt;
</content>
</entry>
<entry>
<title>x86, setup: Fix earlyprintk=serial,0x3f8,115200</title>
<updated>2010-09-21T17:18:33Z</updated>
<author>
<name>Yinghai Lu</name>
</author>
<published>2010-08-30T01:13:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=74b3c444a963ba55aef89b33a1bcaada9a4c206f'/>
<id>urn:sha1:74b3c444a963ba55aef89b33a1bcaada9a4c206f</id>
<content type='text'>
earlyprintk can take and I/O port, so we need to handle this case in
the setup code too, otherwise 0x3f8 will be treated as a baud rate.

Signed-off-by: Yinghai Lu &lt;yinghai@kernel.org&gt;
LKML-Reference: &lt;4C7B05A6.4010801@kernel.org&gt;
Signed-off-by: H. Peter Anvin &lt;hpa@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>x86, setup: Fix earlyprintk=serial,ttyS0,115200</title>
<updated>2010-09-21T17:18:14Z</updated>
<author>
<name>Yinghai Lu</name>
</author>
<published>2010-08-30T01:12:24Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=83d9f65bdae6f6b34d75282c6618d3f50846849a'/>
<id>urn:sha1:83d9f65bdae6f6b34d75282c6618d3f50846849a</id>
<content type='text'>
Torsten reported that there is garbage output,
after commit 8fee13a48e4879fba57725f6d9513df4bfa8e9f3 (x86,
setup: enable early console output from the decompressor)

It turns out we missed the offset for that case.

Reported-by: Torsten Kaiser &lt;just.for.lkml@googlemail.com&gt;
Signed-off-by: Yinghai Lu &lt;yinghai@kernel.org&gt;
LKML-Reference: &lt;4C7B0578.8090807@kernel.org&gt;
Signed-off-by: H. Peter Anvin &lt;hpa@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>x86, setup: move isdigit.h to ctype.h, header files on top.</title>
<updated>2010-08-03T04:07:20Z</updated>
<author>
<name>H. Peter Anvin</name>
</author>
<published>2010-08-03T04:03:46Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6238b47b58480cd9c092600c05338dbe261b71ce'/>
<id>urn:sha1:6238b47b58480cd9c092600c05338dbe261b71ce</id>
<content type='text'>
It is a subset of &lt;ctype.h&gt; functionality, so name it ctype.h.  Also,
reorganize header files so #include statements are clustered near the
top as they should be.

Signed-off-by: H. Peter Anvin &lt;hpa@zytor.com&gt;
LKML-Reference: &lt;4C5752F2.8030206@kernel.org&gt;
</content>
</entry>
<entry>
<title>x86, setup: enable early console output from the decompressor</title>
<updated>2010-08-03T03:32:20Z</updated>
<author>
<name>Yinghai Lu</name>
</author>
<published>2010-08-02T23:21:22Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8fee13a48e4879fba57725f6d9513df4bfa8e9f3'/>
<id>urn:sha1:8fee13a48e4879fba57725f6d9513df4bfa8e9f3</id>
<content type='text'>
This enables the decompressor output to be seen on the serial console.
Most of the code is shared with the regular boot code.

We could add printf to the decompressor if needed, but currently there
is no sufficiently compelling user.

-v2: define BOOT_BOOT_H to avoid include boot.h
-v3: early_serial_base need to be static in misc.c ?
-v4: create seperate string.c printf.c cmdline.c early_serial_console.c
     after hpa's patch that allow global variables in compressed/misc stage
-v5: remove printf.c related

Signed-off-by: Yinghai Lu &lt;yinghai@kernel.org&gt;
Signed-off-by: H. Peter Anvin &lt;hpa@zytor.com&gt;
</content>
</entry>
<entry>
<title>x86, setup: reorganize the early console setup</title>
<updated>2010-08-02T22:51:56Z</updated>
<author>
<name>Yinghai Lu</name>
</author>
<published>2010-08-02T09:17:31Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f4ed2877b16e8146427306aea8819adac5c88374'/>
<id>urn:sha1:f4ed2877b16e8146427306aea8819adac5c88374</id>
<content type='text'>
Separate early_serial_console from tty.c

This allows for reuse of
early_serial_console.c/string.c/printf.c/cmdline.c in boot/compressed/.

-v2: according to hpa, don't include string.c etc
-v3: compressed/misc.c must have early_serial_base as static, so move it back to tty.c
     for setup code

Signed-off-by: Yinghai Lu &lt;yinghai@kernel.org&gt;
LKML-Reference: &lt;4C568D2B.205@kernel.org&gt;
Signed-off-by: H. Peter Anvin &lt;hpa@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>x86, setup: Allow global variables and functions in the decompressor</title>
<updated>2010-08-02T22:34:44Z</updated>
<author>
<name>H. Peter Anvin</name>
</author>
<published>2010-08-02T22:34:44Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=22a57f5896df218356bae6203dfaf04bcfd6c88c'/>
<id>urn:sha1:22a57f5896df218356bae6203dfaf04bcfd6c88c</id>
<content type='text'>
In order for global variables and functions to work in the
decompressor, we need to fix up the GOT in assembly code.

Signed-off-by: H. Peter Anvin &lt;hpa@linux.intel.com&gt;
LKML-Reference: &lt;4C57382E.8050501@zytor.com&gt;
</content>
</entry>
<entry>
<title>x86, setup: Only set early_serial_base after port is initialized</title>
<updated>2010-07-14T19:07:16Z</updated>
<author>
<name>Yinghai Lu</name>
</author>
<published>2010-07-14T18:26:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=70b0d22d581a5deef7b2876b0c3774635b8d846c'/>
<id>urn:sha1:70b0d22d581a5deef7b2876b0c3774635b8d846c</id>
<content type='text'>
putchar is using early_serial_base to check if port is initialized.

So we only assign it after early_serial_init() is called,
in case we need use VGA to debug early serial console.

Also add display for port addr and baud.

-v2: update to current tip

Acked-by: Pekka Enberg &lt;penberg@cs.helsinki.fi&gt;
Signed-off-by: Yinghai Lu &lt;yinghai@kernel.org&gt;
LKML-Reference: &lt;4C3E0171.6050008@kernel.org&gt;
Signed-off-by: H. Peter Anvin &lt;hpa@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>x86, setup: Make the setup code also accept console=uart8250</title>
<updated>2010-07-13T21:08:12Z</updated>
<author>
<name>Yinghai Lu</name>
</author>
<published>2010-07-13T20:35:17Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ce0aa5dd20e44372f9617dd67c984f41fcdbed88'/>
<id>urn:sha1:ce0aa5dd20e44372f9617dd67c984f41fcdbed88</id>
<content type='text'>
Make the boot code also accept the console=uart8250,io,0x2f8,115200n
form of early console.

Also add back simple_guess_base(), otherwise those simple_strtoull(,,0)
are not going to work.

Signed-off-by: Yinghai Lu &lt;yinghai@kernel.org&gt;
LKML-Reference: &lt;4C3CCE05.4090505@kernel.org&gt;
Acked-by: Pekka Enberg &lt;penberg@cs.helsinki.fi&gt;
Signed-off-by: H. Peter Anvin &lt;hpa@linux.intel.com&gt;
</content>
</entry>
</feed>
