On Mon, Oct 09, 2017 at 11:37:59AM -0400, Tim Hansen wrote: > Fix BUG() calls to use BUG_ON(conditional) macros. > > This was found using make coccicheck M=net/core on linux next > tag next-2017092 > > Signed-off-by: Tim Hansen <devtimhan...@gmail.com> > --- > net/core/skbuff.c | 15 ++++++--------- > 1 file changed, 6 insertions(+), 9 deletions(-) > > diff --git a/net/core/skbuff.c b/net/core/skbuff.c > index d98c2e3ce2bf..34ce4c1a0f3c 100644 > --- a/net/core/skbuff.c > +++ b/net/core/skbuff.c > @@ -1350,8 +1350,7 @@ struct sk_buff *skb_copy(const struct sk_buff *skb, > gfp_t gfp_mask) > /* Set the tail pointer and length */ > skb_put(n, skb->len); > > - if (skb_copy_bits(skb, -headerlen, n->head, headerlen + skb->len)) > - BUG(); > + BUG_ON(skb_copy_bits(skb, -headerlen, n->head, headerlen + skb->len));
I'm concerned with this change. 1. Calling non-trivial bit of code inside the macro is a poor coding style (imo) 2. BUG_ON != BUG. Some archs like mips and ppc have HAVE_ARCH_BUG_ON and implementation of BUG and BUG_ON look quite different. I'd prefer to keep the code as-is.