From mboxrd@z Thu Jan 1 00:00:00 1970 From: Steffen Klassert Subject: Re: [PATCH] net: xfrm_user: use BUG_ON instead of if condition followed by BUG Date: Wed, 25 Oct 2017 09:28:00 +0200 Message-ID: <20171025072800.GQ3323@secunet.com> References: <20171024035320.GA29795@gondor.apana.org.au> <20171024.174842.272234711073180328.davem@davemloft.net> <20171025040541.GA1999@gondor.apana.org.au> <20171025.132222.1438740282932861791.davem@davemloft.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Cc: , , , To: David Miller Return-path: Content-Disposition: inline In-Reply-To: <20171025.132222.1438740282932861791.davem@davemloft.net> Sender: linux-kernel-owner@vger.kernel.org List-Id: netdev.vger.kernel.org On Wed, Oct 25, 2017 at 01:22:22PM +0900, David Miller wrote: > From: Herbert Xu > Date: Wed, 25 Oct 2017 12:05:41 +0800 > > > On Tue, Oct 24, 2017 at 05:48:42PM +0900, David Miller wrote: > >> > >> This discussion has happened before. > >> > >> But I'll explain the conclusion here for your benefit. > >> > >> BUG_ON() is a statement and everything inside of it will > >> always execute. > >> > >> BUG_ON() is always preferred because it allows arch > >> specific code to pass the conditional result properly > >> into inline asm and builtins for optimal code generation. > > > > This is a good point. However, while a little bit more verbose you > > can still achieve the same assembly-level result by something like > > > > int err; > > > > err = ; > > BUG_ON(err); > > > > Having real code in BUG_ON may pose problems to people reading the > > code because some of us tend to ignore code in BUG_ON and similar > > macros such as BUILD_BUG_ON. > > I agree that this makes the code easier to read and audit. It seems that we have an agreement on the above version, Gustavo can you please update your patches to this? Thanks!