freebsd-src/sys
Konstantin Belousov 2c66cccab7 Save and restore segment registers on amd64 when entering and leaving
the kernel on amd64. Fill and read segment registers for mcontext and
signals. Handle traps caused by restoration of the
invalidated selectors.

Implement user-mode creation and manipulation of the process-specific
LDT descriptors for amd64, see sysarch(2).

Implement support for TSS i/o port access permission bitmap for amd64.

Context-switch LDT and TSS. Do not save and restore segment registers on
the context switch, that is handled by kernel enter/leave trampolines
now. Remove segment restore code from the signal trampolines for
freebsd/amd64, freebsd/ia32 and linux/i386 for the same reason.

Implement amd64-specific compat shims for sysarch.

Linuxolator (temporary ?) switched to use gsbase for thread_area pointer.

TODO:
Currently, gdb is not adapted to show segment registers from struct reg.
Also, no machine-depended ptrace command is added to set segment
registers for debugged process.

In collaboration with:	pho
Discussed with:	peter
Reviewed by:	jhb
Linuxolator tested by:	dchagin
2009-04-01 13:09:26 +00:00
..
amd64 Save and restore segment registers on amd64 when entering and leaving 2009-04-01 13:09:26 +00:00
arm Fix the userland, RAS, version of atomic_fetchadd_32 : 2009-03-31 23:47:18 +00:00
boot Probe size of installed memory modules from loader and display it 2009-03-31 21:02:55 +00:00
bsm Merge OpenBSM 1.1 beta 1 from OpenBSM vendor branch to head, both 2009-03-02 13:29:18 +00:00
cam GCC attacks! 2009-02-16 18:02:32 +00:00
cddl Move dtnfsclient.c in the cddl tree to nfs_kdtrace.c in the nfsclient 2009-03-25 17:47:22 +00:00
compat Add all segment registers for the amd64 CPU to struct reg and mcontext. 2009-04-01 12:44:17 +00:00
conf Save and restore segment registers on amd64 when entering and leaving 2009-04-01 13:09:26 +00:00
contrib For all files including net/vnet.h directly include opt_route.h and 2009-02-27 14:12:05 +00:00
crypto identify routine takes driver_t *, not device_t *. 2009-02-05 19:30:28 +00:00
ddb Prefer prototypes to k&r definitions. 2009-03-09 13:32:19 +00:00
dev Add additional data on the MIIBUS WTF that I committed earlier. 2009-03-31 19:23:59 +00:00
fs Do not use null_bypass for VOP_ISLOCKED, directly call default 2009-03-18 13:54:35 +00:00
gdb
geom Sharpen the saw: 2009-03-30 01:03:58 +00:00
gnu Fix two issues with bufdaemon, often causing the processes to hang in 2009-03-16 15:39:46 +00:00
i386 Fill the fsbase and gsbase fields of the mcontext structure on i386. 2009-04-01 12:46:05 +00:00
ia64 Add AT_EXECPATH ELF auxinfo entry type. The value's a_ptr is a pointer 2009-03-17 12:50:16 +00:00
isa Allow syscons to work on amd64 and i386 without any hints: 2009-03-05 19:10:17 +00:00
kern Fix memory leak in semunload(). 2009-03-30 15:01:29 +00:00
kgssapi Call svc_freereq() before returning from the service proc. 2008-11-12 15:31:05 +00:00
legacy/dev remove now-redunant cardbus attachment lines. 2009-03-09 13:25:34 +00:00
libkern Add memmove() to the kernel, making the kernel compile with Clang. 2009-02-28 16:21:25 +00:00
mips Mark the declaration of bus_space_map 'static' as the implementation is. 2009-03-28 23:24:34 +00:00
modules Remove ATH_SUPPORT_TDMA and use IEEE80211_SUPPORT_TDMA instead. It 2009-03-30 19:23:49 +00:00
net enable setting the mac address of 802.11 devices 2009-03-28 17:36:56 +00:00
net80211 Hoist 802.11 encapsulation up into net80211: 2009-03-30 21:53:27 +00:00
netatalk Remove local variable 'ddp' from DDP's attach and detach routines; they 2009-02-04 20:04:32 +00:00
netgraph Make Netgraph compile with Clang. 2009-03-03 18:47:33 +00:00
netinet Don't call m_freem() after ip_output(), as it always consumes 2009-03-24 01:22:12 +00:00
netinet6 Introduce a number of changes to the MROUTING code. 2009-03-19 01:43:03 +00:00
netipsec Fixed comments so it stays in 80 chars by line 2009-03-23 16:20:39 +00:00
netipx Add missing "goto set_head" for SO_IPX_CHECKSUM; otherwise we fall through 2008-12-11 10:29:35 +00:00
netnatm Remove IFF_NEEDSGIANT, a compatibility infrastructure introduced 2009-03-15 14:21:05 +00:00
netncp
netsmb Implement device cloning for /dev/nsmb, the netsmb control pseudo-device. 2008-11-03 14:23:15 +00:00
nfs
nfs4client Expand the per-node access cache to cache permissions for multiple users. 2009-03-20 21:12:38 +00:00
nfsclient Move dtnfsclient.c in the cddl tree to nfs_kdtrace.c in the nfsclient 2009-03-25 17:47:22 +00:00
nfsserver Fix an mbuf leak in the error path. 2009-03-19 14:13:18 +00:00
nlm Don't call svc_freereq() before svc_freeargs(). 2008-11-12 15:30:30 +00:00
opencrypto Fix return type for detach routine (should be int) 2009-02-05 17:43:12 +00:00
pc98 MFi386: r190447 2009-03-27 03:45:42 +00:00
pci intpm: minor enhancements 2009-03-16 16:15:14 +00:00
powerpc Disable ATA DMA for ATAPI devices for now. Apparently, certain revisions 2009-03-25 03:42:49 +00:00
rpc Use the correct creds when reconnecting so that we have enough privilege to 2009-02-05 11:48:10 +00:00
security Get rid of VSTAT and replace it with VSTAT_PERMS, which is somewhat 2009-03-29 17:45:48 +00:00
sparc64 Revert r190105 so that removing options KDB but DDB or GDB being 2009-03-20 17:10:50 +00:00
sun4v - There's no need to wrap kdb_active and kdb_trap() in #ifdef KDB as 2009-03-19 20:46:51 +00:00
sys Implement support for RTLD_NODELETE flag for dlopen() and -z nodelete 2009-03-30 08:47:28 +00:00
tools Add SDT DTrace probes for VFS vnode operations in the vfs:vop 2009-03-29 03:30:15 +00:00
ufs Correct typo. 2009-03-27 15:46:02 +00:00
vm Eliminate dead code. 2009-04-01 04:36:37 +00:00
xdr Add memmove() to the kernel, making the kernel compile with Clang. 2009-02-28 16:21:25 +00:00
xen Merge in support for Xen HVM on amd64 architecture. 2009-03-11 15:30:12 +00:00
Makefile Removal pccard directory requires removing it from the list of things 2009-02-15 18:19:24 +00:00