On Mon, Jan 31, 2011 at 05:10:12PM -0800, Joel Becker wrote:
> On Mon, Jan 31, 2011 at 02:15:47PM -0800, Mark Fasheh wrote:
> > > +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))
> > 
> > The macro here (and below) casts it's argument, thus defeating any
> > typechecking we would have gotten from the function call. Can you
> > pleaseremove the macro, rename the functions (take out the __) and use them
> > directly? I know we might then want to deref the i*_req field in the
> > handlers below but I don't think that's a big deal for what we gain.
> 
>       I'm not sure what you mean here.  Are you asking for one
> set_request_filled() call per info type?

Oh, no!

I was asking for this:

static inline void o2info_set_request_filled(struct ocfs2_info_request *req)
{
        req->ir_flags |= OCFS2_INFO_FL_FILLED;
}

instead of the macro which is defeating type checking.

Hope that's more clear.
        --Mark

_______________________________________________
Ocfs2-devel mailing list
Ocfs2-devel@oss.oracle.com
http://oss.oracle.com/mailman/listinfo/ocfs2-devel

Reply via email to