Skip to content
Snippets Groups Projects
  1. Dec 08, 2020
  2. Aug 07, 2020
  3. Dec 28, 2018
    • Rasmus Villemoes's avatar
      bloat-o-meter: ignore __addressable_ symbols · e0b2475a
      Rasmus Villemoes authored
      Since __LINE__ is part of the symbol created by __ADDRESSABLE, almost
      any change causes those symbols to disappear and get reincarnated, e.g.
      
      add/remove: 4/4 grow/shrink: 0/3 up/down: 32/-171 (-139)
      Function                                     old     new   delta
      __addressable_tracing_set_default_clock8649       -       8      +8
      __addressable_tracer_init_tracefs8631          -       8      +8
      __addressable_ftrace_dump8383                  -       8      +8
      __addressable_clear_boot_tracer8632            -       8      +8
      __addressable_tracing_set_default_clock8650       8       -      -8
      __addressable_tracer_init_tracefs8632          8       -      -8
      __addressable_ftrace_dump8384                  8       -      -8
      __addressable_clear_boot_tracer8633            8       -      -8
      trace_default_header                         663     642     -21
      tracing_mark_raw_write                       406     355     -51
      tracing_mark_write                           624     557     -67
      Total: Before=63889, After=63750, chg -0.22%
      
      They're small and in .discard, so ignore them, leading to more useful
      
      add/remove: 0/0 grow/shrink: 0/3 up/down: 0/-139 (-139)
      Function                                     old     new   delta
      trace_default_header                         663     642     -21
      tracing_mark_raw_write                       406     355     -51
      tracing_mark_write                           624     557     -67
      Total: Before=63721, After=63582, chg -0.22%
      
      Link: http://lkml.kernel.org/r/20181102210030.8383-1-linux@rasmusvillemoes.dk
      
      
      Signed-off-by: default avatarRasmus Villemoes <linux@rasmusvillemoes.dk>
      Reviewed-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
      Cc: Alexey Dobriyan <adobriyan@gmail.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Dominik Brodowski <linux@dominikbrodowski.net>
      Cc: Maninder Singh <maninder1.s@samsung.com>
      Cc: Matteo Croce <mcroce@redhat.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      e0b2475a
  4. Apr 09, 2018
    • Dominik Brodowski's avatar
      syscalls/core, syscalls/x86: Clean up compat syscall stub naming convention · 5ac9efa3
      Dominik Brodowski authored
      
      Tidy the naming convention for compat syscall subs. Hints which describe
      the purpose of the stub go in front and receive a double underscore to
      denote that they are generated on-the-fly by the COMPAT_SYSCALL_DEFINEx()
      macro.
      
      For the generic case, this means:
      
      t            kernel_waitid	# common C function (see kernel/exit.c)
      
          __do_compat_sys_waitid	# inlined helper doing the actual work
      				# (takes original parameters as declared)
      
      T   __se_compat_sys_waitid	# sign-extending C function calling inlined
      				# helper (takes parameters of type long,
      				# casts them to unsigned long and then to
      				# the declared type)
      
      T        compat_sys_waitid      # alias to __se_compat_sys_waitid()
      				# (taking parameters as declared), to
      				# be included in syscall table
      
      For x86, the naming is as follows:
      
      t            kernel_waitid	# common C function (see kernel/exit.c)
      
          __do_compat_sys_waitid	# inlined helper doing the actual work
      				# (takes original parameters as declared)
      
      t   __se_compat_sys_waitid      # sign-extending C function calling inlined
      				# helper (takes parameters of type long,
      				# casts them to unsigned long and then to
      				# the declared type)
      
      T __ia32_compat_sys_waitid	# IA32_EMULATION 32-bit-ptregs -> C stub,
      				# calls __se_compat_sys_waitid(); to be
      				# included in syscall table
      
      T  __x32_compat_sys_waitid	# x32 64-bit-ptregs -> C stub, calls
      				# __se_compat_sys_waitid(); to be included
      				# in syscall table
      
      If only one of IA32_EMULATION and x32 is enabled, __se_compat_sys_waitid()
      may be inlined into the stub __{ia32,x32}_compat_sys_waitid().
      
      Suggested-by: default avatarIngo Molnar <mingo@kernel.org>
      Signed-off-by: default avatarDominik Brodowski <linux@dominikbrodowski.net>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Andy Lutomirski <luto@kernel.org>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Brian Gerst <brgerst@gmail.com>
      Cc: Denys Vlasenko <dvlasenk@redhat.com>
      Cc: Josh Poimboeuf <jpoimboe@redhat.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Link: http://lkml.kernel.org/r/20180409105145.5364-3-linux@dominikbrodowski.net
      
      
      Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
      5ac9efa3
    • Dominik Brodowski's avatar
      syscalls/core, syscalls/x86: Clean up syscall stub naming convention · e145242e
      Dominik Brodowski authored
      
      Tidy the naming convention for compat syscall subs. Hints which describe
      the purpose of the stub go in front and receive a double underscore to
      denote that they are generated on-the-fly by the SYSCALL_DEFINEx() macro.
      
      For the generic case, this means (0xffffffff prefix removed):
      
       810f08d0 t     kernel_waitid	# common C function (see kernel/exit.c)
      
       <inline>     __do_sys_waitid	# inlined helper doing the actual work
      				# (takes original parameters as declared)
      
       810f1aa0 T   __se_sys_waitid	# sign-extending C function calling inlined
      				# helper (takes parameters of type long;
      				# casts them to the declared type)
      
       810f1aa0 T        sys_waitid	# alias to __se_sys_waitid() (taking
      				# parameters as declared), to be included
      				# in syscall table
      
      For x86, the naming is as follows:
      
       810efc70 t     kernel_waitid	# common C function (see kernel/exit.c)
      
       <inline>     __do_sys_waitid	# inlined helper doing the actual work
      				# (takes original parameters as declared)
      
       810efd60 t   __se_sys_waitid	# sign-extending C function calling inlined
      				# helper (takes parameters of type long;
      				# casts them to the declared type)
      
       810f1140 T __ia32_sys_waitid	# IA32_EMULATION 32-bit-ptregs -> C stub,
      				# calls __se_sys_waitid(); to be included
      				# in syscall table
      
       810f1110 T        sys_waitid	# x86 64-bit-ptregs -> C stub, calls
      				# __se_sys_waitid(); to be included in
      				# syscall table
      
      For x86, sys_waitid() will be re-named to __x64_sys_waitid in a follow-up
      patch.
      
      Suggested-by: default avatarIngo Molnar <mingo@kernel.org>
      Signed-off-by: default avatarDominik Brodowski <linux@dominikbrodowski.net>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Andy Lutomirski <luto@kernel.org>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Brian Gerst <brgerst@gmail.com>
      Cc: Denys Vlasenko <dvlasenk@redhat.com>
      Cc: Josh Poimboeuf <jpoimboe@redhat.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Link: http://lkml.kernel.org/r/20180409105145.5364-2-linux@dominikbrodowski.net
      
      
      Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
      e145242e
  5. Mar 08, 2018
  6. Nov 30, 2017
  7. Nov 16, 2017
  8. Dec 13, 2016
  9. Nov 11, 2016
  10. Jul 26, 2016
  11. May 20, 2016
  12. Jan 15, 2016
  13. Aug 23, 2014
  14. Nov 07, 2013
  15. Nov 06, 2013
  16. Mar 23, 2011
  17. Dec 18, 2007
    • Nathan Lynch's avatar
      fix bloat-o-meter for ppc64 · 8998979c
      Nathan Lynch authored
      
      bloat-o-meter assumes that a '.' anywhere in a symbol's name means that it
      is static and prepends 'static.' to the first part of the symbol name,
      discarding the portion of the name that follows the '.'.  However, the
      names of function entry points begin with '.' in the ppc64 ABI.  This
      causes all function text size changes to be accounted to a single 'static.'
      entry in the output when comparing ppc64 kernels.
      
      Change getsizes() to ignore the first character of the symbol name when
      searching for '.'.
      
      Signed-off-by: default avatarNathan Lynch <ntl@pobox.com>
      Cc: Matt Mackall <mpm@selenic.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      8998979c
  18. Jun 25, 2006
  19. Apr 11, 2006
  20. Jan 09, 2006
    • Matt Mackall's avatar
      [PATCH] tiny: Add bloat-o-meter to scripts · d960600d
      Matt Mackall authored
      
      This is a rewrite of Andi Kleen's bloat-o-meter with sorting and reporting of
      gainers/decliners.  Sample output:
      
      add/remove: 0/8 grow/shrink: 2/0 up/down: 88/-4424 (-4336)
      function                                     old     new   delta
      __copy_to_user_ll                             59     103     +44
      __copy_from_user_ll                           59     103     +44
      fill_note                                     32       -     -32
      maydump                                       58       -     -58
      dump_seek                                     67       -     -67
      writenote                                    180       -    -180
      elf_dump_thread_status                       274       -    -274
      fill_psinfo                                  308       -    -308
      fill_prstatus                                466       -    -466
      elf_core_dump                               3039       -   -3039
      
      The summary line says:
       no functions added, 8 removed
       two functions grew, none shrunk
       we gained 88 bytes and lost 4424 (or -4336 net)
      
      This work was sponsored in part by CE Linux Forum
      
      Signed-off-by: default avatarMatt Mackall <mpm@selenic.com>
      Cc: Andi Kleen <ak@muc.de>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      d960600d
Loading