<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/fs/ext4/resize.c, branch linux-4.13.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.13.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.13.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2017-08-06T05:18:31Z</updated>
<entry>
<title>ext4: fix overflow caused by missing cast in ext4_resize_fs()</title>
<updated>2017-08-06T05:18:31Z</updated>
<author>
<name>Jerry Lee</name>
</author>
<published>2017-08-06T05:18:31Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=aec51758ce10a9c847a62a48a168f8c804c6e053'/>
<id>urn:sha1:aec51758ce10a9c847a62a48a168f8c804c6e053</id>
<content type='text'>
On a 32-bit platform, the value of n_blcoks_count may be wrong during
the file system is resized to size larger than 2^32 blocks.  This may
caused the superblock being corrupted with zero blocks count.

Fixes: 1c6bd7173d66
Signed-off-by: Jerry Lee &lt;jerrylee@qnap.com&gt;
Signed-off-by: Theodore Ts'o &lt;tytso@mit.edu&gt;
Cc: stable@vger.kernel.org # 3.7+
</content>
</entry>
<entry>
<title>ext4: rename s_resize_flags to s_ext4_flags</title>
<updated>2017-02-05T06:27:48Z</updated>
<author>
<name>Theodore Ts'o</name>
</author>
<published>2017-02-05T06:27:48Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9549a168bd500db1a76914e50775f7cd1690acef'/>
<id>urn:sha1:9549a168bd500db1a76914e50775f7cd1690acef</id>
<content type='text'>
We are currently using one bit in s_resize_flags; rename it in order
to allow more of the bits in that unsigned long for other purposes.

Signed-off-by: Theodore Ts'o &lt;tytso@mit.edu&gt;
</content>
</entry>
<entry>
<title>ext4: remove trailing \n from ext4_warning/ext4_error calls</title>
<updated>2016-04-27T05:11:21Z</updated>
<author>
<name>Jakub Wilk</name>
</author>
<published>2016-04-27T05:11:21Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8d2ae1cbe8a984d7a755755fb53955de2f60a2f9'/>
<id>urn:sha1:8d2ae1cbe8a984d7a755755fb53955de2f60a2f9</id>
<content type='text'>
Messages passed to ext4_warning() or ext4_error() don't need trailing
newlines, because these function add the newlines themselves.

Signed-off-by: Jakub Wilk &lt;jwilk@jwilk.net&gt;
</content>
</entry>
<entry>
<title>ext4: fix potential integer overflow</title>
<updated>2016-02-12T06:15:59Z</updated>
<author>
<name>Insu Yun</name>
</author>
<published>2016-02-12T06:15:59Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=46901760b46064964b41015d00c140c83aa05bcf'/>
<id>urn:sha1:46901760b46064964b41015d00c140c83aa05bcf</id>
<content type='text'>
Since sizeof(ext_new_group_data) &gt; sizeof(ext_new_flex_group_data),
integer overflow could be happened.
Therefore, need to fix integer overflow sanitization.

Cc: stable@vger.kernel.org
Signed-off-by: Insu Yun &lt;wuninsu@gmail.com&gt;
Signed-off-by: Theodore Ts'o &lt;tytso@mit.edu&gt;
</content>
</entry>
<entry>
<title>[PATCH] fix calculation of meta_bg descriptor backups</title>
<updated>2015-10-18T04:36:29Z</updated>
<author>
<name>Andy Leiserson</name>
</author>
<published>2015-10-18T04:36:29Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=904dad4742d211b7a8910e92695c0fa957483836'/>
<id>urn:sha1:904dad4742d211b7a8910e92695c0fa957483836</id>
<content type='text'>
"group" is the group where the backup will be placed, and is
initialized to zero in the declaration. This meant that backups for
meta_bg descriptors were erroneously written to the backup block group
descriptors in groups 1 and (desc_per_block-1).

Reproduction information:
  mke2fs -Fq -t ext4 -b 1024 -O ^resize_inode /tmp/foo.img 16G
  truncate -s 24G /tmp/foo.img
  losetup /dev/loop0 /tmp/foo.img
  mount /dev/loop0 /mnt
  resize2fs /dev/loop0
  umount /dev/loop0
  dd if=/dev/zero of=/dev/loop0 bs=1024 count=2
  e2fsck -fy /dev/loop0
  losetup -d /dev/loop0

