<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/fs/ext4, branch v2.6.19</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/fs/ext4?h=v2.6.19</id>
<link rel='self' href='https://git.amat.us/linux/atom/fs/ext4?h=v2.6.19'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2006-10-28T18:30:51Z</updated>
<entry>
<title>[PATCH] ext4: fix printk format warnings</title>
<updated>2006-10-28T18:30:51Z</updated>
<author>
<name>Randy Dunlap</name>
<email>randy.dunlap@oracle.com</email>
</author>
<published>2006-10-28T17:38:26Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=1939e49a0cb9d73785857bf312f4f65661b4b513'/>
<id>urn:sha1:1939e49a0cb9d73785857bf312f4f65661b4b513</id>
<content type='text'>
fs/ext4/resize.c:72: warning: long long unsigned int format, __u64 arg (arg 4)
fs/ext4/resize.c:76: warning: long long unsigned int format, __u64 arg (arg 4)
fs/ext4/resize.c:81: warning: long long unsigned int format, __u64 arg (arg 4)
fs/ext4/resize.c:85: warning: long long unsigned int format, __u64 arg (arg 4)
fs/ext4/resize.c:89: warning: long long unsigned int format, __u64 arg (arg 4)
fs/ext4/resize.c:89: warning: long long unsigned int format, __u64 arg (arg 5)
fs/ext4/resize.c:93: warning: long long unsigned int format, __u64 arg (arg 4)
fs/ext4/resize.c:93: warning: long long unsigned int format, __u64 arg (arg 5)
fs/ext4/resize.c:98: warning: long long unsigned int format, __u64 arg (arg 4)
fs/ext4/resize.c:103: warning: long long unsigned int format, __u64 arg (arg 4)
fs/ext4/resize.c:109: warning: long long unsigned int format, __u64 arg (arg 4)

Signed-off-by: Randy Dunlap &lt;randy.dunlap@oracle.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] ext4 whitespace cleanups</title>
<updated>2006-10-11T18:14:19Z</updated>
<author>
<name>Andrew Morton</name>
<email>akpm@osdl.org</email>
</author>
<published>2006-10-11T08:21:24Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=63f5793351d821749979e36889f9c089c6028c83'/>
<id>urn:sha1:63f5793351d821749979e36889f9c089c6028c83</id>
<content type='text'>
Someone's tab key is emitting spaces.  Attempt to repair some of the damage.

Cc: &lt;linux-ext4@vger.kernel.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] ext4: errors behaviour fix</title>
<updated>2006-10-11T18:14:19Z</updated>
<author>
<name>Dmitry Mishin</name>
<email>dim@openvz.org</email>
</author>
<published>2006-10-11T08:21:21Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=ceea16bf85fb46035dda1db263ca29b0e07e22ba'/>
<id>urn:sha1:ceea16bf85fb46035dda1db263ca29b0e07e22ba</id>
<content type='text'>
Current error behaviour for ext2 and ext3 filesystems does not fully
correspond to the documentation and should be fixed.

According to man 8 mount, ext2 and ext3 file systems allow to set one of 3
different on-errors behaviours:

  ---- start of quote man 8 mount ----

  errors=continue / errors=remount-ro / errors=panic

    Define the behaviour when an error is encountered.  (Either ignore
    errors and just mark the file system erroneous and continue, or remount
    the file system read-only, or panic and halt the system.) The default is
    set in the filesystem superblock, and can be changed using tune2fs(8).

  ---- end of quote ----

However EXT3_ERRORS_CONTINUE is not read from the superblock, and thus
ERRORS_CONT is not saved on the sbi-&gt;s_mount_opt.  It leads to the incorrect
handle of errors on ext3.

Then we've checked corresponding code in ext2 and discovered that it is buggy
as well:

- EXT2_ERRORS_CONTINUE is not read from the superblock (the same);

- parse_option() does not clean the alternative values and thus something
  like (ERRORS_CONT|ERRORS_RO) can be set;

- if options are omitted, parse_option() does not set any of these options.

Therefore it is possible to set any combination of these options on the ext2:

- none of them may be set: EXT2_ERRORS_CONTINUE on superblock / empty mount
  options;

- any of them may be set using mount options;

- 2 any options may be set: by using EXT2_ERRORS_RO/EXT2_ERRORS_PANIC on the
  superblock and other value in mount options;

- and finally all three options may be set by adding third option in remount.

Currently ext2 uses these values only in ext2_error() and it is not leading to
any noticeable troubles.  However somebody may be discouraged when he will try
to workaround EXT2_ERRORS_PANIC on the superblock by using errors=continue in
mount options.

This patch:

EXT4_ERRORS_CONTINUE should be taken from the superblock as default value for
error behaviour.

Signed-off-by:	Dmitry Mishin &lt;dim@openvz.org&gt;
Acked-by: Vasily Averin &lt;vvs@sw.ru&gt;
Acked-by: Kirill Korotaev &lt;dev@openvz.org&gt;
Cc: &lt;linux-ext4@vger.kernel.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] ext4: rename logic_sb_block</title>
<updated>2006-10-11T18:14:18Z</updated>
<author>
<name>Andrew Morton</name>
<email>akpm@osdl.org</email>
</author>
<published>2006-10-11T08:21:20Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=70bbb3e0a07c1ff2dd383761b12f865b6002a7a0'/>
<id>urn:sha1:70bbb3e0a07c1ff2dd383761b12f865b6002a7a0</id>
<content type='text'>
I assume this means "logical sb block".  So call it that.

