lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Thu, 30 Oct 2008 19:53:22 +0100
From:	Ingo Molnar <mingo@...e.hu>
To:	Suresh Siddha <suresh.b.siddha@...el.com>
Cc:	jens.axboe@...cle.com, paulmck@...ux.vnet.ibm.com,
	jeremy.fitzhardinge@...rix.com, nickpiggin@...oo.com.au,
	torvalds@...ux-foundation.org, linux-kernel@...r.kernel.org,
	asit.k.mallick@...el.com
Subject: Re: [patch] generic-ipi: fix the smp_mb() placement


* Suresh Siddha <suresh.b.siddha@...el.com> wrote:

> Subject: generic-ipi: fix the smp_mb() placement
> 
> smp_mb() is needed (to make the memory operations visible globally) 
> before sending the ipi on the sender and the receiver (on Alpha 
> atleast) needs smp_read_barrier_depends() in the handler before 
> reading the call_single_queue list in a lock-free fashion.
> 
> On x86, x2apic mode register accesses for sending IPI's don't have 
> serializing semantics. So the need for smp_mb() before sending the 
> IPI becomes more critical in x2apic mode.
> 
> Remove the unnecessary smp_mb() in csd_flag_wait(), as the presence 
> of that smp_mb() doesn't mean anything on the sender, when the ipi 
> receiver is not doing any thing special (like memory fence) after 
> clearing the CSD_FLAG_WAIT.

nice! Did you see an actual lockup due to this? Seems like a v2.6.28 
fix to me in any case.

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