On Wed, 13 Dec 2023 18:05:25 -0800 Mina Almasry wrote: > +struct netmem { > + union { > + struct page page; > + > + /* Stub to prevent compiler implicitly converting from page* > + * to netmem_t* and vice versa. > + * > + * Other memory type(s) net stack would like to support > + * can be added to this union. > + */ > + void *addr; > + }; > +}; My mind went to something like: typedef unsigned long __bitwise netmem_ref; instead. struct netmem does not exist, it's a handle which has to be converted to a real type using a helper.