cvs commit: src/sys/kern kern_kse.c kern_thread.c src/sys/sys proc.h

Doug Barton dougb at FreeBSD.org
Mon Jul 23 20:55:24 UTC 2007


Marcus Alves Grando wrote:
> Attilio Rao wrote:
>> attilio     2007-07-23 14:52:22 UTC
>>
>>   FreeBSD src repository
>>
>>   Modified files:
>>     sys/kern             kern_kse.c kern_thread.c    
>> sys/sys              proc.h   Log:
>>   Actually, KSE kernel bits locking is broken and can lead likely to
>>   dangerous races.
>>   Fix this problems adding correct locking for the members of 'struct
>>   kse_upcall' and other struct proc/struct thread related members.
>>   For the moment, just leave ku_mflag and ku_flags "lazy" locked.
>>   While here, cleanup the code removing the function kse_GC() (unused),
>>   and merging upcall_link(), upcall_unlink(), upcall_stash() in their
>>   respective callers (static functions, very short and only called in one
>>   place).
>>     Reported by: pav
>>   Tested by: pav (on some pointyhat cluster nodes)
>>   Approved by: jeff
>>   Approved by: re
>>   Sponsorized by: NGX Italy (http://www.ngx.it)
>>     Revision  Changes    Path
>>   1.232     +69 -82    src/sys/kern/kern_kse.c
>>   1.251     +2 -0      src/sys/kern/kern_thread.c
>>   1.488     +0 -1      src/sys/sys/proc.h
>> _______________________________________________
>> cvs-src at freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/cvs-src
>> To unsubscribe, send any mail to "cvs-src-unsubscribe at freebsd.org"
>>
>> ------------------------------------------------------
>> http://www.FreeBSD.org/cgi/cvsweb.cgi/src/sys/kern/kern_kse.c.diff?&r1=1.231&r2=1.232
>>
>> http://www.FreeBSD.org/cgi/cvsweb.cgi/src/sys/kern/kern_thread.c.diff?&r1=1.250&r2=1.251
>>
>> http://www.FreeBSD.org/cgi/cvsweb.cgi/src/sys/sys/proc.h.diff?&r1=1.487&r2=1.488
>>
>>
> 
> Wno-pointer-sign -fformat-extensions -nostdinc  -I. -I/usr/src/sys
> -I/usr/src/sys/contrib/altq -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS
> -include opt_global.h -fno-common -finline-limit=8000 --param
> inline-unit-growth=100 --param large-function-growth=1000
> -mno-align-long-strings -mpreferred-stack-boundary=2  -mno-mmx
> -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -ffreestanding -Werror
> /usr/src/sys/kern/kern_kse.c
> cc1: warnings being treated as errors
> /usr/src/sys/kern/kern_kse.c:87: warning: 'upcall_free' defined but not
> used
> *** Error code 1

Me Too. Removing the prototype and the function definition got the
kernel to compile, but I'm a little scared to boot it. :)


hth,

Doug

-- 

    This .signature sanitized for your protection



More information about the cvs-src mailing list