1. 14 10月, 2008 3 次提交
  2. 24 9月, 2008 1 次提交
  3. 22 9月, 2008 2 次提交
    • A
      x86, oprofile: BUG: using smp_processor_id() in preemptible code · 45f197ad
      Andrea Righi 提交于
      Add __raw access before setting per cpu variable switch_index, to avoid
      the following BUG:
      
      [  449.166827] BUG: using smp_processor_id() in preemptible [00000000] code: modprobe/6998
      [  449.166848] caller is op_nmi_init+0xf0/0x2b0 [oprofile]
      [  449.166855] Pid: 6998, comm: modprobe Not tainted 2.6.27-rc5-mm1 #29
      [  449.166860] Call Trace:
      [  449.166872]  [<ffffffff80362d67>] debug_smp_processor_id+0xd7/0xe0
      [  449.166887]  [<ffffffffa00181c0>] op_nmi_init+0xf0/0x2b0 [oprofile]
      [  449.166902]  [<ffffffffa0018000>] oprofile_init+0x0/0x60 [oprofile]
      [  449.166915]  [<ffffffffa00180a9>] oprofile_arch_init+0x9/0x30 [oprofile]
      [  449.166928]  [<ffffffffa001801e>] oprofile_init+0x1e/0x60 [oprofile]
      [  449.166937]  [<ffffffff8020903b>] _stext+0x3b/0x160
      [  449.166946]  [<ffffffff80477985>] __mutex_unlock_slowpath+0xe5/0x190
      [  449.166955]  [<ffffffff80262c1a>] trace_hardirqs_on_caller+0xca/0x140
      [  449.166965]  [<ffffffff8026f7fc>] sys_init_module+0xdc/0x210
      [  449.166972]  [<ffffffff8020b7cb>] system_call_fastpath+0x16/0x1b
      Signed-off-by: NAndrea Righi <righi.andrea@gmail.com>
      Acked-by: NRobert Richter <robert.richter@amd.com>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      45f197ad
    • A
      x86, oprofile: BUG scheduling while atomic · b61e06f2
      Andrea Righi 提交于
      nmi_shutdown() calls unregister_die_notifier() from an atomic context
      after setting preempt_disable() via get_cpu_var():
      
      [ 1049.404154] BUG: scheduling while atomic: oprofiled/7796/0x00000002
      [ 1049.404171] INFO: lockdep is turned off.
      [ 1049.404176] Modules linked in: oprofile af_packet rfcomm l2cap kvm_intel kvm i915 drm acpi_cpufreq cpufreq_userspace cpufreq_conservative cpufreq_ondemand cpufreq_powersave freq_table container sbs sbshc dm_mod arc4 ecb cryptomgr aead snd_hda_intel crypto_blkcipher snd_pcm_oss crypto_algapi snd_pcm iwlagn iwlcore snd_timer iTCO_wdt led_class btusb iTCO_vendor_support snd psmouse bluetooth mac80211 soundcore cfg80211 snd_page_alloc intel_agp video output button battery ac dcdbas evdev ext3 jbd mbcache sg sd_mod piix ata_piix libata scsi_mod dock tg3 libphy ehci_hcd uhci_hcd usbcore thermal processor fan fuse
      [ 1049.404362] Pid: 7796, comm: oprofiled Not tainted 2.6.27-rc5-mm1 #30
      [ 1049.404368] Call Trace:
      [ 1049.404384]  [<ffffffff804769fd>] thread_return+0x4a0/0x7d3
      [ 1049.404396]  [<ffffffff8026ad92>] generic_exec_single+0x52/0xe0
      [ 1049.404405]  [<ffffffff8026ae1a>] generic_exec_single+0xda/0xe0
      [ 1049.404414]  [<ffffffff8026aee3>] smp_call_function_single+0x73/0x150
      [ 1049.404423]  [<ffffffff804770c5>] schedule_timeout+0x95/0xd0
      [ 1049.404430]  [<ffffffff80476083>] wait_for_common+0x43/0x180
      [ 1049.404438]  [<ffffffff80476154>] wait_for_common+0x114/0x180
      [ 1049.404448]  [<ffffffff80236980>] default_wake_function+0x0/0x10
      [ 1049.404457]  [<ffffffff8024f810>] synchronize_rcu+0x30/0x40
      [ 1049.404463]  [<ffffffff8024f890>] wakeme_after_rcu+0x0/0x10
      [ 1049.404472]  [<ffffffff80479ca0>] _spin_unlock_irqrestore+0x40/0x80
      [ 1049.404482]  [<ffffffff80256def>] atomic_notifier_chain_unregister+0x3f/0x60
      [ 1049.404501]  [<ffffffffa03d8801>] nmi_shutdown+0x51/0x90 [oprofile]
      [ 1049.404517]  [<ffffffffa03d6134>] oprofile_shutdown+0x34/0x70 [oprofile]
      [ 1049.404532]  [<ffffffffa03d721e>] event_buffer_release+0xe/0x40 [oprofile]
      [ 1049.404543]  [<ffffffff802bdcdd>] __fput+0xcd/0x240
      [ 1049.404551]  [<ffffffff802baa74>] filp_close+0x54/0x90
      [ 1049.404560]  [<ffffffff8023e1d1>] put_files_struct+0xb1/0xd0
      [ 1049.404568]  [<ffffffff8023f82f>] do_exit+0x18f/0x930
      [ 1049.404576]  [<ffffffff8020be03>] restore_args+0x0/0x30
      [ 1049.404584]  [<ffffffff80240006>] do_group_exit+0x36/0xa0
      [ 1049.404592]  [<ffffffff8020b7cb>] system_call_fastpath+0x16/0x1b
      
      This can be easily triggered with 'opcontrol --shutdown'.
      
      Simply move get_cpu_var() above unregister_die_notifier().
      Signed-off-by: NAndrea Righi <righi.andrea@gmail.com>
      Acked-by: NRobert Richter <robert.richter@amd.com>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      b61e06f2
  4. 20 8月, 2008 1 次提交
    • A
      x86: fix oprofile + hibernation badness · 80a8c9ff
      Andi Kleen 提交于
      Vegard Nossum reported oprofile + hibernation problems:
      
      > Now some warnings:
      >
      > ------------[ cut here ]------------
      > WARNING: at /uio/arkimedes/s29/vegardno/git-working/linux-2.6/kernel/smp.c:328 s
      > mp_call_function_mask+0x194/0x1a0()
      
      The usual problem: the suspend function when interrupts are
      already disabled calls smp_call_function which is not allowed with
      interrupt off. But at this point all the other CPUs should be already
      down anyways, so it should be enough to just drop that.
      
      This patch should fix that problem at least by fixing cpu hotplug&
      suspend support.
      
      [ mingo@elte.hu: fixed 5 coding style errors. ]
      Signed-off-by: NAndi Kleen <ak@linux.intel.com>
      Tested-by: NVegard Nossum <vegard.nossum@gmail.com>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      80a8c9ff
  5. 19 8月, 2008 1 次提交
    • P
      x86: Coding style fixes to arch/x86/oprofile/op_model_p4.c · 20211e4d
      Paolo Ciarrocchi 提交于
      A coding style patch to arch/x86/oprofile/op_model_p4.c that
      removes 87 errors and 4 warnings.
      
      Before:
      total: 89 errors, 13 warnings, 722 lines checked
      
      After:
      total: 2 errors, 9 warnings, 721 lines checked
      
      Compile tested, binary verified as follow:
      
      paolo@paolo-desktop:~/linux.trees.git$ size /tmp/op_model_p4.o.*
         text    data     bss     dec     hex filename
         2691     968      32    3691     e6b /tmp/op_model_p4.o.after
         2691     968      32    3691     e6b /tmp/op_model_p4.o.before
      
      paolo@paolo-desktop:~/linux.trees.git$ md5sum /tmp/op_model_p4.o.*
      8c1c9823bab33333e1f7f76574e62561  /tmp/op_model_p4.o.after
      8c1c9823bab33333e1f7f76574e62561  /tmp/op_model_p4.o.before
      Signed-off-by: NPaolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
      Cc: robert.richter@amd.com
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      20211e4d
  6. 26 7月, 2008 18 次提交
  7. 25 7月, 2008 1 次提交
  8. 26 6月, 2008 1 次提交
  9. 24 6月, 2008 1 次提交
    • V
      x86/oprofile: disable preemption in nmi_shutdown · 93e1ade5
      Vegard Nossum 提交于
      fix:
      
          BUG: using smp_processor_id() in preemptible [00000000] code: oprofiled/27301
          caller is nmi_shutdown+0x11/0x60
          Pid: 27301, comm: oprofiled Not tainted 2.6.26-rc7 #25
           [<c028a90d>] debug_smp_processor_id+0xbd/0xc0
           [<c045fba1>] nmi_shutdown+0x11/0x60
           [<c045dd4a>] oprofile_shutdown+0x2a/0x60
      
      Note that we don't need this for the other functions, since they are all
      called with on_each_cpu() (which disables preemption for us anyway).
      Signed-off-by: NVegard Nossum <vegard.nossum@gmail.com>
      Cc: Philippe Elie <phil.el@wanadoo.fr>
      Cc: oprofile-list@lists.sf.net
      Cc: Johannes Weiner <hannes@saeurebad.de>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      93e1ade5
  10. 20 4月, 2008 1 次提交
  11. 17 4月, 2008 4 次提交
  12. 30 1月, 2008 5 次提交
  13. 25 1月, 2008 1 次提交