Sasha Levin wrote: > On 10/01/2014 07:31 AM, Kirill A. Shutemov wrote: > > +#define _VM_DUMP(arg, cond) do { \ > > + if (__builtin_types_compatible_p(typeof(*arg), struct page)) \ > > + dump_page((struct page *) arg, \ > > + "VM_BUG_ON(" __stringify(cond)")"); \ > > + else if (__builtin_types_compatible_p(typeof(*arg), \ > > + struct vm_area_struct)) \ > > + dump_vma((struct vm_area_struct *) arg); \ > > + else if (__builtin_types_compatible_p(typeof(*arg), \ > > + struct mm_struct)) \ > > + dump_mm((struct mm_struct *) arg); \ > > + else \ > > + BUILD_BUG(); \ > > +} while(0) > > __same_type() instead of __builtin_types_compatible_p() would look nicer, > but I don't think that all compilers support that: > > include/linux/compiler-intel.h:/* Intel ECC compiler doesn't support __builtin_types_compatible_p() */ > > So it would effectively disable VM_BUG_ONs on Intel's compiler We can make _VM_DUMP nop, but I don't think ICC can build kernel anyway: we already use __builtin_types_compatible_p() in i915 driver and other places. Nobody cares. Any other comments? -- Kirill A. Shutemov -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>