cvs commit: src/sys/kern kern_kse.c kern_thread.c src/sys/sys
proc.h
Constantine A. Murenin
mureninc at gmail.com
Mon Jul 23 21:20:20 UTC 2007
On 23/07/07, Doug Barton <dougb at freebsd.org> wrote:
> 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. :)
Apparently, it should be enough to remove the "static" keyword from
the prototype, in case you want a quick-and-dirty fix. :)
After completely removing the prototype and the function definition,
kernel does compile and boot without any problems.
Cheers,
Constantine.
More information about the cvs-src
mailing list