[PATCH] staging: lustre: mdc: use __FMODE_EXEC macro

Juston juston.h.li at gmail.com
Tue Nov 18 00:23:08 UTC 2014


On Tue, 2014-11-18 at 01:46 +0300, Dan Carpenter wrote:
> On Mon, Nov 17, 2014 at 02:23:48PM -0800, Juston Li wrote:
> > FMODE_EXEC is type fmode_t but is used in operations
> > with integers which leads to sparse warnings:
> > drivers/staging/lustre/lustre/mdc/mdc_lib.c:198:21: warning: restricted fmode_t degrades to integer
> > drivers/staging/lustre/lustre/mdc/mdc_locks.c:300:49: warning: restricted fmode_t degrades to integer
> > 
> > Fix by using __FMODE_EXEC macro defined in fs.h.
> > 
> > Note the same warnings occurs with other fmode flags
> > here but they don't have a corresponding int macro.
> > 
> 
> When are FMODE_EXEC and __FMODE_EXEC not defined?  I think they're
> always defined.  I don't understand the point of these ifdefs.  I guess
> maybe they are for compatability with obsolete kernels?
> 
> regards,
> dan carpenter
> 
Seems to be the case. Looked at some old commits (2.6.17) and found
FMODE_EXEC was mainlined to allow lustre to be installed on a vanilla
kernel.
Since you pointed it out, if we are dealing with compatability with 
obselete kernels, __FMODE_EXEC was added later in 2.6.38. Wondering
if I should address the case where FMODE_EXEC is defined but 
__FMODE_EXEC isn't since I currently only check __FMODE_EXEC.

Regards,
Juston Li



More information about the devel mailing list