All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrew Morton <akpm@linux-foundation.org>
To: Valdis.Kletnieks@vt.edu
Cc: andi@firstfloor.org, linux-kernel@vger.kernel.org
Subject: Re: 2.6.25-rc3-mm1 - PROFILE_LIKELY redux..
Date: Wed, 5 Mar 2008 15:49:42 -0800	[thread overview]
Message-ID: <20080305154942.a8dae04d.akpm@linux-foundation.org> (raw)
In-Reply-To: <5762.1204755985@turing-police.cc.vt.edu>

On Wed, 05 Mar 2008 17:26:25 -0500
Valdis.Kletnieks@vt.edu wrote:

> On Wed, 05 Mar 2008 10:02:21 PST, Andrew Morton said:
> 
> > at the top, so it'll be something else.  Perhaps a `likely' snuck in via an
> > inline in a header file.  It would be better to add a #define DONT_DO_THAT
> > at the top of arch/x86/kernel/vsyscall_64.c and
> > arch/x86/vdso/vclock_gettime.c, then use that to defeat likely-profiling.
> > 
> >  arch/x86/kernel/vsyscall_64.c  |   11 ++---------
> >  arch/x86/vdso/vclock_gettime.c |   11 ++---------
> >  include/linux/compiler.h       |    3 ++-
> >  3 files changed, 6 insertions(+), 19 deletions(-)
> 
> Confirming that this patch works and my system goes multi-user cleanly.

Thanks.

