[GFS2] Remove unused code from various files
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
This commit is contained in:
parent
c73530a1f9
commit
666a2c534c
@ -999,7 +999,7 @@ static int do_shrink(struct gfs2_inode *ip, uint64_t size,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* gfs2_truncatei - make a file a give size
|
* gfs2_truncatei - make a file a given size
|
||||||
* @ip: the inode
|
* @ip: the inode
|
||||||
* @size: the size to make the file
|
* @size: the size to make the file
|
||||||
* @truncator: function to truncate the last partial block
|
* @truncator: function to truncate the last partial block
|
||||||
@ -1125,82 +1125,3 @@ int gfs2_write_alloc_required(struct gfs2_inode *ip, uint64_t offset,
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* do_gfm - Copy out the dinode/indirect blocks of a file
|
|
||||||
* @ip: the file
|
|
||||||
* @dibh: the dinode buffer
|
|
||||||
* @bh: the indirect buffer we're looking at
|
|
||||||
* @top: the first pointer in the block
|
|
||||||
* @bottom: one more than the last pointer in the block
|
|
||||||
* @height: the height the block is at
|
|
||||||
* @data: a pointer to a struct gfs2_user_buffer structure
|
|
||||||
*
|
|
||||||
* If this is a journaled file, copy out the data too.
|
|
||||||
*
|
|
||||||
* Returns: errno
|
|
||||||
*/
|
|
||||||
|
|
||||||
static int do_gfm(struct gfs2_inode *ip, struct buffer_head *dibh,
|
|
||||||
struct buffer_head *bh, uint64_t *top, uint64_t *bottom,
|
|
||||||
unsigned int height, void *data)
|
|
||||||
{
|
|
||||||
struct gfs2_user_buffer *ub = (struct gfs2_user_buffer *)data;
|
|
||||||
int error;
|
|
||||||
|
|
||||||
error = gfs2_add_bh_to_ub(ub, bh);
|
|
||||||
if (error)
|
|
||||||
return error;
|
|
||||||
|
|
||||||
if (!S_ISDIR(ip->i_di.di_mode) ||
|
|
||||||
height + 1 != ip->i_di.di_height)
|
|
||||||
return 0;
|
|
||||||
|
|
||||||
for (; top < bottom; top++)
|
|
||||||
if (*top) {
|
|
||||||
struct buffer_head *data_bh;
|
|
||||||
|
|
||||||
error = gfs2_meta_read(ip->i_gl, be64_to_cpu(*top),
|
|
||||||
DIO_START | DIO_WAIT,
|
|
||||||
&data_bh);
|
|
||||||
if (error)
|
|
||||||
return error;
|
|
||||||
|
|
||||||
error = gfs2_add_bh_to_ub(ub, data_bh);
|
|
||||||
|
|
||||||
brelse(data_bh);
|
|
||||||
|
|
||||||
if (error)
|
|
||||||
return error;
|
|
||||||
}
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* gfs2_get_file_meta - return all the metadata for a file
|
|
||||||
* @ip: the file
|
|
||||||
* @ub: the structure representing the meta
|
|
||||||
*
|
|
||||||
* Returns: errno
|
|
||||||
*/
|
|
||||||
|
|
||||||
int gfs2_get_file_meta(struct gfs2_inode *ip, struct gfs2_user_buffer *ub)
|
|
||||||
{
|
|
||||||
int error;
|
|
||||||
|
|
||||||
if (gfs2_is_stuffed(ip)) {
|
|
||||||
struct buffer_head *dibh;
|
|
||||||
error = gfs2_meta_inode_buffer(ip, &dibh);
|
|
||||||
if (!error) {
|
|
||||||
error = gfs2_add_bh_to_ub(ub, dibh);
|
|
||||||
brelse(dibh);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
struct metapath mp;
|
|
||||||
find_metapath(ip, 0, &mp);
|
|
||||||
error = recursive_scan(ip, NULL, &mp, 0, 0, 1, do_gfm, ub);
|
|
||||||
}
|
|
||||||
|
|
||||||
return error;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
@ -34,6 +34,4 @@ void gfs2_write_calc_reserv(struct gfs2_inode *ip, unsigned int len,
|
|||||||
int gfs2_write_alloc_required(struct gfs2_inode *ip, uint64_t offset,
|
int gfs2_write_alloc_required(struct gfs2_inode *ip, uint64_t offset,
|
||||||
unsigned int len, int *alloc_required);
|
unsigned int len, int *alloc_required);
|
||||||
|
|
||||||
int gfs2_get_file_meta(struct gfs2_inode *ip, struct gfs2_user_buffer *ub);
|
|
||||||
|
|
||||||
#endif /* __BMAP_DOT_H__ */
|
#endif /* __BMAP_DOT_H__ */
|
||||||
|
@ -2104,54 +2104,3 @@ int gfs2_diradd_alloc_required(struct gfs2_inode *dip, struct qstr *filename,
|
|||||||
return error;
|
return error;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* do_gdm - copy out one leaf (or list of leaves)
|
|
||||||
* @dip: the directory
|
|
||||||
* @index: the hash table offset in the directory
|
|
||||||
* @len: the number of pointers to this leaf
|
|
||||||
* @leaf_no: the leaf number
|
|
||||||
* @data: a pointer to a struct gfs2_user_buffer structure
|
|
||||||
*
|
|
||||||
* Returns: errno
|
|
||||||
*/
|
|
||||||
|
|
||||||
static int do_gdm(struct gfs2_inode *dip, uint32_t index, uint32_t len,
|
|
||||||
uint64_t leaf_no, void *data)
|
|
||||||
{
|
|
||||||
struct gfs2_user_buffer *ub = (struct gfs2_user_buffer *)data;
|
|
||||||
struct gfs2_leaf leaf;
|
|
||||||
struct buffer_head *bh;
|
|
||||||
uint64_t blk;
|
|
||||||
int error = 0;
|
|
||||||
|
|
||||||
for (blk = leaf_no; blk; blk = leaf.lf_next) {
|
|
||||||
error = get_leaf(dip, blk, &bh);
|
|
||||||
if (error)
|
|
||||||
break;
|
|
||||||
|
|
||||||
gfs2_leaf_in(&leaf, bh->b_data);
|
|
||||||
|
|
||||||
error = gfs2_add_bh_to_ub(ub, bh);
|
|
||||||
|
|
||||||
brelse(bh);
|
|
||||||
|
|
||||||
if (error)
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
return error;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* gfs2_get_dir_meta - return all the leaf blocks of a directory
|
|
||||||
* @dip: the directory
|
|
||||||
* @ub: the structure representing the meta
|
|
||||||
*
|
|
||||||
* Returns: errno
|
|
||||||
*/
|
|
||||||
|
|
||||||
int gfs2_get_dir_meta(struct gfs2_inode *dip, struct gfs2_user_buffer *ub)
|
|
||||||
{
|
|
||||||
return foreach_leaf(dip, do_gdm, ub);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
@ -46,6 +46,4 @@ int gfs2_dir_exhash_dealloc(struct gfs2_inode *dip);
|
|||||||
int gfs2_diradd_alloc_required(struct gfs2_inode *dip, struct qstr *filename,
|
int gfs2_diradd_alloc_required(struct gfs2_inode *dip, struct qstr *filename,
|
||||||
int *alloc_required);
|
int *alloc_required);
|
||||||
|
|
||||||
int gfs2_get_dir_meta(struct gfs2_inode *ip, struct gfs2_user_buffer *ub);
|
|
||||||
|
|
||||||
#endif /* __DIR_DOT_H__ */
|
#endif /* __DIR_DOT_H__ */
|
||||||
|
@ -1561,60 +1561,3 @@ int gfs2_ea_dealloc(struct gfs2_inode *ip)
|
|||||||
return error;
|
return error;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* gfs2_get_eattr_meta - return all the eattr blocks of a file
|
|
||||||
* @dip: the directory
|
|
||||||
* @ub: the structure representing the user buffer to copy to
|
|
||||||
*
|
|
||||||
* Returns: errno
|
|
||||||
*/
|
|
||||||
|
|
||||||
int gfs2_get_eattr_meta(struct gfs2_inode *ip, struct gfs2_user_buffer *ub)
|
|
||||||
{
|
|
||||||
struct buffer_head *bh;
|
|
||||||
int error;
|
|
||||||
|
|
||||||
error = gfs2_meta_read(ip->i_gl, ip->i_di.di_eattr,
|
|
||||||
DIO_START | DIO_WAIT, &bh);
|
|
||||||
if (error)
|
|
||||||
return error;
|
|
||||||
|
|
||||||
gfs2_add_bh_to_ub(ub, bh);
|
|
||||||
|
|
||||||
if (ip->i_di.di_flags & GFS2_DIF_EA_INDIRECT) {
|
|
||||||
struct buffer_head *eabh;
|
|
||||||
uint64_t *eablk, *end;
|
|
||||||
|
|
||||||
if (gfs2_metatype_check(ip->i_sbd, bh, GFS2_METATYPE_IN)) {
|
|
||||||
error = -EIO;
|
|
||||||
goto out;
|
|
||||||
}
|
|
||||||
|
|
||||||
eablk = (uint64_t *)(bh->b_data +
|
|
||||||
sizeof(struct gfs2_meta_header));
|
|
||||||
end = eablk + ip->i_sbd->sd_inptrs;
|
|
||||||
|
|
||||||
for (; eablk < end; eablk++) {
|
|
||||||
uint64_t bn;
|
|
||||||
|
|
||||||
if (!*eablk)
|
|
||||||
break;
|
|
||||||
bn = be64_to_cpu(*eablk);
|
|
||||||
|
|
||||||
error = gfs2_meta_read(ip->i_gl, bn,
|
|
||||||
DIO_START | DIO_WAIT, &eabh);
|
|
||||||
if (error)
|
|
||||||
break;
|
|
||||||
gfs2_add_bh_to_ub(ub, eabh);
|
|
||||||
brelse(eabh);
|
|
||||||
if (error)
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
out:
|
|
||||||
brelse(bh);
|
|
||||||
|
|
||||||
return error;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
@ -74,8 +74,6 @@ int gfs2_ea_remove(struct gfs2_inode *ip, struct gfs2_ea_request *er);
|
|||||||
|
|
||||||
int gfs2_ea_dealloc(struct gfs2_inode *ip);
|
int gfs2_ea_dealloc(struct gfs2_inode *ip);
|
||||||
|
|
||||||
int gfs2_get_eattr_meta(struct gfs2_inode *ip, struct gfs2_user_buffer *ub);
|
|
||||||
|
|
||||||
/* Exported to acl.c */
|
/* Exported to acl.c */
|
||||||
|
|
||||||
int gfs2_ea_find(struct gfs2_inode *ip,
|
int gfs2_ea_find(struct gfs2_inode *ip,
|
||||||
|
@ -221,36 +221,6 @@ int gfs2_io_error_bh_i(struct gfs2_sbd *sdp, struct buffer_head *bh,
|
|||||||
return rv;
|
return rv;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* gfs2_add_bh_to_ub - copy a buffer up to user space
|
|
||||||
* @ub: the structure representing where to copy
|
|
||||||
* @bh: the buffer
|
|
||||||
*
|
|
||||||
* Returns: errno
|
|
||||||
*/
|
|
||||||
|
|
||||||
int gfs2_add_bh_to_ub(struct gfs2_user_buffer *ub, struct buffer_head *bh)
|
|
||||||
{
|
|
||||||
uint64_t blkno = bh->b_blocknr;
|
|
||||||
|
|
||||||
if (ub->ub_count + sizeof(uint64_t) + bh->b_size > ub->ub_size)
|
|
||||||
return -ENOMEM;
|
|
||||||
|
|
||||||
if (copy_to_user(ub->ub_data + ub->ub_count,
|
|
||||||
&blkno,
|
|
||||||
sizeof(uint64_t)))
|
|
||||||
return -EFAULT;
|
|
||||||
ub->ub_count += sizeof(uint64_t);
|
|
||||||
|
|
||||||
if (copy_to_user(ub->ub_data + ub->ub_count,
|
|
||||||
bh->b_data,
|
|
||||||
bh->b_size))
|
|
||||||
return -EFAULT;
|
|
||||||
ub->ub_count += bh->b_size;
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
void gfs2_icbit_munge(struct gfs2_sbd *sdp, unsigned char **bitmap,
|
void gfs2_icbit_munge(struct gfs2_sbd *sdp, unsigned char **bitmap,
|
||||||
unsigned int bit, int new_value)
|
unsigned int bit, int new_value)
|
||||||
{
|
{
|
||||||
|
@ -152,14 +152,6 @@ extern kmem_cache_t *gfs2_glock_cachep;
|
|||||||
extern kmem_cache_t *gfs2_inode_cachep;
|
extern kmem_cache_t *gfs2_inode_cachep;
|
||||||
extern kmem_cache_t *gfs2_bufdata_cachep;
|
extern kmem_cache_t *gfs2_bufdata_cachep;
|
||||||
|
|
||||||
struct gfs2_user_buffer {
|
|
||||||
char __user *ub_data;
|
|
||||||
unsigned int ub_size;
|
|
||||||
unsigned int ub_count;
|
|
||||||
};
|
|
||||||
|
|
||||||
int gfs2_add_bh_to_ub(struct gfs2_user_buffer *ub, struct buffer_head *bh);
|
|
||||||
|
|
||||||
static inline unsigned int gfs2_tune_get_i(struct gfs2_tune *gt,
|
static inline unsigned int gfs2_tune_get_i(struct gfs2_tune *gt,
|
||||||
unsigned int *p)
|
unsigned int *p)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user