opnsense-src/sys
Marcel Moolenaar c2e4eb969f Change the second (and last) argument of cpu_set_upcall(). Previously
we were passing in a void* representing the PCB of the parent thread.
Now we pass a pointer to the parent thread itself.
The prime reason for this change is to allow cpu_set_upcall() to copy
(parts of) the trapframe instead of having it done in MI code in each
caller of cpu_set_upcall(). Copying the trapframe cannot always be
done with a simply bcopy() or may not always be optimal that way. On
ia64 specifically the trapframe contains information that is specific
to an entry into the kernel and can only be used by the corresponding
exit from the kernel. A trapframe copied verbatim from another frame
is in most cases useless without some additional normalization.

Note that this change removes the assignment to td->td_frame in some
implementations of cpu_set_upcall(). The assignment is redundant.
A previous call to cpu_thread_setup() already did the exact same
assignment. An added benefit of removing the redundant assignment is
that we can now change td_pcb without nasty side-effects.

This change officially marks the ability on ia64 for 1:1 threading.

Not tested on: amd64, powerpc
Compile & boot tested on: alpha, sparc64
Functionally tested on: i386, ia64
2003-06-04 22:46:27 +00:00
..
alpha Change the second (and last) argument of cpu_set_upcall(). Previously 2003-06-04 21:13:21 +00:00
amd64 Change the second (and last) argument of cpu_set_upcall(). Previously 2003-06-04 22:46:27 +00:00
arm sys/sys/limits.h: 2003-05-19 20:29:07 +00:00
boot Don't use a C compiler to assemble a pure asm file. 2003-06-02 02:37:27 +00:00
cam Check in some months long pending minor debug output changes. 2003-06-02 00:37:42 +00:00
coda - Move p->p_sigmask to td->td_sigmask. Signal masks will be per thread with 2003-03-31 22:49:17 +00:00
compat Put definition of struct svr4_sockcache_entry in a .h file rather than 2003-05-31 20:33:18 +00:00
conf We are at 5.1-CURRENT now 2003-06-02 04:58:43 +00:00
contrib This commit was generated by cvs2svn to compensate for changes in r115367, 2003-05-28 17:32:31 +00:00
crypto Assembly files put thru the C preprocessor need to have C style comments. 2003-04-21 16:30:12 +00:00
ddb Make "where" an alias for "trace" 2003-06-01 09:06:23 +00:00
dev Batton down the hatches!!! 2003-06-04 21:10:15 +00:00
fs Don't unlock the parent directory vnode twice if the ISDOTDOT flag 2003-06-01 09:16:26 +00:00
geom Introduce g_provider_by_name() function, and use it. 2003-06-04 18:17:52 +00:00
gnu Remove extra ';' 2003-05-31 18:52:38 +00:00
i4b Fix off-by-one errors in range checks of state machine states & events. 2003-05-31 18:54:02 +00:00
i386 Change the second (and last) argument of cpu_set_upcall(). Previously 2003-06-04 21:13:21 +00:00
ia64 Fix the dreaded double counting that was present on alpha as well and 2003-06-04 21:56:10 +00:00
isa Use __FBSDID(). 2003-06-02 16:32:55 +00:00
isofs/cd9660 emove unused variable(s). 2003-05-31 20:19:13 +00:00
kern Change the second (and last) argument of cpu_set_upcall(). Previously 2003-06-04 21:13:21 +00:00
libkern Deprecate machine/limits.h in favor of new sys/limits.h. 2003-04-29 13:36:06 +00:00
modules Add a geom_vol_ffs module and hook up to the build. 2003-06-03 20:32:13 +00:00
net Fix a typo in an ATM media name. As this name was not use yet, no problems 2003-06-02 09:13:08 +00:00
netatalk - Use if_broadcastaddr from struct ifnet rather than relying on 2003-03-21 17:53:16 +00:00
netatm Use __FBSDID rather than rcsid[]. 2003-04-03 21:36:33 +00:00
netgraph fix a cut-n-paste error. 2003-05-15 18:51:28 +00:00
netinet Compensate for decreasing the minimum retransmit timeout. 2003-06-04 10:03:55 +00:00
netinet6 Add definitions for IN6ADDR_LINKLOCAL_ALLMDNS_INIT and INADDR_ALLMDNS_GROUP. 2003-04-29 22:03:46 +00:00
netipsec Introduce an M_ASSERTPKTHDR() macro which performs the very common task 2003-04-08 14:25:47 +00:00
netipx
netkey Introduce an M_ASSERTPKTHDR() macro which performs the very common task 2003-04-08 14:25:47 +00:00
netnatm Introduce an M_ASSERTPKTHDR() macro which performs the very common task 2003-04-08 14:25:47 +00:00
netncp - Merge struct procsig with struct sigacts. 2003-05-13 20:36:02 +00:00
netsmb - Merge struct procsig with struct sigacts. 2003-05-13 20:36:02 +00:00
nfs
nfsclient Remove unsed variables. 2003-05-31 20:05:25 +00:00
nfsserver Add /* FALLTHROUGH */ 2003-05-31 18:20:26 +00:00
opencrypto Flush my local cache of cryto subsystem fixes: 2003-06-02 23:28:06 +00:00
pc98 MFi386: revision 1.199 2003-06-01 04:51:07 +00:00
pccard 1. Allow drivers to query CIS strings from OLDCARD. 2003-04-23 23:39:21 +00:00
pci Change a : 2003-06-01 22:09:12 +00:00
posix4
powerpc Change the second (and last) argument of cpu_set_upcall(). Previously 2003-06-04 21:13:21 +00:00
rpc
security Also implement mpo_copy_mbuf_label() for mac_lomac, or labels may 2003-06-02 18:49:11 +00:00
sparc64 Change the second (and last) argument of cpu_set_upcall(). Previously 2003-06-04 21:13:21 +00:00
sys Change the second (and last) argument of cpu_set_upcall(). Previously 2003-06-04 21:13:21 +00:00
tools MFp4: 2003-03-28 06:43:50 +00:00
ufs Return EOPNOTSUPP for attempted EA operations on VCHR vnodes in UFS2; 2003-06-01 02:42:18 +00:00
vm - Add further vm object locking to vm_object_deallocate(), specifically, 2003-06-04 21:07:42 +00:00
Makefile Exclude sys/boot for amd64. There are still toolchain issues to deal 2003-05-08 06:35:39 +00:00