[PATCH] fix minixfs block limit check

From: Vladimir 'Ï-coder/phcoder' Serbinenko
Date: Wed May 09 2012 - 16:14:52 EST


Hello, all. On minix2 and minix3 usually max_size is 7fffffff and the
check in question prohibits creation of last block spanning right before
7fffffff. Here is a fix:

--- fs/minix/itree_v2.c 2011-04-23 01:34:36.363725380 +0200
+++ /home/phcoder/projects/fs/minix/itree_v2.c 2012-05-09
21:47:52.335621065 +0200
@@ -32,7 +32,8 @@
if (block < 0) {
printk("MINIX-fs: block_to_path: block %ld < 0 on dev %s\n",
block, bdevname(sb->s_bdev, b));
- } else if (block >=
(minix_sb(inode->i_sb)->s_max_size/sb->s_blocksize)) {
+ } else if ((u64) block * (u64) sb->s_blocksize
+ >= minix_sb(inode->i_sb)->s_max_size) {
if (printk_ratelimit())
printk("MINIX-fs: block_to_path: "

--
Regards
Vladimir 'Ï-coder/phcoder' Serbinenko


Attachment: signature.asc
Description: OpenPGP digital signature