Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1275647

Re: [RFC] asm-generic: default BUG_ON(x) to "if(x) BUG()"

From Willy Tarreau <w@1wt.eu>
Newsgroups linux.kernel
Subject Re: [RFC] asm-generic: default BUG_ON(x) to "if(x) BUG()"
Date 2015-11-23 18:10 +0100
Message-ID <qy2MN-4Nt-13@gated-at.bofh.it> (permalink)
References <qy2a7-4i0-43@gated-at.bofh.it> <qy2jN-4lG-31@gated-at.bofh.it> <qy2jN-4lG-45@gated-at.bofh.it> <qy2D8-4un-17@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Mon, Nov 23, 2015 at 05:52:38PM +0100, Arnd Bergmann wrote:
> On Monday 23 November 2015 16:37:50 Russell King - ARM Linux wrote:
> > On Mon, Nov 23, 2015 at 05:33:59PM +0100, Willy Tarreau wrote:
> > > I think you could do better by simply calling panic("BUG!") instead as
> > > BUG() does. It will avoid the printk() call and pushing the file/line
> > > number onto the stack. It will also probably not inflate the rodata this
> > > way.
> > 
> > Does that not depend on the architectures BUG() implementation?  If an
> > architecture implements it as a signalling illegal instruction and a
> > lookup table, changing it to be a panic() would probably be more code.
> 
> Correct, overall, we are down to a 1.40% size reduction compared to
> 1.70% without my patch and 1.49% with my version:
> 
> section     CONFIG_BUG=y    CONFIG_BUG=n    CONFIG_BUG=n+patch    panic("BUG!")
> 
>  .text            8320248   |     8180944   |     8207688	|  8221848
>  .rodata          3633720   |     3567144   |     3570648	|  3567344
>  __bug_table        32508   |         ---   |         ---	|      ---
>  __modver             692   |        1584   |        2176	|     1384
>  .init.text        558132   |      548300   |      550088	|   550592
>  .exit.text         12380   |       12256   |       12380	|    12448
>  .data            1016672   |     1016064   |     1016128	|  1016064
>  Total           14622556   |    14374510   |    14407326	| 14417898

Thanks for testing :-)

Willy

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[RFC] asm-generic: default BUG_ON(x) to "if(x) BUG()" Arnd Bergmann <arnd@arndb.de> - 2015-11-23 17:30 +0100
  Re: [RFC] asm-generic: default BUG_ON(x) to "if(x) BUG()" Willy Tarreau <w@1wt.eu> - 2015-11-23 17:40 +0100
    Re: [RFC] asm-generic: default BUG_ON(x) to "if(x) BUG()" Russell King - ARM Linux <linux@arm.linux.org.uk> - 2015-11-23 17:40 +0100
      Re: [RFC] asm-generic: default BUG_ON(x) to "if(x) BUG()" Arnd Bergmann <arnd@arndb.de> - 2015-11-23 18:00 +0100
        Re: [RFC] asm-generic: default BUG_ON(x) to "if(x) BUG()" Willy Tarreau <w@1wt.eu> - 2015-11-23 18:10 +0100
        Re: [RFC] asm-generic: default BUG_ON(x) to "if(x) BUG()" Russell King - ARM Linux <linux@arm.linux.org.uk> - 2015-11-23 18:30 +0100
          Re: [RFC] asm-generic: default BUG_ON(x) to "if(x) BUG()" Arnd Bergmann <arnd@arndb.de> - 2015-11-23 20:40 +0100
      Re: [RFC] asm-generic: default BUG_ON(x) to "if(x) BUG()" Willy Tarreau <w@1wt.eu> - 2015-11-23 18:00 +0100
  Re: [RFC] asm-generic: default BUG_ON(x) to "if(x) BUG()" Russell King - ARM Linux <linux@arm.linux.org.uk> - 2015-11-23 17:40 +0100
  Re: [RFC] asm-generic: default BUG_ON(x) to "if(x) BUG()" Josh Triplett <josh@joshtriplett.org> - 2015-11-23 21:30 +0100
    Re: [RFC] asm-generic: default BUG_ON(x) to "if(x) BUG()" Arnd Bergmann <arnd@arndb.de> - 2015-11-23 22:00 +0100
      Re: [RFC] asm-generic: default BUG_ON(x) to "if(x) BUG()" Josh Triplett <josh@joshtriplett.org> - 2015-11-23 22:20 +0100
        Re: [RFC] asm-generic: default BUG_ON(x) to "if(x) BUG()" Arnd Bergmann <arnd@arndb.de> - 2015-11-23 22:40 +0100

csiph-web