On Tue, Jul 28, 2015 at 03:36:05PM +0200, Vlastimil Babka wrote: > >+static inline gfp_t gfp_allowed_mask(gfp_t gfp_mask) > >+{ > >+ if (static_key_false(&gfp_restricted_key)) > > This is where it uses static_key_false()...
> >+struct static_key gfp_restricted_key __read_mostly = STATIC_KEY_INIT_TRUE; > > ... and here it's combined with STATIC_KEY_INIT_TRUE. I've suspected that > this is not allowed, which Peter confirmed on IRC. > > It's however true that the big comment at the top of > include/linux/jump_label.h only explicitly talks about combining > static_key_false() and static_key_true(). > > I'm not sure what's the correct idiom for a default-false static key which > however has to start as true on boot (Peter said such cases do exist)... There currently isn't one. But see the patchset I just send to address this: lkml.kernel.org/r/20150728132313.164884...@infradead.org -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/