On Fri, Jun 26, 2020 at 02:32:48PM -0700, Andrii Nakryiko wrote: SNIP > > [...] > > > diff --git a/include/linux/btf_ids.h b/include/linux/btf_ids.h > > new file mode 100644 > > index 000000000000..f7f9dc4d9a9f > > --- /dev/null > > +++ b/include/linux/btf_ids.h > > @@ -0,0 +1,69 @@ > > +/* SPDX-License-Identifier: GPL-2.0 */ > > + > > +#ifndef _LINUX_BTF_IDS_H > > +#define _LINUX_BTF_IDS_H 1 > > this "1", is it necessary? I think it's always just `#define HEADER_GUARD`? I followed btf.h header: #ifndef _LINUX_BTF_H #define _LINUX_BTF_H 1 I don't mind changing it > > > + > > +#include <linux/compiler.h> /* for __PASTE */ > > + > > [...] > > > +#define __BTF_ID_LIST(name) \ > > +asm( \ > > +".pushsection " BTF_IDS_SECTION ",\"a\"; \n" \ > > +".local " #name "; \n" \ > > +#name ":; \n" \ > > +".popsection; \n"); \ > > + > > +#define BTF_ID_LIST(name) \ > > +__BTF_ID_LIST(name) \ > > +extern int name[]; > > nit: extern u32 (or __u32) perhaps? right, should be u32 thanks, jirka