fs/adfs: add helper to get discrecord from map

Add a helper to get the disc record from the map, rather than open
coding this in adfs_fill_super().

Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
Russell King 2019-06-04 14:49:30 +01:00 committed by Al Viro
parent 3ae762a09c
commit 1dfdfc9473
5 changed files with 9 additions and 7 deletions

View File

@ -1,4 +1,5 @@
/* SPDX-License-Identifier: GPL-2.0 */ /* SPDX-License-Identifier: GPL-2.0 */
#include <linux/buffer_head.h>
#include <linux/fs.h> #include <linux/fs.h>
#include <linux/adfs_fs.h> #include <linux/adfs_fs.h>
@ -18,8 +19,6 @@
#include "dir_f.h" #include "dir_f.h"
struct buffer_head;
/* /*
* adfs file system inode data in memory * adfs file system inode data in memory
*/ */
@ -195,3 +194,10 @@ __adfs_block_map(struct super_block *sb, unsigned int object_id,
return adfs_map_lookup(sb, object_id >> 8, block); return adfs_map_lookup(sb, object_id >> 8, block);
} }
/* Return the disc record from the map */
static inline
struct adfs_discrecord *adfs_map_discrecord(struct adfs_discmap *dm)
{
return (void *)(dm[0].dm_bh->b_data + 4);
}

View File

@ -9,7 +9,6 @@
* *
* E and F format directory handling * E and F format directory handling
*/ */
#include <linux/buffer_head.h>
#include "adfs.h" #include "adfs.h"
#include "dir_f.h" #include "dir_f.h"

View File

@ -7,7 +7,6 @@
* it under the terms of the GNU General Public License version 2 as * it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation. * published by the Free Software Foundation.
*/ */
#include <linux/buffer_head.h>
#include <linux/slab.h> #include <linux/slab.h>
#include "adfs.h" #include "adfs.h"
#include "dir_fplus.h" #include "dir_fplus.h"

View File

@ -7,7 +7,6 @@
* it under the terms of the GNU General Public License version 2 as * it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation. * published by the Free Software Foundation.
*/ */
#include <linux/buffer_head.h>
#include <asm/unaligned.h> #include <asm/unaligned.h>
#include "adfs.h" #include "adfs.h"

View File

@ -9,7 +9,6 @@
*/ */
#include <linux/module.h> #include <linux/module.h>
#include <linux/init.h> #include <linux/init.h>
#include <linux/buffer_head.h>
#include <linux/parser.h> #include <linux/parser.h>
#include <linux/mount.h> #include <linux/mount.h>
#include <linux/seq_file.h> #include <linux/seq_file.h>
@ -463,7 +462,7 @@ static int adfs_fill_super(struct super_block *sb, void *data, int silent)
*/ */
sb->s_op = &adfs_sops; sb->s_op = &adfs_sops;
dr = (struct adfs_discrecord *)(asb->s_map[0].dm_bh->b_data + 4); dr = adfs_map_discrecord(asb->s_map);
root_obj.parent_id = root_obj.file_id = le32_to_cpu(dr->root); root_obj.parent_id = root_obj.file_id = le32_to_cpu(dr->root);
root_obj.name_len = 0; root_obj.name_len = 0;