On 05/15/2018 11:32 AM, Vlastimil Babka wrote: >> diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h >> index 5a519279dcd5..fa05e6ca31ed 100644 >> --- a/include/linux/mm_types.h >> +++ b/include/linux/mm_types.h >> @@ -150,11 +150,15 @@ struct page { >> /** @rcu_head: You can use this to free a page by RCU. */ >> struct rcu_head rcu_head; >> >> - /** >> - * @pgmap: For ZONE_DEVICE pages, this points to the hosting >> - * device page map. >> - */ >> - struct dev_pagemap *pgmap; >> + struct { >> + /** >> + * @pgmap: For ZONE_DEVICE pages, this points to the >> + * hosting device page map. >> + */ >> + struct dev_pagemap *pgmap; >> + unsigned long hmm_data; >> + unsigned long _zd_pad_1; /* uses mapping */ >> + }; > > Maybe move this above rcu_head and make the comments look more like for > the other union variants? With that you can add my acked-by as well, thanks. > >> }; >> >> union { /* This union is 4 bytes in size. */ >> >