On Mon, Jun 24, 2019 at 11:19 PM Johannes Weiner <hannes@xxxxxxxxxxx> wrote: > > Hey, it's three weeks later and we're about to miss 5.2. > > This sucks, Matthew. Yes. And I do think that having a real gfp field there would be better than the very odd xa_flags that is *marked* as being gfp_t, but isn't really a gfp_t at all. So how about we apply Johannes' patch, and then work on making that xa_flags field be a proper type of its own. Because it really isn't a gfp_t, and never has been, even if there might be some very limited and hacky overlap right now. Alternatrively, the subset of bits that _can_ be used as a gfp should actually be used as such, in xas_alloc/xas_nomem. So that you can do xa_init_flags(&mapping->i_pages, XA_FLAGS_LOCK_IRQ | __GFP_ACCOUNT); in __address_space_init_once() and it would do what it is supposed to do. Willy? Linus