Date: Sat, 18 Feb 2012 13:47:03 +0800 From: David Xu <listlog2011@gmail.com> To: Julian Elischer <julian@freebsd.org> Cc: FreeBSD Stable <freebsd-stable@freebsd.org>, Alexander Kabaev <kan@freebsd.org>, Andriy Gapon <avg@freebsd.org>, "davidxu@freebsd.org" <davidxu@freebsd.org>, "threads@freebsd.org" <threads@freebsd.org>, Jung-uk Kim <jkim@freebsd.org> Subject: Re: pthread_cond_timedwait() broken in 9-stable? (from JAN 10) Message-ID: <4F3F3B57.5070700@gmail.com> In-Reply-To: <4F3EFF35.8040901@freebsd.org> References: <4F3C2671.3090808__7697.00510795719$1329343207$gmane$org@freebsd.org> <4F3E0A90.6080400@freebsd.org> <4F3E39EF.3030209@gmail.com> <201202171117.46626.jkim@FreeBSD.org> <4F3EFF35.8040901@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format. --------------040401090208010403080104 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit On 2012/2/18 9:30, Julian Elischer wrote: >> > > mine is too, yet it still has problems.. > CPU: Intel(R) Xeon(R) CPU E5420 @ 2.50GHz (2500.14-MHz > K8-class CPU) > Origin = "GenuineIntel" Id = 0x10676 Family = 6 Model = 17 > Stepping = 6 > > Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE> > > Features2=0xce3bd<SSE3,DTES64,MON,DS_CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,DCA,SSE4.1> > AMD Features=0x20100800<SYSCALL,NX,LM> > AMD Features2=0x1<LAHF> > TSC: P-state invariant, performance statistics > real memory = 8589934592 (8192 MB) > avail memory = 8214368256 (7833 MB) > Event timer "LAPIC" quality 400 > ACPI APIC Table: <PTLTD APIC > > FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs > FreeBSD/SMP: 1 package(s) x 4 core(s) > cpu0 (BSP): APIC ID: 0 > cpu1 (AP): APIC ID: 1 > cpu2 (AP): APIC ID: 2 > cpu3 (AP): APIC ID: 3 > ioapic0 <Version 2.0> irqs 0-23 on motherboard > ioapic1 <Version 2.0> irqs 24-47 on motherboard > > Attached file is a small patch, don't know if it works for you, I can only find this at the moment. --------------040401090208010403080104 Content-Type: text/plain; name="thr_umtx.c.diff" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="thr_umtx.c.diff" Index: src/lib/libthr/thread/thr_umtx.c =================================================================== --- src/lib/libthr/thread/thr_umtx.c (revision 231637) +++ src/lib/libthr/thread/thr_umtx.c (working copy) @@ -205,7 +205,7 @@ if (abstime != NULL) { clock_gettime(clockid, &ts); TIMESPEC_SUB(&ts2, abstime, &ts); - if (ts2.tv_sec < 0 || ts2.tv_nsec <= 0) + if (ts2.tv_sec < 0 || (ts2.tv_sec == 0 && ts2.tv_nsec <= 0)) return (ETIMEDOUT); tsp = &ts2; } else { --------------040401090208010403080104--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4F3F3B57.5070700>