<feed xmlns='http://www.w3.org/2005/Atom'>
<title>buildroot-novena/fs/ext2, branch master</title>
<subtitle>build system for the novena open hardware laptop board</subtitle>
<id>https://git.bnewbold.net/buildroot-novena/atom?h=master</id>
<link rel='self' href='https://git.bnewbold.net/buildroot-novena/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/buildroot-novena/'/>
<updated>2013-06-07T08:54:54+00:00</updated>
<entry>
<title>Normalize separator size to 80</title>
<updated>2013-06-07T08:54:54+00:00</updated>
<author>
<name>Jerzy Grzegorek</name>
<email>jerzy.grzegorek@trzebnica.net</email>
</author>
<published>2013-06-06T21:54:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/buildroot-novena/commit/?id=086f333f39cdbc0762917272e4c9bb87344fb51a'/>
<id>urn:sha1:086f333f39cdbc0762917272e4c9bb87344fb51a</id>
<content type='text'>
Signed-off-by: Jerzy Grzegorek &lt;jerzy.grzegorek@trzebnica.net&gt;
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>package/genext2fs: add host variant</title>
<updated>2013-06-03T21:06:30+00:00</updated>
<author>
<name>Yann E. MORIN</name>
<email>yann.morin.1998@free.fr</email>
</author>
<published>2013-06-03T10:15:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/buildroot-novena/commit/?id=d8286a993ac1738ef08a6b9aca03e629e5c9bb89'/>
<id>urn:sha1:d8286a993ac1738ef08a6b9aca03e629e5c9bb89</id>
<content type='text'>
genext2fs is built only if the user selected an ext2 root filesystem.

However, some use-cases can't live with the full target/ dir on the
root filesystem, and requires separate partitions (eg. for /usr).
In this case, the user would not select an ext2 root fs in the
Buildrooot menu, and would only generate a tarball of the rootfs.
This tarball would then be used from a post-image script to build
the actual required FSes.

But then, genext2fs is not built, since the ext2 root FS was not
selected.

As for the other filesystem generators, provide a host variant of
genext2fs (genext2fs is already host-package aware, so only needs
adding a Kconfig entry).

Signed-off-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>fs/ext2: further fix to the UUID</title>
<updated>2013-05-28T22:18:37+00:00</updated>
<author>
<name>Yann E. MORIN</name>
<email>yann.morin.1998@free.fr</email>
</author>
<published>2013-05-28T12:11:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/buildroot-novena/commit/?id=60474dcec67922782a244ca3fe30fe9c35a5c963'/>
<id>urn:sha1:60474dcec67922782a244ca3fe30fe9c35a5c963</id>
<content type='text'>
Turned out that setting a nil-UUID is no better than clearing it.

What currently happens is as follows:
  - first, genext2fs does not generate a UUID
  - then we tune2fs to upgrade the filesystem
  - then we run fsck, which generates a random UUID
  - then we re-run tune2fs to set a nil-UUID

So, on the target, if the file system is improperly unmounted (eg.
with a power failure), on next boot, fsck may be run, and a new
random UUID will be generated.

*However*, fsck improperly updates the filesystem when it adds the
UUID, and there are a few group descriptor checksum errors.

Those errors will go undetected until the next fsck, which will then
block for user input (bad on embedded systems, bad).

Fix that by systematically generating a random UUID _before_ we call
to fsck.

A random UUID is not so bad, after all, since there are already so
many sources of unpredictability in the filesystem: files date and
ordering, files content (date, paths...) which renders a fixed UUID
unneeded.

And it is still possible to set the UUID in a post-image script if
needed, anyway.

Signed-off-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
Cc: Peter Korsgaard &lt;jacmet@uclibc.org&gt;
Cc: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>fs/ext2: explicitly set a NULL UUID</title>
<updated>2013-05-28T10:38:30+00:00</updated>
<author>
<name>Yann E. MORIN</name>
<email>yann.morin.1998@free.fr</email>
</author>
<published>2013-05-28T00:33:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/buildroot-novena/commit/?id=a9825c06b8fc6cb2e18f28dc2aca4a0281b0458f'/>
<id>urn:sha1:a9825c06b8fc6cb2e18f28dc2aca4a0281b0458f</id>
<content type='text'>
"tune2fs -U clear" creates an invalid filesystem, that fsck.ext2
whines about later:

    $ make rootfs-ext2
    [--SNIP--]

    $ ./host/usr/sbin/fsck.ext4 images/rootfs.ext2
    e2fsck 1.42.7 (21-Jan-2013)
    Filesystem did not have a UUID; generating one.
    images/rootfs.ext2: clean, 4616/5120 files, 53171/131072 blocks

    $ ./host/usr/sbin/fsck.ext4 -f images/rootfs.ext2
    e2fsck 1.42.7 (21-Jan-2013)
    One or more block group descriptor checksums are invalid.  Fix&lt;y&gt;? yes
    Group descriptor 0 checksum is 0x4131, should be 0x8bdb.  FIXED.
    [--SNIP--]

So we set an explicitly NULL UUID instead.