> Actual numbers after about 10 minutes of uptime:
> 
> % wc -l /proc/likely_prof 
> 2635 /proc/likely_prof
> % grep '^[^ ]' /proc/likely_prof 
> Likely Profiling Results
> [+- ] Type | # True | # False | Function:Filename@Line
> +unlikely |        1|        0  in_dev_get()@:include/linux/inetdevice.h@185
> +unlikely |      513|        0  dst_input()@:include/net/dst.h@254
> -likely   |        0|      148  ip6_mc_input()@:net/ipv6/ip6_input.c@271
> -likely   |        0|        1  sock_error()@:include/net/sock.h@1211
> -likely   |      851|     1219  tcp_transmit_skb()@:net/ipv4/tcp_output.c@493
> +unlikely |        1|        0  signal_pending()@:include/linux/sched.h@1927
> -likely   |        0|  1172946  audit_syscall_entry()@:kernel/auditsc.c@1522
> +unlikely |  1172716|        0  syscall_trace_enter()@:arch/x86/kernel/ptrace.c@1556
> -likely   |        0|  1173020  audit_syscall_exit()@:kernel/auditsc.c@1551
> +unlikely |  1172831|        0  syscall_trace_leave()@:arch/x86/kernel/ptrace.c@1573
> -likely   |        0|     1272  audit_alloc()@:kernel/auditsc.c@841
> +unlikely |        3|        0  icmp_unreach()@:net/ipv4/icmp.c@773
> +unlikely |        2|        1  nf_ct_attach()@:net/netfilter/core.c@230
> -likely   |        0|        2  dst_gc_task()@:net/core/dst.c@82
> +unlikely |      143|       61  fput_light()@:include/linux/file.h@77
> +unlikely |      892|      424  _read_unlock_irqrestore()@:kernel/spinlock.c@375
> +unlikely |       28|        0  sched_move_task()@:kernel/sched.c@7835
> +unlikely |       28|        0  sched_move_task()@:kernel/sched.c@7828
> +unlikely |      108|        0  verify_export_symbols()@:kernel/module.c@1401
> +unlikely |      313|        0  verify_export_symbols()@:kernel/module.c@1393
> +unlikely |       14|        0  ll_front_merge_fn()@:block/blk-merge.c@347
> -likely   |       17|     1150  audit_free()@:kernel/auditsc.c@1428
> -likely   |       17|  1174290  audit_get_context()@:kernel/auditsc.c@711
> +unlikely |       33|        0  inotify_find_update_watch()@:fs/inotify.c@591
> +unlikely |     4360|      775  kill_pid_info()@:kernel/signal.c@1065
> +unlikely |     7239|     2767  next_pidmap()@:kernel/pid.c@194
> +unlikely |    42009|    33683  copy_pte_range()@:mm/memory.c@510
> -likely   |        0|        1  qh_completions()@:drivers/usb/host/ehci-q.c@368
> +unlikely |    19934|        0  ll_back_merge_fn()@:block/blk-merge.c@309
> -likely   |      927|     2323  load_elf_binary()@:fs/binfmt_elf.c@896
> +unlikely |     2435|      875  pmd_alloc()@:include/linux/mm.h@862
> +unlikely |       13|       12  psmouse_interrupt()@:drivers/input/mouse/psmouse-base.c@296
> +unlikely |       70|       25  psmouse_interrupt()@:drivers/input/mouse/psmouse-base.c@292
> -likely   |       20|       80  qh_completions()@:drivers/usb/host/ehci-q.c@415
> -likely   |        0|       30  qh_completions()@:drivers/usb/host/ehci-q.c@319
> -likely   |        5|       14  submit_async()@:drivers/usb/host/ehci-q.c@975
> +unlikely |       19|        2  qh_append_tds()@:drivers/usb/host/ehci-q.c@876
> -likely   |        6|       15  atapi_drain_needed()@:drivers/ata/libata-scsi.c@846
> +unlikely |    27395|    18153  add_timer_randomness()@:drivers/char/random.c@628
> +unlikely |    34665|    19948  bio_phys_segments()@:fs/bio.c@226
> -likely   |      347|      678  clocksource_adjust()@:kernel/time/timekeeping.c@418
> -likely   |        1|        4  __ata_qc_from_tag()@:include/linux/libata.h@1319
> -likely   |        0|       15  __cancel_work_timer()@:kernel/workqueue.c@490
> +unlikely |    15638|     1127  queue_delayed_work_on()@:kernel/workqueue.c@233
> +unlikely |        2|        0  srcu_notifier_chain_register()@:kernel/notifier.c@419
> +unlikely |     6502|     2429  queue_work()@:kernel/workqueue.c@171
> +unlikely |        9|        2  blocking_notifier_chain_register()@:kernel/notifier.c@212
> +unlikely |    13631|        0  pre_schedule_rt()@:kernel/sched_rt.c@961
> +unlikely |   591400|   443725  __update_curr()@:kernel/sched_fair.c@313
> +unlikely |   233625|   205658  __switch_to()@:arch/x86/kernel/process_64.c@656
> +unlikely |   313057|   126225  __switch_to()@:arch/x86/kernel/process_64.c@641
> +unlikely |   313053|   126225  __switch_to()@:arch/x86/kernel/process_64.c@637
> +unlikely |   467383|        0  sched_info_switch()@:kernel/sched_stats.h@230
> +unlikely |   188448|    13628  pick_next_task_rt()@:kernel/sched_rt.c@522
> +unlikely |   240619|        0  sched_info_queued()@:kernel/sched_stats.h@188
> -likely   |       61|      644  ifind()@:fs/inode.c@798
> +unlikely |   258562|    61703  scheduler_tick()@:kernel/sched.c@3756
> -likely   |    61220|   241529  acct_update_integrals()@:kernel/tsacct.c@120
> +unlikely |  1189922|   902477  kfree()@:mm/slab.c@3785
> +unlikely |       23|        0  __rmqueue_fallback()@:mm/page_alloc.c@812
> +unlikely |    14376|     9655  rt_policy()@:kernel/sched.c@140

These are all the ones which we got wrong on your setup, yes?

I wonder if assuming that current->audit_context is NULL is realistic
nowadays.


  reply	other threads:[~2008-03-05 23:50 UTC|newest]

