On Mon, 2018-11-05 at 16:11 -0800, Alexander Duyck wrote: > If we really don't care then why even bother with the switch statement > anyway? It seems like you could just do one ternary operator and be > done with it. Basically all you need is: > return (defined(CONFIG_ZONE_DMA) && (flags & __GFP_DMA)) ? KMALLOC_DMA : > (flags & __GFP_RECLAIMABLE) ? KMALLOC_RECLAIM : 0; > > Why bother with all the extra complexity of the switch statement?
I don't think that defined() can be used in a C expression. Hence the IS_ENABLED() macro. If you fix that, leave out four superfluous parentheses, test your patch, post that patch and cc me then I will add my Reviewed-by. Bart.