Skip to content

Commit

Permalink
Ocfs2: Using inline funcs to set/clear *FILLED* flags in info handler.
Browse files Browse the repository at this point in the history
It just removes some macros for the sake of typechecking gains.

Signed-off-by: Tristan Ye <[email protected]>
  • Loading branch information
Tristan Ye committed May 25, 2011
1 parent 4a7df24 commit 8aa1fa3
Showing 1 changed file with 19 additions and 28 deletions.
47 changes: 19 additions & 28 deletions fs/ocfs2/ioctl.c
Original file line number Diff line number Diff line change
Expand Up @@ -35,32 +35,23 @@
* be -EFAULT. The error will be returned from the ioctl(2) call. It's
* just a best-effort to tell userspace that this request caused the error.
*/
static inline void __o2info_set_request_error(struct ocfs2_info_request *kreq,
static inline void o2info_set_request_error(struct ocfs2_info_request *kreq,
struct ocfs2_info_request __user *req)
{
kreq->ir_flags |= OCFS2_INFO_FL_ERROR;
(void)put_user(kreq->ir_flags, (__u32 __user *)&(req->ir_flags));
}

#define o2info_set_request_error(a, b) \
__o2info_set_request_error((struct ocfs2_info_request *)&(a), b)

static inline void __o2info_set_request_filled(struct ocfs2_info_request *req)
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)
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)
{
int status;
Expand Down Expand Up @@ -153,15 +144,15 @@ int ocfs2_info_handle_blocksize(struct inode *inode,

oib.ib_blocksize = inode->i_sb->s_blocksize;

o2info_set_request_filled(oib);
o2info_set_request_filled(&oib.ib_req);

if (o2info_to_user(oib, req))
goto bail;

status = 0;
bail:
if (status)
o2info_set_request_error(oib, req);
o2info_set_request_error(&oib.ib_req, req);

return status;
}
Expand All @@ -178,15 +169,15 @@ int ocfs2_info_handle_clustersize(struct inode *inode,

oic.ic_clustersize = osb->s_clustersize;

o2info_set_request_filled(oic);
o2info_set_request_filled(&oic.ic_req);

if (o2info_to_user(oic, req))
goto bail;

status = 0;
bail:
if (status)
o2info_set_request_error(oic, req);
o2info_set_request_error(&oic.ic_req, req);

return status;
}
Expand All @@ -203,15 +194,15 @@ int ocfs2_info_handle_maxslots(struct inode *inode,

oim.im_max_slots = osb->max_slots;

o2info_set_request_filled(oim);
o2info_set_request_filled(&oim.im_req);

if (o2info_to_user(oim, req))
goto bail;

status = 0;
bail:
if (status)
o2info_set_request_error(oim, req);
o2info_set_request_error(&oim.im_req, req);

return status;
}
Expand All @@ -228,15 +219,15 @@ int ocfs2_info_handle_label(struct inode *inode,

memcpy(oil.il_label, osb->vol_label, OCFS2_MAX_VOL_LABEL_LEN);

o2info_set_request_filled(oil);
o2info_set_request_filled(&oil.il_req);

if (o2info_to_user(oil, req))
goto bail;

status = 0;
bail:
if (status)
o2info_set_request_error(oil, req);
o2info_set_request_error(&oil.il_req, req);

return status;
}
Expand All @@ -253,15 +244,15 @@ int ocfs2_info_handle_uuid(struct inode *inode,

memcpy(oiu.iu_uuid_str, osb->uuid_str, OCFS2_TEXT_UUID_LEN + 1);

o2info_set_request_filled(oiu);
o2info_set_request_filled(&oiu.iu_req);

if (o2info_to_user(oiu, req))
goto bail;

status = 0;
bail:
if (status)
o2info_set_request_error(oiu, req);
o2info_set_request_error(&oiu.iu_req, req);

return status;
}
Expand All @@ -280,15 +271,15 @@ int ocfs2_info_handle_fs_features(struct inode *inode,
oif.if_incompat_features = osb->s_feature_incompat;
oif.if_ro_compat_features = osb->s_feature_ro_compat;

o2info_set_request_filled(oif);
o2info_set_request_filled(&oif.if_req);

if (o2info_to_user(oif, req))
goto bail;

status = 0;
bail:
if (status)
o2info_set_request_error(oif, req);
o2info_set_request_error(&oif.if_req, req);

return status;
}
Expand All @@ -305,15 +296,15 @@ int ocfs2_info_handle_journal_size(struct inode *inode,

oij.ij_journal_size = osb->journal->j_inode->i_size;

o2info_set_request_filled(oij);
o2info_set_request_filled(&oij.ij_req);

if (o2info_to_user(oij, req))
goto bail;

status = 0;
bail:
if (status)
o2info_set_request_error(oij, req);
o2info_set_request_error(&oij.ij_req, req);

return status;
}
Expand All @@ -327,15 +318,15 @@ int ocfs2_info_handle_unknown(struct inode *inode,
if (o2info_from_user(oir, req))
goto bail;

o2info_clear_request_filled(oir);
o2info_clear_request_filled(&oir);

if (o2info_to_user(oir, req))
goto bail;

status = 0;
bail:
if (status)
o2info_set_request_error(oir, req);
o2info_set_request_error(&oir, req);

return status;
}
Expand Down

0 comments on commit 8aa1fa3

Please sign in to comment.