<feed xmlns='http://www.w3.org/2005/Atom'>
<title>user/sven/linux.git/usr, branch v4.10.3</title>
<subtitle>Linux Kernel
</subtitle>
<id>https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v4.10.3</id>
<link rel='self' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v4.10.3'/>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/'/>
<updated>2017-01-05T17:40:16Z</updated>
<entry>
<title>kbuild: initramfs cleanup, set target from Kconfig</title>
<updated>2017-01-05T17:40:16Z</updated>
<author>
<name>Nicholas Piggin</name>
<email>npiggin@gmail.com</email>
</author>
<published>2017-01-05T10:29:36Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=9e3596b0c6539e28546ff7c72a06576627068353'/>
<id>urn:sha1:9e3596b0c6539e28546ff7c72a06576627068353</id>
<content type='text'>
Rather than keep a list of all possible compression types in the
Makefile, set the target explicitly from Kconfig.

Reviewed-by: Francisco Blas Izquierdo Riera (klondike) &lt;klondike@klondike.es&gt;
Signed-off-by: Nicholas Piggin &lt;npiggin@gmail.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>kbuild: initramfs fix dependency checking for compressed target</title>
<updated>2017-01-05T17:40:16Z</updated>
<author>
<name>Nicholas Piggin</name>
<email>npiggin@gmail.com</email>
</author>
<published>2017-01-05T10:29:35Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=ae30ab4cd711a147cafaf5674c333c5a84fe53fb'/>
<id>urn:sha1:ae30ab4cd711a147cafaf5674c333c5a84fe53fb</id>
<content type='text'>
When using initramfs compression, the data file compression suffix
gets quotes pulled in from Kconfig, e.g., initramfs_data.cpio".gz"
which make does not match a target and causes rebuild.

Fix this by filtering out quotes from the Kconfig string.

Fixes: 35e669e1a254 ("initramfs: select builtin initram compression algorithm on KConfig instead of Makefile")
Reviewed-by: Francisco Blas Izquierdo Riera (klondike) &lt;klondike@klondike.es&gt;
Signed-off-by: Nicholas Piggin &lt;npiggin@gmail.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>initramfs: allow again choice of the embedded initram compression algorithm</title>
<updated>2016-12-15T00:04:08Z</updated>
<author>
<name>Francisco Blas Izquierdo Riera (klondike)</name>
<email>klondike@klondike.es</email>
</author>
<published>2016-12-14T23:06:04Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=db2aa7fd15e857891cefbada8348c8d938c7a2bc'/>
<id>urn:sha1:db2aa7fd15e857891cefbada8348c8d938c7a2bc</id>
<content type='text'>
Choosing the appropriate compression option when using an embedded
initramfs can result in significant size differences in the resulting
data.

This is caused by avoiding double compression of the initramfs contents.
For example on my tests, choosing CONFIG_INITRAMFS_COMPRESSION_NONE when
compressing the kernel using XZ) results in up to 500KiB differences
(9MiB to 8.5MiB) in the kernel size as the dictionary will not get
polluted with uncomprensible data and may reuse kernel data too.