I still don't understand the name though.  A block is a block.  What's
different about this one?

Cc: &lt;linux-ext4@vger.kernel.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] ext4 64 bit divide fix</title>
<updated>2006-10-11T18:14:18Z</updated>
<author>
<name>Andrew Morton</name>
<email>akpm@osdl.org</email>
</author>
<published>2006-10-11T08:21:19Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=f4e5bc244f23ee024a4dfa034b591b219b2bfb8f'/>
<id>urn:sha1:f4e5bc244f23ee024a4dfa034b591b219b2bfb8f</id>
<content type='text'>
With CONFIG_LBD=n, sector_div() expands to a plain old divide.  But ext4 is
_not_ passing in a sector_t as the first argument, so...

fs/built-in.o: In function `ext4_get_group_no_and_offset':
fs/ext4/balloc.c:39: undefined reference to `__umoddi3'
fs/ext4/balloc.c:41: undefined reference to `__udivdi3'
fs/built-in.o: In function `find_group_orlov':
fs/ext4/ialloc.c:278: undefined reference to `__udivdi3'
fs/built-in.o: In function `ext4_fill_super':
fs/ext4/super.c:1488: undefined reference to `__udivdi3'
fs/ext4/super.c:1488: undefined reference to `__umoddi3'
fs/ext4/super.c:1594: undefined reference to `__udivdi3'
fs/ext4/super.c:1601: undefined reference to `__umoddi3'

Fix that up by calling do_div() directly.

Also cast the arg to u64.  do_div() is only defined on u64, and ext4_fsblk_t
is supposed to be opaque.

Note especially the changes to find_group_orlov().  It was attempting to do

	do_div(int, unsigned long long);

which is royally screwed up.  Switched it to plain old divide.

Cc: &lt;linux-ext4@vger.kernel.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] ext4 uninline ext4_get_group_no_and_offset()</title>
<updated>2006-10-11T18:14:18Z</updated>
<author>
<name>Andrew Morton</name>
<email>akpm@osdl.org</email>
</author>
<published>2006-10-11T08:21:18Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=72b64b594081ef0a0717f6aad77e891c72ed4afa'/>
<id>urn:sha1:72b64b594081ef0a0717f6aad77e891c72ed4afa</id>
<content type='text'>
Way too big to inline.

Cc: &lt;linux-ext4@vger.kernel.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] ext4: move block number hi bits</title>
<updated>2006-10-11T18:14:18Z</updated>
<author>
<name>Alexandre Ratchov</name>
<email>alexandre.ratchov@bull.net</email>
</author>
<published>2006-10-11T08:21:15Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=8fadc14323684c547f74cf2f4d13517c6c264731'/>
<id>urn:sha1:8fadc14323684c547f74cf2f4d13517c6c264731</id>
<content type='text'>
move '_hi' bits of block numbers in the larger part of the
block group descriptor structure

Signed-off-by: Alexandre Ratchov &lt;alexandre.ratchov@bull.net&gt;
Signed-off-by: Dave Kleikamp &lt;shaggy@austin.ibm.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] ext4: allow larger descriptor size</title>
<updated>2006-10-11T18:14:18Z</updated>
<author>
<name>Alexandre Ratchov</name>
<email>alexandre.ratchov@bull.net</email>
</author>
<published>2006-10-11T08:21:14Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=0d1ee42f27d30eed1659f3e85bcbbc7b3711f61f'/>
<id>urn:sha1:0d1ee42f27d30eed1659f3e85bcbbc7b3711f61f</id>
<content type='text'>
make block group descriptor larger.

Signed-off-by: Alexandre Ratchov &lt;alexandre.ratchov@bull.net&gt;
Signed-off-by: Dave Kleikamp &lt;shaggy@austin.ibm.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] ext4: removesector_t bits check</title>
<updated>2006-10-11T18:14:18Z</updated>
<author>
<name>Mingming Cao</name>
<email>cmm@us.ibm.com</email>
</author>
<published>2006-10-11T08:21:13Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=9b8f1f0106ab39ad58765d4e7c57189835f51127'/>
<id>urn:sha1:9b8f1f0106ab39ad58765d4e7c57189835f51127</id>
<content type='text'>
Previously when in-kernel ext4 block type is sector_t, it's only 4 bits long
under some 32bit arch (when CONFIG_LBD is not on).  So we need to check the
size of sector_t before we read 48bit long on-disk blocks to in-kernel blocks.

These checks are unnecessary now as we changed the in-kernel blocks to
unsigned longlong.

Signed-off-by: Mingming Cao &lt;cmm@us.ibm.com&gt;
Signed-off-by: Dave Kleikamp &lt;shaggy@austin.ibm.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] ext4: blk_type from sector_t to unsigned long long</title>
<updated>2006-10-11T18:14:18Z</updated>
<author>
<name>Mingming Cao</name>
<email>cmm@us.ibm.com</email>
</author>
<published>2006-10-11T08:21:11Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=2ae0210760aed9d626eaede5b63db95e198f7c8e'/>
<id>urn:sha1:2ae0210760aed9d626eaede5b63db95e198f7c8e</id>
<content type='text'>
Change ext4 in-kernel block type (ext4_fsblk_t) from sector_t to unsigned
long long.  Remove ext4 block type string micro E3FSBLK, replaced with "%llu"

[akpm@osdl.org: build fix]
Signed-off-by: Mingming Cao &lt;cmm@us.ibm.com&gt;
Signed-off-by: Dave Kleikamp &lt;shaggy@austin.ibm.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
</feed>
