Commit 1936a267 authored by Tristan Ye's avatar Tristan Ye Committed by Joel Becker

Ocfs2: Using macro to set/clear *FILLED* flags in info handler.

It's a best-effort attempt to simplize duplicated codes here.
Signed-off-by: default avatarTristan Ye <tristan.ye@oracle.com>
Signed-off-by: default avatarJoel Becker <jlbec@evilplan.org>
parent 1dd9ffc8
...@@ -46,6 +46,22 @@ static inline void __o2info_set_request_error(struct ocfs2_info_request *kreq, ...@@ -46,6 +46,22 @@ static inline void __o2info_set_request_error(struct ocfs2_info_request *kreq,
#define o2info_set_request_error(a, b) \ #define o2info_set_request_error(a, b) \
__o2info_set_request_error((struct ocfs2_info_request *)&(a), b) __o2info_set_request_error((struct ocfs2_info_request *)&(a), b)
static inline void __o2info_set_request_filled(struct ocfs2_info_request *req)
{
req->ir_flags |= OCFS2_INFO_FL_FILLED;
}
#define o2info_set_request_filled(a) \
__o2info_set_request_filled((struct ocfs2_info_request *)&(a))
static inline void __o2info_clear_request_filled(struct ocfs2_info_request *req)
{
req->ir_flags &= ~OCFS2_INFO_FL_FILLED;
}
#define o2info_clear_request_filled(a) \
__o2info_clear_request_filled((struct ocfs2_info_request *)&(a))
static int ocfs2_get_inode_attr(struct inode *inode, unsigned *flags) static int ocfs2_get_inode_attr(struct inode *inode, unsigned *flags)
{ {
int status; int status;
...@@ -139,7 +155,8 @@ int ocfs2_info_handle_blocksize(struct inode *inode, ...@@ -139,7 +155,8 @@ int ocfs2_info_handle_blocksize(struct inode *inode,
goto bail; goto bail;
oib.ib_blocksize = inode->i_sb->s_blocksize; oib.ib_blocksize = inode->i_sb->s_blocksize;
oib.ib_req.ir_flags |= OCFS2_INFO_FL_FILLED;
o2info_set_request_filled(oib);
if (o2info_to_user(oib, req)) if (o2info_to_user(oib, req))
goto bail; goto bail;
...@@ -163,7 +180,8 @@ int ocfs2_info_handle_clustersize(struct inode *inode, ...@@ -163,7 +180,8 @@ int ocfs2_info_handle_clustersize(struct inode *inode,
goto bail; goto bail;
oic.ic_clustersize = osb->s_clustersize; oic.ic_clustersize = osb->s_clustersize;
oic.ic_req.ir_flags |= OCFS2_INFO_FL_FILLED;
o2info_set_request_filled(oic);
if (o2info_to_user(oic, req)) if (o2info_to_user(oic, req))
goto bail; goto bail;
...@@ -187,7 +205,8 @@ int ocfs2_info_handle_maxslots(struct inode *inode, ...@@ -187,7 +205,8 @@ int ocfs2_info_handle_maxslots(struct inode *inode,
goto bail; goto bail;
oim.im_max_slots = osb->max_slots; oim.im_max_slots = osb->max_slots;
oim.im_req.ir_flags |= OCFS2_INFO_FL_FILLED;
o2info_set_request_filled(oim);
if (o2info_to_user(oim, req)) if (o2info_to_user(oim, req))
goto bail; goto bail;
...@@ -211,7 +230,8 @@ int ocfs2_info_handle_label(struct inode *inode, ...@@ -211,7 +230,8 @@ int ocfs2_info_handle_label(struct inode *inode,
goto bail; goto bail;
memcpy(oil.il_label, osb->vol_label, OCFS2_MAX_VOL_LABEL_LEN); memcpy(oil.il_label, osb->vol_label, OCFS2_MAX_VOL_LABEL_LEN);
oil.il_req.ir_flags |= OCFS2_INFO_FL_FILLED;
o2info_set_request_filled(oil);
if (o2info_to_user(oil, req)) if (o2info_to_user(oil, req))
goto bail; goto bail;
...@@ -235,7 +255,8 @@ int ocfs2_info_handle_uuid(struct inode *inode, ...@@ -235,7 +255,8 @@ int ocfs2_info_handle_uuid(struct inode *inode,
goto bail; goto bail;
memcpy(oiu.iu_uuid_str, osb->uuid_str, OCFS2_TEXT_UUID_LEN + 1); memcpy(oiu.iu_uuid_str, osb->uuid_str, OCFS2_TEXT_UUID_LEN + 1);
oiu.iu_req.ir_flags |= OCFS2_INFO_FL_FILLED;
o2info_set_request_filled(oiu);
if (o2info_to_user(oiu, req)) if (o2info_to_user(oiu, req))
goto bail; goto bail;
...@@ -261,7 +282,8 @@ int ocfs2_info_handle_fs_features(struct inode *inode, ...@@ -261,7 +282,8 @@ int ocfs2_info_handle_fs_features(struct inode *inode,
oif.if_compat_features = osb->s_feature_compat; oif.if_compat_features = osb->s_feature_compat;
oif.if_incompat_features = osb->s_feature_incompat; oif.if_incompat_features = osb->s_feature_incompat;
oif.if_ro_compat_features = osb->s_feature_ro_compat; oif.if_ro_compat_features = osb->s_feature_ro_compat;
oif.if_req.ir_flags |= OCFS2_INFO_FL_FILLED;
o2info_set_request_filled(oif);
if (o2info_to_user(oif, req)) if (o2info_to_user(oif, req))
goto bail; goto bail;
...@@ -286,7 +308,7 @@ int ocfs2_info_handle_journal_size(struct inode *inode, ...@@ -286,7 +308,7 @@ int ocfs2_info_handle_journal_size(struct inode *inode,
oij.ij_journal_size = osb->journal->j_inode->i_size; oij.ij_journal_size = osb->journal->j_inode->i_size;
oij.ij_req.ir_flags |= OCFS2_INFO_FL_FILLED; o2info_set_request_filled(oij);
if (o2info_to_user(oij, req)) if (o2info_to_user(oij, req))
goto bail; goto bail;
...@@ -308,7 +330,7 @@ int ocfs2_info_handle_unknown(struct inode *inode, ...@@ -308,7 +330,7 @@ int ocfs2_info_handle_unknown(struct inode *inode,
if (o2info_from_user(oir, req)) if (o2info_from_user(oir, req))
goto bail; goto bail;
oir.ir_flags &= ~OCFS2_INFO_FL_FILLED; o2info_clear_request_filled(oir);
if (o2info_to_user(oir, req)) if (o2info_to_user(oir, req))
goto bail; goto bail;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment