From: Chris Wright <chrisw at sous-sol.org> Date: Tue, 18 Jul 2006 00:00:23 -0700 > + BUG_ON(HYPERVISOR_mmuext_op(&op, 1, NULL, DOMID_SELF) < 0); Although it happens to work currently, I think we should get out of the habit of putting operations with wanted side effects into BUG_ON() calls. The following is therefore more preferable: ret = HYPERVISOR_mmuext_op(&op, 1, NULL, DOMID_SELF); BUG_ON(ret < 0); If this were ASSERT() in userspace, turning off debugging at build time would make the evaluations inside of the macro never occur. It is my opinion that BUG_ON() should behave similarly.