Re: [PATCH] fs: remove s_old_blocksize from struct super_block

From: Anton Altaparmakov
Date: Sat Dec 03 2005 - 06:02:05 EST


Hi,

On Fri, 2 Dec 2005, Pekka Enberg wrote:
> The s_old_blocksize field of struct super_block is only used as a temporary
> variable in get_sb_bdev(). This patch changes the function to use a local
> variable instead so we can kill the field from struct super_block.

s_old_blocksize used to be used to restore the blocksize after the
filesystem had failed to mount or had unmounted. Not restoring this leads
to all sorts of problems since the blocksize may be set for example to 4k
but some userspace app may need it to be set to 1k or whatever. There
used to be applications that failed which is why s_old_blocksize was
introduced and it used to restore the blocksize.

I have no idea why/when the restoring has been removed but chances are the
removal was wrong. Now every file system will need to restore the
blocksize itself (as it used to be before s_old_blocksize and blocksize
restoral was introduced). Except whoever removed the restoration failed
to fix up all file systems. )-:

Seems a big step backwards...

Best regards,

Anton
--
Anton Altaparmakov <aia21 at cam.ac.uk> (replace at with @)
Unix Support, Computing Service, University of Cambridge, CB2 3QH, UK
Linux NTFS maintainer / IRC: #ntfs on irc.freenode.net
WWW: http://linux-ntfs.sf.net/ & http://www-stu.christs.cam.ac.uk/~aia21/
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/