new helper: ext2_image_size()
... implemented that way since the next commit will leave it almost alone in ext2_fs.h - most of the file (including struct ext2_super_block) is going to move to fs/ext2/ext2.h. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
@@ -54,20 +54,19 @@ identify_ramdisk_image(int fd, int start_block, decompress_fn *decompressor)
|
||||
{
|
||||
const int size = 512;
|
||||
struct minix_super_block *minixsb;
|
||||
struct ext2_super_block *ext2sb;
|
||||
struct romfs_super_block *romfsb;
|
||||
struct cramfs_super *cramfsb;
|
||||
struct squashfs_super_block *squashfsb;
|
||||
int nblocks = -1;
|
||||
unsigned char *buf;
|
||||
const char *compress_name;
|
||||
unsigned long n;
|
||||
|
||||
buf = kmalloc(size, GFP_KERNEL);
|
||||
if (!buf)
|
||||
return -ENOMEM;
|
||||
|
||||
minixsb = (struct minix_super_block *) buf;
|
||||
ext2sb = (struct ext2_super_block *) buf;
|
||||
romfsb = (struct romfs_super_block *) buf;
|
||||
cramfsb = (struct cramfs_super *) buf;
|
||||
squashfsb = (struct squashfs_super_block *) buf;
|
||||
@@ -150,12 +149,12 @@ identify_ramdisk_image(int fd, int start_block, decompress_fn *decompressor)
|
||||
}
|
||||
|
||||
/* Try ext2 */
|
||||
if (ext2sb->s_magic == cpu_to_le16(EXT2_SUPER_MAGIC)) {
|
||||
n = ext2_image_size(buf);
|
||||
if (n) {
|
||||
printk(KERN_NOTICE
|
||||
"RAMDISK: ext2 filesystem found at block %d\n",
|
||||
start_block);
|
||||
nblocks = le32_to_cpu(ext2sb->s_blocks_count) <<
|
||||
le32_to_cpu(ext2sb->s_log_block_size);
|
||||
nblocks = n;
|
||||
goto done;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user