Don't shift; we'll lose the top two bits. Instead just OR in bit 1
to ensure this pointer is seen as a node pointer, and subtract off 2,
just like the XArray does for turning nodes into entries and vice versa.
Also don't return an entry from _maple_new_node(), return a node and let
the caller take care of turning it into an entry, if it needs an entry.
Also don't use GFP_NOWAIT in mtree_init().
Signed-off-by: Matthew Wilcox <willy@infradead.org>