Despite embedding an uncompressed initramfs, a user may want to allow
for a compressed extra initramfs to be passed using the rd system, for
example to boot a recovery system.  9ba4bcb645898d ("initramfs: read
CONFIG_RD_ variables for initramfs compression") broke that behavior by
making the choice based on CONFIG_RD_* instead of adding
CONFIG_INITRAMFS_COMPRESSION_LZ4.  Saddly, CONFIG_RD_* is also used to
choose the supported RD compression algorithms by the kernel and a user
may want to support more than one.

This patch also reverts commit 3e4e0f0a875 ("initramfs: remove
"compression mode" choice") restoring back the "compression mode" choice
and includes the CONFIG_INITRAMFS_COMPRESSION_LZ4 option which was never
added.

As a result the following options are added or readed affecting the embedded
initramfs compression:
  INITRAMFS_COMPRESSION_NONE Do no compression
  INITRAMFS_COMPRESSION_GZIP Compress using gzip
  INITRAMFS_COMPRESSION_BZIP2 Compress using bzip2
  INITRAMFS_COMPRESSION_LZMA Compress using lzma
  INITRAMFS_COMPRESSION_XZ Compress using xz
  INITRAMFS_COMPRESSION_LZO Compress using lzo
  INITRAMFS_COMPRESSION_LZ4 Compress using lz4

These depend on the corresponding CONFIG_RD_* option being set (except
NONE which has no dependencies).

This patch depends on the previous one (the previous version didn't) to
simplify the way in which the algorithm is chosen and keep backwards
compatibility with the behaviour introduced by 9ba4bcb645898
("initramfs: read CONFIG_RD_ variables for initramfs compression").

Link: http://lkml.kernel.org/r/57EAD77B.7090607@klondike.es
Signed-off-by: Francisco Blas Izquierdo Riera (klondike) &lt;klondike@klondike.es&gt;
Cc: P J P &lt;ppandit@redhat.com&gt;
Cc: Paul Bolle &lt;pebolle@tiscali.nl&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>initramfs: select builtin initram compression algorithm on KConfig instead of Makefile</title>
<updated>2016-12-15T00:04:08Z</updated>
<author>
<name>Francisco Blas Izquierdo Riera (klondike)</name>
<email>klondike@klondike.es</email>
</author>
<published>2016-12-14T23:06:01Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=35e669e1a254e8b60d4a8983205b383666cc01ca'/>
<id>urn:sha1:35e669e1a254e8b60d4a8983205b383666cc01ca</id>
<content type='text'>
Move the current builtin initram compression algorithm selection from
the Makefile into the INITRAMFS_COMPRESSION variable.  This makes
deciding algorithm precedence easier and would allow for overrides if
new algorithms want to be tested.

Link: http://lkml.kernel.org/r/57EAD769.1090401@klondike.es
Signed-off-by: Francisco Blas Izquierdo Riera (klondike) &lt;klondike@klondike.es&gt;
Cc: P J P &lt;ppandit@redhat.com&gt;
Cc: Paul Bolle &lt;pebolle@tiscali.nl&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>usr/Kconfig: make initrd compression algorithm selection not expert</title>
<updated>2014-12-13T20:42:52Z</updated>
<author>
<name>Andi Kleen</name>
<email>ak@linux.intel.com</email>
</author>
<published>2014-12-13T00:58:03Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=ec72c666fb345ea5f21359b7bc063710ce558e39'/>
<id>urn:sha1:ec72c666fb345ea5f21359b7bc063710ce558e39</id>
<content type='text'>
The kernel has support for (nearly) every compression algorithm known to
man, each to handle some particular microscopic niche.

Unfortunately all of these always get compiled in if you want to support
INITRDs, and can be only disabled when CONFIG_EXPERT is set.

I don't see why I need to set EXPERT just to properly configure the initrd
compression algorithms, and not always include every possible algorithm

Usually the initrd is just compressed with gzip anyways, at least that's
true on all distributions I use.

Remove the dependencies for initrd compression on CONFIG_EXPERT.

Make the various options just default y, which should be good enough to
not break any previous configuration.

Signed-off-by: Andi Kleen &lt;ak@linux.intel.com&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>initramfs: remove "compression mode" choice</title>
<updated>2014-06-06T23:08:14Z</updated>
<author>
<name>Paul Bolle</name>
<email>pebolle@tiscali.nl</email>
</author>
<published>2014-06-06T21:37:35Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=3e4e0f0a8756dade3023d1f47d50fbced7749788'/>
<id>urn:sha1:3e4e0f0a8756dade3023d1f47d50fbced7749788</id>
<content type='text'>
Commit 9ba4bcb64589 ("initramfs: read CONFIG_RD_ variables for initramfs
compression") removed the users of the various INITRAMFS_COMPRESSION_*
Kconfig symbols.  So since v3.13 the entire "Built-in initramfs
compression mode" choice is a set of knobs connected to nothing.  The
entire choice can safely be removed.

Signed-off-by: Paul Bolle &lt;pebolle@tiscali.nl&gt;
Cc: P J P &lt;ppandit@redhat.com&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>initramfs: read CONFIG_RD_ variables for initramfs compression</title>
<updated>2013-11-13T03:09:26Z</updated>
<author>
<name>P J P</name>
<email>ppandit@redhat.com</email>
</author>
<published>2013-11-12T23:10:22Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=9ba4bcb645898d562498ea66a0df958ef0e7a68c'/>
<id>urn:sha1:9ba4bcb645898d562498ea66a0df958ef0e7a68c</id>
<content type='text'>
When expert configuration option(CONFIG_EXPERT) is enabled, menuconfig
offers a choice of compression algorithm to compress initial ramfs image;
This choice is stored into CONFIG_RD_* variables.  But usr/Makefile uses
earlier INITRAMFS_COMPRESSION_* macros to build initial ramfs file.  Since
none of them is defined, resulting 'initramfs_data.cpio' file remains
un-compressed.

This patch updates the Makefile to use CONFIG_RD_* variables and adds
support for LZ4 compression algorithm.  Also updates the
'gen_initramfs_list.sh' script to check whether a selected compression
command is accessible or not.  And fall-back to default gzip(1)
compression when it is not.

Signed-off-by: P J P &lt;prasad@redhat.com&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>gen_init_cpio: avoid NULL pointer dereference and rework env expanding</title>
<updated>2013-11-13T03:09:12Z</updated>
<author>
<name>Michal Nazarewicz</name>
<email>mina86@mina86.com</email>
</author>
<published>2013-11-12T23:08:41Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=c725ee54c30b34427cb8fa68d1fe8804aca6d400'/>
<id>urn:sha1:c725ee54c30b34427cb8fa68d1fe8804aca6d400</id>
<content type='text'>
getenv() may return NULL if given environment variable does not exist
which leads to NULL dereference when calling strncat.

Besides that, the environment variable name was copied to a temporary
env_var buffer, but this copying can be avoided by simply using the input
string.

Lastly, the whole loop can be greatly simplified by using the snprintf
function instead of the playing with strncat.

 By the way, the current implementation allows a recursive variable
 expansion, as in:

   $ echo 'out ${A} out ' | A='a ${B} a' B=b /tmp/a
   out a b a out

 I'm assuming this is just a side effect and not a conscious decision
 (especially as this may lead to infinite loop), but I didn't want to
 change this behaviour without consulting.

 If the current behaviour is deamed incorrect, I'll be happy to send
 a patch without recursive processing.

Signed-off-by: Michal Nazarewicz &lt;mina86@mina86.com&gt;
Cc: Kees Cook &lt;keescook@chromium.org&gt;
Cc: Jiri Kosina &lt;jkosina@suse.cz&gt;
Cc: Jesper Juhl &lt;jj@codesealer.com&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>lib: add support for LZ4-compressed kernel</title>
<updated>2013-07-09T17:33:30Z</updated>
<author>
<name>Kyungsik Lee</name>
<email>kyungsik.lee@lge.com</email>
</author>
<published>2013-07-08T23:01:46Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=e76e1fdfa8f8dc1ea6699923cf5d92b5bee9c936'/>
<id>urn:sha1:e76e1fdfa8f8dc1ea6699923cf5d92b5bee9c936</id>
<content type='text'>
Add support for extracting LZ4-compressed kernel images, as well as
LZ4-compressed ramdisk images in the kernel boot process.

Signed-off-by: Kyungsik Lee &lt;kyungsik.lee@lge.com&gt;
Cc: "H. Peter Anvin" &lt;hpa@zytor.com&gt;
Cc: Ingo Molnar &lt;mingo@elte.hu&gt;
Cc: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Cc: Russell King &lt;rmk@arm.linux.org.uk&gt;
Cc: Borislav Petkov &lt;bp@alien8.de&gt;
Cc: Florian Fainelli &lt;florian@openwrt.org&gt;
Cc: Yann Collet &lt;yann.collet.73@gmail.com&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>gen_init_cpio: remove redundant empty line</title>
<updated>2012-11-19T13:09:36Z</updated>
<author>
<name>Jesper Juhl</name>
<email>jj@chaosbits.net</email>
</author>
<published>2008-09-26T15:50:57Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=59dbaf0415136de6f1dfc38dd640dd6432739bfc'/>
<id>urn:sha1:59dbaf0415136de6f1dfc38dd640dd6432739bfc</id>
<content type='text'>
Just a completely trivial patch to remove a completely redundant blank
line from usr/gen_init_cpio.c

Signed-off-by: Jesper Juhl &lt;jj@codesealer.com&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
</content>
</entry>
</feed>
