[Mono-bugs] [Bug 70784][Nor] Changed - Problem with Threading.Interlocked.Increment
bugzilla-daemon@bugzilla.ximian.com
bugzilla-daemon@bugzilla.ximian.com
Sat, 25 Dec 2004 16:44:58 -0500 (EST)
Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.
Changed by patrik.torstensson@gmail.com.
http://bugzilla.ximian.com/show_bug.cgi?id=70784
--- shadow/70784 2004-12-23 21:09:59.000000000 -0500
+++ shadow/70784.tmp.2495 2004-12-25 16:44:58.000000000 -0500
@@ -1,12 +1,12 @@
Bug#: 70784
Product: Mono: Runtime
Version: 1.1
OS: unknown
OS Details:
-Status: NEW
+Status: ASSIGNED
Resolution:
Severity: Unknown
Priority: Normal
Component: misc
AssignedTo: mono-bugs@ximian.com
ReportedBy: fxjrlists@yahoo.com.br
@@ -150,6 +150,23 @@
-kangaroo
------- Additional Comments From vargaz@gmail.com 2004-12-23 21:09 -------
-> totte
+
+------- Additional Comments From patrik.torstensson@gmail.com 2004-12-25 16:44 -------
+I'll look at this first thing Monday (being offline now)
+
+xadd is doing exchange add so ecx will contain the value that was in
+membase and this is correct, then the code should add the original
+value to the ecx but something goes wrong here. the return value
+should contain old membase + sreg2.
+
+You can't do the membase move because then the returning result will
+not be atomic.
+
+So, the code should first move sreg2 into dreg
+then xadd dreg
+then add sreg2 with dreg
+
+Sorry guys, will be fixed monday morning.