cvs commit: src/sys/i386/isa clock.c src/sys/kern kern_intr.c kern_systimer.c lwkt_ipiq.c lwkt_msgport.c lwkt_thread.c src/sys/sys systimer.h thread.h thread2.h
Matthew Dillon
dillon at crater.dragonflybsd.org
Tue Oct 25 10:31:37 PDT 2005
dillon 2005/10/25 10:26:58 PDT
DragonFly src repository
Modified files:
sys/i386/isa clock.c
sys/kern kern_intr.c kern_systimer.c lwkt_ipiq.c
lwkt_msgport.c lwkt_thread.c
sys/sys systimer.h thread.h thread2.h
Log:
Remove the dummy IPI messaging routines for UP builds and properly
conditionalize the use of IPI messages in various core kernel modules.
Change the callback from func(arg, frameptr) to func(arg1, arg2, frameptr),
where the new argument (arg2) is an integer supplied by the originator.
Create wrappers for simpler versions of the callback: func(arg1), and
func(arg1, arg2) (for the moment we presume that GCC will generate code
for the full-sized three-argument callback which is compatible with one
and two-argument function pointers).
This extension to the IPI messaging code is needed to properly implement
MP-safe tsleep/wakeup code. Although the extra argument is superfluous in
most cases, the overhead of doing an IPI is such that there should be no
noticeable impact on performance.
Revision Changes Path
1.36 +10 -2 src/sys/i386/isa/clock.c
1.27 +10 -0 src/sys/kern/kern_intr.c
1.8 +6 -2 src/sys/kern/kern_systimer.c
1.16 +40 -49 src/sys/kern/lwkt_ipiq.c
1.34 +31 -5 src/sys/kern/lwkt_msgport.c
1.84 +18 -6 src/sys/kern/lwkt_thread.c
1.10 +1 -1 src/sys/sys/systimer.h
1.71 +24 -10 src/sys/sys/thread.h
1.24 +73 -0 src/sys/sys/thread2.h
http://www.dragonflybsd.org/cvsweb/src/sys/i386/isa/clock.c.diff?r1=1.35&r2=1.36&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/kern_intr.c.diff?r1=1.26&r2=1.27&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/kern_systimer.c.diff?r1=1.7&r2=1.8&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/lwkt_ipiq.c.diff?r1=1.15&r2=1.16&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/lwkt_msgport.c.diff?r1=1.33&r2=1.34&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/lwkt_thread.c.diff?r1=1.83&r2=1.84&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/sys/systimer.h.diff?r1=1.9&r2=1.10&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/sys/thread.h.diff?r1=1.70&r2=1.71&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/sys/thread2.h.diff?r1=1.23&r2=1.24&f=u
More information about the Commits
mailing list