Re: [GIT PULL] adaptive spinning mutexes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



* Peter Zijlstra <a.p.zijlstra@xxxxxxxxx> wrote:

> On Wed, 2009-01-14 at 10:53 -0800, Andrew Morton wrote:
> > On Wed, 14 Jan 2009 19:33:19 +0100 Ingo Molnar <mingo@xxxxxxx> wrote:
> > 
> > > Please pull the adaptive-mutexes-for-linus git tree
> > 
> > <fear>
> > 
> > - It seems a major shortcoming that the feature is disabled if
> >   CONFIG_DEBUG_MUTEXES=y.  It means that lots of people won't test it.
> 
> Yes, that's a bit unfortunate, a simple patch to enable that is:
> 
> I must admit I'm a bit stumped on why that debug check triggers, I
> couldn't reproduce today, but Ingo ran into it quite quickly :/

Yes, the debug patch caused this false positive warning on one of my 
test-systems:

Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 255762
------------[ cut here ]------------
WARNING: at kernel/mutex-debug.c:77 debug_mutex_unlock+0x94/0xde()
Hardware name:         
Modules linked in:
Pid: 0, comm: swapper Not tainted 2.6.29-rc1-tip-00983-ge1af3bd-dirty #1
Call Trace:
 [<ffffffff8024f2f7>] warn_slowpath+0xd8/0xf7
 [<ffffffff8024f5ec>] ? wake_up_klogd+0x9/0x2f
 [<ffffffff80270fd1>] ? graph_lock+0x27/0x66
 [<ffffffff80275329>] ? validate_chain+0xd4d/0xd9f
 [<ffffffff802714c4>] ? save_trace+0x3f/0xb2
 [<ffffffff80275b4f>] ? __lock_acquire+0x7d4/0x832
 [<ffffffff80275c5f>] ? lock_acquire+0xb2/0xc2
 [<ffffffff8025091c>] ? cpu_maps_update_begin+0x17/0x19
 [<ffffffff80271d21>] ? trace_hardirqs_off+0xd/0xf
 [<ffffffff80270a8e>] debug_mutex_unlock+0x94/0xde
 [<ffffffff80906d71>] __mutex_unlock_slowpath+0xdd/0x152
 [<ffffffff80906df4>] mutex_unlock+0xe/0x10
 [<ffffffff80250955>] cpu_maps_update_done+0x15/0x17
 [<ffffffff808ce8b5>] register_cpu_notifier+0x2c/0x32
 [<ffffffff80d7683e>] page_alloc_init+0x10/0x12
 [<ffffffff80d5ac45>] start_kernel+0x1ba/0x422
 [<ffffffff80d5a140>] ? early_idt_handler+0x0/0x73
 [<ffffffff80d5a2c3>] x86_64_start_reservations+0xae/0xb2
 [<ffffffff80d5a421>] x86_64_start_kernel+0x137/0x146
---[ end trace a7919e7f17c0a725 ]---
Kernel command line: root=/dev/sda1 earlyprintk=serial,ttyS0,115200 console=ttyS0,115200 console=tty 5 profile=0 debug initcall_debug apic=debug apic=verbose ignore_loglevel sysrq_always_enabled pci=nomsi
kernel profiling enabled (shift: 0)
debug: sysrq always enabled.
Initializing CPU#0

So we left that change out from this pull request. It's not a big deal i 
think - mutex debugging always had a different fast-path from no-debug 
mutexes anyway (or a lack of fast-path to begin with). So the performance 
characteristics were always subtly different. Now they might be more 
different - but we'll fix that too.

	Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux