sparse says:
include/linux/gfp.h:274:26: warning: incorrect type in return expression (different base types)
include/linux/gfp.h:274:26: expected bool
include/linux/gfp.h:274:26: got restricted gfp_t
...add a forced cast to silence the warning.
Cc: Mel Gorman <[email protected]>
Signed-off-by: Jeff Layton <[email protected]>
---
include/linux/gfp.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/linux/gfp.h b/include/linux/gfp.h
index 6523109e136d..8942af0813e3 100644
--- a/include/linux/gfp.h
+++ b/include/linux/gfp.h
@@ -271,7 +271,7 @@ static inline int gfpflags_to_migratetype(const gfp_t gfp_flags)
static inline bool gfpflags_allow_blocking(const gfp_t gfp_flags)
{
- return gfp_flags & __GFP_DIRECT_RECLAIM;
+ return (bool __force)(gfp_flags & __GFP_DIRECT_RECLAIM);
}
#ifdef CONFIG_HIGHMEM
--
2.4.3
On Fri 20-11-15 09:40:59, Jeff Layton wrote:
> sparse says:
>
> include/linux/gfp.h:274:26: warning: incorrect type in return expression (different base types)
> include/linux/gfp.h:274:26: expected bool
> include/linux/gfp.h:274:26: got restricted gfp_t
>
> ...add a forced cast to silence the warning.
>
> Cc: Mel Gorman <[email protected]>
> Signed-off-by: Jeff Layton <[email protected]>
> ---
> include/linux/gfp.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/include/linux/gfp.h b/include/linux/gfp.h
> index 6523109e136d..8942af0813e3 100644
> --- a/include/linux/gfp.h
> +++ b/include/linux/gfp.h
> @@ -271,7 +271,7 @@ static inline int gfpflags_to_migratetype(const gfp_t gfp_flags)
>
> static inline bool gfpflags_allow_blocking(const gfp_t gfp_flags)
> {
> - return gfp_flags & __GFP_DIRECT_RECLAIM;
> + return (bool __force)(gfp_flags & __GFP_DIRECT_RECLAIM);
Wouldn't (gfp_flags & __GFP_DIRECT_RECLAIM) != 0 be easier/better to read?
--
Michal Hocko
SUSE Labs
On Mon, 23 Nov 2015 10:50:49 +0100
Michal Hocko <[email protected]> wrote:
> On Fri 20-11-15 09:40:59, Jeff Layton wrote:
> > sparse says:
> >
> > include/linux/gfp.h:274:26: warning: incorrect type in return expression (different base types)
> > include/linux/gfp.h:274:26: expected bool
> > include/linux/gfp.h:274:26: got restricted gfp_t
> >
> > ...add a forced cast to silence the warning.
> >
> > Cc: Mel Gorman <[email protected]>
> > Signed-off-by: Jeff Layton <[email protected]>
> > ---
> > include/linux/gfp.h | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/include/linux/gfp.h b/include/linux/gfp.h
> > index 6523109e136d..8942af0813e3 100644
> > --- a/include/linux/gfp.h
> > +++ b/include/linux/gfp.h
> > @@ -271,7 +271,7 @@ static inline int gfpflags_to_migratetype(const gfp_t gfp_flags)
> >
> > static inline bool gfpflags_allow_blocking(const gfp_t gfp_flags)
> > {
> > - return gfp_flags & __GFP_DIRECT_RECLAIM;
> > + return (bool __force)(gfp_flags & __GFP_DIRECT_RECLAIM);
>
> Wouldn't (gfp_flags & __GFP_DIRECT_RECLAIM) != 0 be easier/better to read?
>
Yeah, good point. Andrew, do you want me to respin that?
--
Jeff Layton <[email protected]>