Signed-off-by: Andy Leiserson &lt;andy@leiserson.org&gt;
Signed-off-by: Theodore Ts'o &lt;tytso@mit.edu&gt;
Cc: stable@vger.kernel.org
</content>
</entry>
<entry>
<title>ext4: clean up feature test macros with predicate functions</title>
<updated>2015-10-17T20:18:43Z</updated>
<author>
<name>Darrick J. Wong</name>
</author>
<published>2015-10-17T20:18:43Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e2b911c53584a92266943f3b7f2cdbc19c1a4e80'/>
<id>urn:sha1:e2b911c53584a92266943f3b7f2cdbc19c1a4e80</id>
<content type='text'>
Create separate predicate functions to test/set/clear feature flags,
thereby replacing the wordy old macros.  Furthermore, clean out the
places where we open-coded feature tests.

Signed-off-by: Darrick J. Wong &lt;darrick.wong@oracle.com&gt;
</content>
</entry>
<entry>
<title>ext4: fix growing of tiny filesystems</title>
<updated>2015-05-03T03:58:32Z</updated>
<author>
<name>Jan Kara</name>
</author>
<published>2015-05-03T03:58:32Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2c869b262a10ca99cb866d04087d75311587a30c'/>
<id>urn:sha1:2c869b262a10ca99cb866d04087d75311587a30c</id>
<content type='text'>
The estimate of necessary transaction credits in ext4_flex_group_add()
is too pessimistic. It reserves credit for sb, resize inode, and resize
inode dindirect block for each group added in a flex group although they
are always the same block and thus it is enough to account them only
once. Also the number of modified GDT block is overestimated since we
fit EXT4_DESC_PER_BLOCK(sb) descriptors in one block.

Make the estimation more precise. That reduces number of requested
credits enough that we can grow 20 MB filesystem (which has 1 MB
journal, 79 reserved GDT blocks, and flex group size 16 by default).

Signed-off-by: Jan Kara &lt;jack@suse.cz&gt;
Signed-off-by: Theodore Ts'o &lt;tytso@mit.edu&gt;
Reviewed-by: Eric Sandeen &lt;sandeen@redhat.com&gt;
</content>
</entry>
<entry>
<title>ext4: prevent online resize with backup superblock</title>
<updated>2014-12-27T04:58:21Z</updated>
<author>
<name>Theodore Ts'o</name>
</author>
<published>2014-12-27T04:58:21Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=011fa99404bea3f5d897c4983f6bd51170e3b18f'/>
<id>urn:sha1:011fa99404bea3f5d897c4983f6bd51170e3b18f</id>
<content type='text'>
Prevent BUG or corrupted file systems after the following:

mkfs.ext4 /dev/vdc 100M
mount -t ext4 -o sb=40961 /dev/vdc /vdc
resize2fs /dev/vdc

We previously prevented online resizing using the old resize ioctl.
Move the code to ext4_resize_begin(), so the check applies for all of
the resize ioctl's.

Reported-by: Maxim Malkov &lt;malkov@ispras.ru&gt;
Signed-off-by: Theodore Ts'o &lt;tytso@mit.edu&gt;
</content>
</entry>
<entry>
<title>ext4: kill ext4_kvfree()</title>
<updated>2014-11-20T17:19:11Z</updated>
<author>
<name>Al Viro</name>
</author>
<published>2014-11-20T17:19:11Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b93b41d4c7338dda9304eaac9d3b40da43198806'/>
<id>urn:sha1:b93b41d4c7338dda9304eaac9d3b40da43198806</id>
<content type='text'>
Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: Theodore Ts'o &lt;tytso@mit.edu&gt;
</content>
</entry>
<entry>
<title>ext4: fix overflow when updating superblock backups after resize</title>
<updated>2014-10-30T14:52:57Z</updated>
<author>
<name>Jan Kara</name>
</author>
<published>2014-10-30T14:52:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9378c6768e4fca48971e7b6a9075bc006eda981d'/>
<id>urn:sha1:9378c6768e4fca48971e7b6a9075bc006eda981d</id>
<content type='text'>
When there are no meta block groups update_backups() will compute the
backup block in 32-bit arithmetics thus possibly overflowing the block
number and corrupting the filesystem. OTOH filesystems without meta
block groups larger than 16 TB should be rare. Fix the problem by doing
the counting in 64-bit arithmetics.

Coverity-id: 741252
CC: stable@vger.kernel.org
Signed-off-by: Jan Kara &lt;jack@suse.cz&gt;
Signed-off-by: Theodore Ts'o &lt;tytso@mit.edu&gt;
Reviewed-by: Lukas Czerner &lt;lczerner@redhat.com&gt;
</content>
</entry>
</feed>