Thread overview: 126+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-03-04  9:19 2.6.25-rc3-mm1 Andrew Morton
2008-03-04 11:59 ` 2.6.25-rc3-mm1 Cornelia Huck
2008-03-04 19:35   ` 2.6.25-rc3-mm1 Greg KH
2008-03-04 13:12 ` [BUG] 2.6.25-rc3-mm1 kernel panic while bootup on powerpc () Kamalesh Babulal
2008-03-04 13:12   ` Kamalesh Babulal
2008-03-04 14:40   ` Michael Neuling
2008-03-04 14:40     ` Michael Neuling
2008-03-04 18:33     ` Andrew Morton
2008-03-04 18:33       ` Andrew Morton
2008-03-05  8:23       ` Benjamin Herrenschmidt
2008-03-05  8:23         ` Benjamin Herrenschmidt
2008-03-06  0:03       ` Benjamin Herrenschmidt
2008-03-06  0:03         ` Benjamin Herrenschmidt
2008-03-06  0:44         ` Andrew Morton
2008-03-06  0:44           ` Andrew Morton
2008-03-06  0:52           ` Benjamin Herrenschmidt
2008-03-06  0:52             ` Benjamin Herrenschmidt
2008-03-04 18:36   ` Andrew Morton
2008-03-04 18:36     ` Andrew Morton
2008-03-04 18:36     ` Andrew Morton
2008-03-04 18:47     ` Pekka Enberg
2008-03-04 18:47       ` Pekka Enberg
2008-03-04 18:47       ` Pekka Enberg
2008-03-04 19:18     ` Pekka Enberg
2008-03-04 19:18       ` Pekka Enberg
2008-03-04 19:18       ` Pekka Enberg
2008-03-04 19:35       ` Mel Gorman
2008-03-04 19:35         ` Mel Gorman
2008-03-04 19:41         ` Pekka Enberg
2008-03-04 19:41           ` Pekka Enberg
2008-03-04 19:56           ` Christoph Lameter
2008-03-04 19:56             ` Christoph Lameter
2008-03-04 20:01             ` Pekka J Enberg
2008-03-04 20:01               ` Pekka J Enberg
2008-03-04 20:02               ` Christoph Lameter
2008-03-04 20:02                 ` Christoph Lameter
2008-03-04 20:07               ` Christoph Lameter
2008-03-04 20:07                 ` Christoph Lameter
2008-03-04 20:08                 ` Pekka Enberg
2008-03-04 20:08                   ` Pekka Enberg
2008-03-05  2:28                   ` Kamalesh Babulal
2008-03-05  2:28                     ` Kamalesh Babulal
2008-03-04 20:34                 ` Andrew Morton
2008-03-04 20:34                   ` Andrew Morton
2008-03-04 20:44                   ` Pekka Enberg
2008-03-04 20:44                     ` Pekka Enberg
2008-03-04 21:44                     ` Christoph Lameter
2008-03-04 21:44                       ` Christoph Lameter
2008-03-05 14:02                   ` Mel Gorman
2008-03-05 14:02                     ` Mel Gorman
2008-03-05 14:31                 ` Mel Gorman
2008-03-05 14:31                   ` Mel Gorman
2008-03-04 20:01           ` Christoph Lameter
2008-03-04 20:01             ` Christoph Lameter
2008-03-05  8:22   ` Benjamin Herrenschmidt
2008-03-05  8:22     ` Benjamin Herrenschmidt
2008-03-04 16:35 ` 2.6.25-rc3-mm1 (IDE) Randy Dunlap
2008-03-06 21:14   ` Bartlomiej Zolnierkiewicz
2008-03-04 16:45 ` 2.6.25-rc3-mm1 (CCISS) Randy Dunlap
2008-03-04 17:02   ` Miller, Mike (OS Dev)
2008-03-04 17:14     ` Randy Dunlap
2008-03-04 18:14       ` Jens Axboe
2008-03-04 19:12 ` [PATCH 2.6.25-rc3-mm1] fix ext2 borkage Hugh Dickins
2008-03-04 19:20 ` [BUG] 2.6.25-rc3-mm1 kernel bug while running libhugetlbfs Kamalesh Babulal
2008-03-04 19:20   ` Kamalesh Babulal
2008-03-04 19:51   ` Andrew Morton
2008-03-04 19:51     ` Andrew Morton
2008-03-04 22:01     ` Adam Litke
2008-03-04 22:01       ` Adam Litke
2008-03-05  7:52       ` Kamalesh Babulal
2008-03-05  7:52         ` Kamalesh Babulal
2008-03-04 20:24 ` 2.6.25-rc3-mm1 (wakeup) Randy Dunlap
2008-03-04 22:33   ` Rafael J. Wysocki
2008-03-05  7:40     ` Sam Ravnborg
2008-03-04 21:26 ` 2.6.25-rc3-mm1 (9p docs) Randy Dunlap
2008-03-04 21:43   ` Eric Van Hensbergen
2008-03-05  7:21 ` 2.6.25-rc3-mm1 - PROFILE_LIKELY redux Valdis.Kletnieks
2008-03-05 17:45   ` Andi Kleen
2008-03-05 18:02     ` Andrew Morton
2008-03-05 18:22       ` Andi Kleen
2008-03-05 22:26       ` Valdis.Kletnieks
2008-03-05 23:49         ` Andrew Morton [this message]
2008-03-05 19:59     ` Valdis.Kletnieks
2008-03-05 21:56       ` Andi Kleen
2008-03-05 10:51 ` prctl(0x8) -> EINVAL [Was: 2.6.25-rc3-mm1] Jiri Slaby
2008-03-05 10:59   ` Jiri Slaby
2008-03-05 14:06   ` Serge E. Hallyn
2008-03-05 15:18     ` Jiri Slaby
2008-03-09 16:28     ` Andrew Morgan
2008-03-05 13:04 ` 2.6.25-rc3-mm1 Pavel Emelyanov
2008-03-05 13:12   ` 2.6.25-rc3-mm1 (SYSFS=n breaks module engine) Pavel Emelyanov
2008-03-05 13:31   ` 2.6.25-rc3-mm1 Kay Sievers
2008-03-05 13:38     ` 2.6.25-rc3-mm1 Pavel Emelyanov
2008-03-05 13:54       ` 2.6.25-rc3-mm1 Kay Sievers
2008-03-05 14:28         ` 2.6.25-rc3-mm1 Pavel Emelyanov
2008-03-05 16:40   ` 2.6.25-rc3-mm1 Greg KH
2008-03-05 16:59     ` 2.6.25-rc3-mm1 Pavel Emelyanov
2008-03-05 17:07       ` 2.6.25-rc3-mm1 Greg KH
2008-03-05 21:34 ` 2.6.25-rc3-mm1 ppc64 boot hang Badari Pulavarty
2008-03-05 21:34   ` Badari Pulavarty
2008-03-05 21:54   ` Andrew Morton
2008-03-05 21:54     ` Andrew Morton
2008-03-05 22:35     ` Badari Pulavarty
2008-03-05 22:35       ` Badari Pulavarty
2008-03-05 23:17     ` Stephen Rothwell
2008-03-05 23:17       ` Stephen Rothwell
2008-03-07  3:58 ` 2.6.25-rc3-mm1 - BUG at system shutdown time Valdis.Kletnieks
2008-03-07  6:16   ` Andrew Morton
2008-03-07  7:52     ` Valdis.Kletnieks
2008-03-07  8:06       ` Thomas Gleixner
2008-03-07  8:23         ` Valdis.Kletnieks
2008-03-07  8:34           ` Thomas Gleixner
2008-03-07 19:30             ` Valdis.Kletnieks
2008-03-12  7:32   ` Andrew Morton
2008-03-13  2:19     ` Valdis.Kletnieks
2008-03-13  2:32       ` Andrew Morton
2008-03-13  3:57         ` Valdis.Kletnieks
2008-03-13  4:27           ` Andrew Morton
2008-03-14 18:50             ` Valdis.Kletnieks
2008-03-21 13:41       ` Ingo Molnar
2008-03-21 19:38         ` Valdis.Kletnieks
2008-03-21 19:58           ` Ingo Molnar
2008-03-21 20:05             ` Valdis.Kletnieks
2008-03-21 20:12               ` Ingo Molnar
2008-03-22  3:11                 ` Hoo-fscking-ray - (was " Valdis.Kletnieks
2008-03-22 12:09                   ` Ingo Molnar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080305154942.a8dae04d.akpm@linux-foundation.org \
    --to=akpm@linux-foundation.org \
    --cc=Valdis.Kletnieks@vt.edu \
    --cc=andi@firstfloor.org \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.