name: mm_page_alloc
ID: 255
format:
	field:unsigned short common_type;	offset:0;	size:2;	signed:0;
	field:unsigned char common_flags;	offset:2;	size:1;	signed:0;
	field:unsigned char common_preempt_count;	offset:3;	size:1;	signed:0;
	field:int common_pid;	offset:4;	size:4;	signed:1;

	field:unsigned long pfn;	offset:8;	size:8;	signed:0;
	field:unsigned int order;	offset:16;	size:4;	signed:0;
	field:gfp_t gfp_flags;	offset:20;	size:4;	signed:0;
	field:int migratetype;	offset:24;	size:4;	signed:1;

print fmt: "page=%p pfn=%lu order=%d migratetype=%d gfp_flags=%s", REC->pfn != -1UL ? (((struct page *)(-(((-((((1UL))) << ((((39))) - 1))) - ((-((((1UL))) << ((39)))))) >> (12 - (( __builtin_constant_p(sizeof(struct page)) ? ( ((sizeof(struct page)) == 0 || (sizeof(struct page)) == 1) ? 0 : ( __builtin_constant_p((sizeof(struct page)) - 1) ? ( __builtin_constant_p((sizeof(struct page)) - 1) ? ( ((sizeof(struct page)) - 1) < 2 ? 0 : ((sizeof(struct page)) - 1) & (1ULL << 63) ? 63 : ((sizeof(struct page)) - 1) & (1ULL << 62) ? 62 : ((sizeof(struct page)) - 1) & (1ULL << 61) ? 61 : ((sizeof(struct page)) - 1) & (1ULL << 60) ? 60 : ((sizeof(struct page)) - 1) & (1ULL << 59) ? 59 : ((sizeof(struct page)) - 1) & (1ULL << 58) ? 58 : ((sizeof(struct page)) - 1) & (1ULL << 57) ? 57 : ((sizeof(struct page)) - 1) & (1ULL << 56) ? 56 : ((sizeof(struct page)) - 1) & (1ULL << 55) ? 55 : ((sizeof(struct page)) - 1) & (1ULL << 54) ? 54 : ((sizeof(struct page)) - 1) & (1ULL << 53) ? 53 : ((sizeof(struct page)) - 1) & (1ULL << 52) ? 52 : ((sizeof(struct page)) - 1) & (1ULL << 51) ? 51 : ((sizeof(struct page)) - 1) & (1ULL << 50) ? 50 : ((sizeof(struct page)) - 1) & (1ULL << 49) ? 49 : ((sizeof(struct page)) - 1) & (1ULL << 48) ? 48 : ((sizeof(struct page)) - 1) & (1ULL << 47) ? 47 : ((sizeof(struct page)) - 1) & (1ULL << 46) ? 46 : ((sizeof(struct page)) - 1) & (1ULL << 45) ? 45 : ((sizeof(struct page)) - 1) & (1ULL << 44) ? 44 : ((sizeof(struct page)) - 1) & (1ULL << 43) ? 43 : ((sizeof(struct page)) - 1) & (1ULL << 42) ? 42 : ((sizeof(struct page)) - 1) & (1ULL << 41) ? 41 : ((sizeof(struct page)) - 1) & (1ULL << 40) ? 40 : ((sizeof(struct page)) - 1) & (1ULL << 39) ? 39 : ((sizeof(struct page)) - 1) & (1ULL << 38) ? 38 : ((sizeof(struct page)) - 1) & (1ULL << 37) ? 37 : ((sizeof(struct page)) - 1) & (1ULL << 36) ? 36 : ((sizeof(struct page)) - 1) & (1ULL << 35) ? 35 : ((sizeof(struct page)) - 1) & (1ULL << 34) ? 34 : ((sizeof(struct page)) - 1) & (1ULL << 33) ? 33 : ((sizeof(struct page)) - 1) & (1ULL << 32) ? 32 : ((sizeof(struct page)) - 1) & (1ULL << 31) ? 31 : ((sizeof(struct page)) - 1) & (1ULL << 30) ? 30 : ((sizeof(struct page)) - 1) & (1ULL << 29) ? 29 : ((sizeof(struct page)) - 1) & (1ULL << 28) ? 28 : ((sizeof(struct page)) - 1) & (1ULL << 27) ? 27 : ((sizeof(struct page)) - 1) & (1ULL << 26) ? 26 : ((sizeof(struct page)) - 1) & (1ULL << 25) ? 25 : ((sizeof(struct page)) - 1) & (1ULL << 24) ? 24 : ((sizeof(struct page)) - 1) & (1ULL << 23) ? 23 : ((sizeof(struct page)) - 1) & (1ULL << 22) ? 22 : ((sizeof(struct page)) - 1) & (1ULL << 21) ? 21 : ((sizeof(struct page)) - 1) & (1ULL << 20) ? 20 : ((sizeof(struct page)) - 1) & (1ULL << 19) ? 19 : ((sizeof(struct page)) - 1) & (1ULL << 18) ? 18 : ((sizeof(struct page)) - 1) & (1ULL << 17) ? 17 : ((sizeof(struct page)) - 1) & (1ULL << 16) ? 16 : ((sizeof(struct page)) - 1) & (1ULL << 15) ? 15 : ((sizeof(struct page)) - 1) & (1ULL << 14) ? 14 : ((sizeof(struct page)) - 1) & (1ULL << 13) ? 13 : ((sizeof(struct page)) - 1) & (1ULL << 12) ? 12 : ((sizeof(struct page)) - 1) & (1ULL << 11) ? 11 : ((sizeof(struct page)) - 1) & (1ULL << 10) ? 10 : ((sizeof(struct page)) - 1) & (1ULL << 9) ? 9 : ((sizeof(struct page)) - 1) & (1ULL << 8) ? 8 : ((sizeof(struct page)) - 1) & (1ULL << 7) ? 7 : ((sizeof(struct page)) - 1) & (1ULL << 6) ? 6 : ((sizeof(struct page)) - 1) & (1ULL << 5) ? 5 : ((sizeof(struct page)) - 1) & (1ULL << 4) ? 4 : ((sizeof(struct page)) - 1) & (1ULL << 3) ? 3 : ((sizeof(struct page)) - 1) & (1ULL << 2) ? 2 : 1) : -1) : (sizeof((sizeof(struct page)) - 1) <= 4) ? __ilog2_u32((sizeof(struct page)) - 1) : __ilog2_u64((sizeof(struct page)) - 1) ) + 1) : __order_base_2(sizeof(struct page)) )))) - 0x00200000) - (memstart_addr >> 12)) + (REC->pfn)) : ((void *)0), REC->pfn != -1UL ? REC->pfn : 0, REC->order, REC->migratetype, (REC->gfp_flags) ? __print_flags(REC->gfp_flags, "|", {(unsigned long)(((((((( gfp_t)(0x400u|0x800u)) | (( gfp_t)0x40u) | (( gfp_t)0x80u) | (( gfp_t)0x100000u)) | (( gfp_t)0x02u)) | (( gfp_t)0x08u) | (( gfp_t)0x1000000u)) | (( gfp_t)0x40000u) | (( gfp_t)0x80000u) | (( gfp_t)0x2000u)) & ~(( gfp_t)(0x400u|0x800u))) | (( gfp_t)0x400u)), "GFP_TRANSHUGE"}, {(unsigned long)((((((( gfp_t)(0x400u|0x800u)) | (( gfp_t)0x40u) | (( gfp_t)0x80u) | (( gfp_t)0x100000u)) | (( gfp_t)0x02u)) | (( gfp_t)0x08u) | (( gfp_t)0x1000000u)) | (( gfp_t)0x40000u) | (( gfp_t)0x80000u) | (( gfp_t)0x2000u)) & ~(( gfp_t)(0x400u|0x800u))), "GFP_TRANSHUGE_LIGHT"}, {(unsigned long)((((( gfp_t)(0x400u|0x800u)) | (( gfp_t)0x40u) | (( gfp_t)0x80u) | (( gfp_t)0x100000u)) | (( gfp_t)0x02u)) | (( gfp_t)0x08u) | (( gfp_t)0x1000000u)), "GFP_HIGHUSER_MOVABLE"}, {(unsigned long)(((( gfp_t)(0x400u|0x800u)) | (( gfp_t)0x40u) | (( gfp_t)0x80u) | (( gfp_t)0x100000u)) | (( gfp_t)0x02u)), "GFP_HIGHUSER"}, {(unsigned long)((( gfp_t)(0x400u|0x800u)) | (( gfp_t)0x40u) | (( gfp_t)0x80u) | (( gfp_t)0x100000u)), "GFP_USER"}, {(unsigned long)(((( gfp_t)(0x400u|0x800u)) | (( gfp_t)0x40u) | (( gfp_t)0x80u)) | (( gfp_t)0x400000u)), "GFP_KERNEL_ACCOUNT"}, {(unsigned long)((( gfp_t)(0x400u|0x800u)) | (( gfp_t)0x40u) | (( gfp_t)0x80u)), "GFP_KERNEL"}, {(unsigned long)((( gfp_t)(0x400u|0x800u)) | (( gfp_t)0x40u)), "GFP_NOFS"}, {(unsigned long)((( gfp_t)0x20u)|(( gfp_t)0x200u)|(( gfp_t)0x800u)), "GFP_ATOMIC"}, {(unsigned long)((( gfp_t)(0x400u|0x800u))), "GFP_NOIO"}, {(unsigned long)((( gfp_t)0x800u)), "GFP_NOWAIT"}, {(unsigned long)(( gfp_t)0x01u), "GFP_DMA"}, {(unsigned long)(( gfp_t)0x02u), "__GFP_HIGHMEM"}, {(unsigned long)(( gfp_t)0x04u), "GFP_DMA32"}, {(unsigned long)(( gfp_t)0x20u), "__GFP_HIGH"}, {(unsigned long)(( gfp_t)0x200u), "__GFP_ATOMIC"}, {(unsigned long)(( gfp_t)0x40u), "__GFP_IO"}, {(unsigned long)(( gfp_t)0x80u), "__GFP_FS"}, {(unsigned long)(( gfp_t)0x2000u), "__GFP_NOWARN"}, {(unsigned long)(( gfp_t)0x4000u), "__GFP_RETRY_MAYFAIL"}, {(unsigned long)(( gfp_t)0x8000u), "__GFP_NOFAIL"}, {(unsigned long)(( gfp_t)0x10000u), "__GFP_NORETRY"}, {(unsigned long)(( gfp_t)0x40000u), "__GFP_COMP"}, {(unsigned long)(( gfp_t)0x100u), "__GFP_ZERO"}, {(unsigned long)(( gfp_t)0x80000u), "__GFP_NOMEMALLOC"}, {(unsigned long)(( gfp_t)0x20000u), "__GFP_MEMALLOC"}, {(unsigned long)(( gfp_t)0x100000u), "__GFP_HARDWALL"}, {(unsigned long)(( gfp_t)0x200000u), "__GFP_THISNODE"}, {(unsigned long)(( gfp_t)0x10u), "__GFP_RECLAIMABLE"}, {(unsigned long)(( gfp_t)0x08u), "__GFP_MOVABLE"}, {(unsigned long)(( gfp_t)0x400000u), "__GFP_ACCOUNT"}, {(unsigned long)(( gfp_t)0x1000u), "__GFP_WRITE"}, {(unsigned long)(( gfp_t)(0x400u|0x800u)), "__GFP_RECLAIM"}, {(unsigned long)(( gfp_t)0x400u), "__GFP_DIRECT_RECLAIM"}, {(unsigned long)(( gfp_t)0x800u), "__GFP_KSWAPD_RECLAIM"} ) : "none"