Signed-off-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>fs/common: add support for LZO and XZ compression methods</title>
<updated>2013-04-24T20:18:13+00:00</updated>
<author>
<name>Gustavo Zacarias</name>
<email>gustavo@zacarias.com.ar</email>
</author>
<published>2013-01-22T01:03:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/buildroot-novena/commit/?id=5419651bfa38355b2b2015868811197ef18577d0'/>
<id>urn:sha1:5419651bfa38355b2b2015868811197ef18577d0</id>
<content type='text'>
Add support for LZO and XZ compression methods to cpio, ext2, tar and
ubifs filesystem targets.

Signed-off-by: Gustavo Zacarias &lt;gustavo@zacarias.com.ar&gt;
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>fs/ext2: bump journal overhead to 1300 blocks</title>
<updated>2013-04-12T12:57:36+00:00</updated>
<author>
<name>Peter Korsgaard</name>
<email>jacmet@sunsite.dk</email>
</author>
<published>2013-04-12T12:57:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/buildroot-novena/commit/?id=0fab0a4afdff2f27fce49e7b38179e781e7b64ed'/>
<id>urn:sha1:0fab0a4afdff2f27fce49e7b38179e781e7b64ed</id>
<content type='text'>
A quick test with a ~3.5MB ext4 filesystem shows that 1081 blocks isn't
enough:

tune2fs 1.42.7 (21-Jan-2013)

Please run e2fsck on the filesystem.

Creating journal inode:
Journal size too big for filesystem.

So bump it a bit. Overestimating the journal size is probably not really
a big deal for the kind of systems using ext3/4 anyway.

Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>fs/ext2: remove count- and time-based fsck</title>
<updated>2013-04-12T12:45:47+00:00</updated>
<author>
<name>Yann E. MORIN</name>
<email>yann.morin.1998@free.fr</email>
</author>
<published>2013-04-11T12:17:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/buildroot-novena/commit/?id=a2a266e0cfb94fe623879e9ac43a3894acf05b62'/>
<id>urn:sha1:a2a266e0cfb94fe623879e9ac43a3894acf05b62</id>
<content type='text'>
Set the count- and time-based checks intervals to 0, thus effectively
disabling automatic checks at boot (after a suggestion by Arnout).

Signed-off-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
Cc: Arnout Vandecappelle &lt;arnout@mind.be&gt;
Cc: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
Acked-by: Arnout Vandecappelle (Essensium/Mind) &lt;arnout@mind.be&gt;
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>fs/ext2: add support for ext2 rev0 and rev1</title>
<updated>2013-04-12T12:43:22+00:00</updated>
<author>
<name>Yann E. MORIN</name>
<email>yann.morin.1998@free.fr</email>
</author>
<published>2013-04-11T12:17:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/buildroot-novena/commit/?id=5fd27fc84998c6683728353f57dc7c6000e5b4c3'/>
<id>urn:sha1:5fd27fc84998c6683728353f57dc7c6000e5b4c3</id>
<content type='text'>
Some bootloaders have a buggy ext2 support, and require ext2 rev1
instead of the traditional ext2 rev0 that genext2fs produces.

tune2fs accepts only one '-O list' at a time, so we need to construct
a list of -O options.

Signed-off-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
Cc: Arnout Vandecappelle &lt;arnout@mind.be&gt;
Acked-by: Arnout Vandecappelle (Essensium/Mind) &lt;arnout@mind.be&gt;
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>fs/ext2: add a symlink 'rootfs.ext#' -&gt; 'rootfs.ext2'</title>
<updated>2013-04-12T12:42:31+00:00</updated>
<author>
<name>Yann E. MORIN</name>
<email>yann.morin.1998@free.fr</email>
</author>
<published>2013-04-11T12:17:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/buildroot-novena/commit/?id=aaefab09c7573f81a83c164ce2daca35b6a420e6'/>
<id>urn:sha1:aaefab09c7573f81a83c164ce2daca35b6a420e6</id>
<content type='text'>
Signed-off-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
Cc: Arnout Vandecappelle &lt;arnout@mind.be&gt;
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
<entry>
<title>fs/ext2: add ability to build ext3/4 too</title>
<updated>2013-04-12T12:39:24+00:00</updated>
<author>
<name>Yann E. MORIN</name>
<email>yann.morin.1998@free.fr</email>
</author>
<published>2013-04-11T12:17:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.bnewbold.net/buildroot-novena/commit/?id=69036c20f14de6d919bc423af32a51a84b023893'/>
<id>urn:sha1:69036c20f14de6d919bc423af32a51a84b023893</id>
<content type='text'>
Use the host-e2fsprogs to tune2fs the generated rootfs.ext2 image,
and upgrade it to either one of ext2, ext3 or ext4.

Since calling tune2fs may require running e2fsck (tune2fs will warn
to do so when certain FS options are changed), we systematically call
e2fsck. This makes the code path simpler, and as a side-effect checks
that genext2fs did not generate garbage.

In turn, e2fsck will unconditionally add a UUID to the filesystem,
which is bad for reproducibility, so we call tune2fs again to remove
the UUID. This does not require checking the filesystem.

To ensure compatibility of Buildroot's .config, leave ext2 as the
default. Boards' .config can override this at will.

Signed-off-by: "Yann E. MORIN" &lt;yann.morin.1998@free.fr&gt;
Cc: Arnout Vandecappelle &lt;arnout@mind.be&gt;
Cc: Peter Korsgaard &lt;jacmet@uclibc.org&gt;
Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
</content>
</entry>
</feed>
