freebsd-dev/sys
John Baldwin b439e431bf Tweak how the MD code calls the fooclock() methods some. Instead of
passing a pointer to an opaque clockframe structure and requiring the
MD code to supply CLKF_FOO() macros to extract needed values out of the
opaque structure, just pass the needed values directly.  In practice this
means passing the pair (usermode, pc) to hardclock() and profclock() and
passing the boolean (usermode) to hardclock_cpu() and hardclock_process().
Other details:
- Axe clockframe and CLKF_FOO() macros on all architectures.  Basically,
  all the archs were taking a trapframe and converting it into a clockframe
  one way or another.  Now they can just extract the PC and usermode values
  directly out of the trapframe and pass it to fooclock().
- Renamed hardclock_process() to hardclock_cpu() as the latter is more
  accurate.
- On Alpha, we now run profclock() at hz (profhz == hz) rather than at
  the slower stathz.
- On Alpha, for the TurboLaser machines that don't have an 8254
  timecounter, call hardclock() directly.  This removes an extra
  conditional check from every clock interrupt on Alpha on the BSP.
  There is probably room for even further pruning here by changing Alpha
  to use the simplified timecounter we use on x86 with the lapic timer
  since we don't get interrupts from the 8254 on Alpha anyway.
- On x86, clkintr() shouldn't ever be called now unless using_lapic_timer
  is false, so add a KASSERT() to that affect and remove a condition
  to slightly optimize the non-lapic case.
- Change prototypeof  arm_handler_execute() so that it's first arg is a
  trapframe pointer rather than a void pointer for clarity.
- Use KCOUNT macro in profclock() to lookup the kernel profiling bucket.

Tested on:	alpha, amd64, arm, i386, ia64, sparc64
Reviewed by:	bde (mostly)
2005-12-22 22:16:09 +00:00
..
alpha Tweak how the MD code calls the fooclock() methods some. Instead of 2005-12-22 22:16:09 +00:00
amd64 Tweak how the MD code calls the fooclock() methods some. Instead of 2005-12-22 22:16:09 +00:00
arm Tweak how the MD code calls the fooclock() methods some. Instead of 2005-12-22 22:16:09 +00:00
boot MFi386: revisions 1.34 and 1.36. 2005-12-21 06:10:42 +00:00
bsm For consistency with more system include files, add a trailing '_' to 2005-05-29 16:11:34 +00:00
cam Style nit. 2005-12-19 03:43:48 +00:00
coda Fix -Wundef from compiling the amd64 LINT. 2005-12-04 10:06:06 +00:00
compat Remove linux_mib_destroy() (which I actually added in between 5.0 and 5.1) 2005-12-15 16:30:41 +00:00
conf Drivers for AMD-8111 and NVIDIA nForce2/3/4 SMBus 2.0 controllers. 2005-12-21 15:49:51 +00:00
contrib Move PFSTATE_EXPIRING from sync_flags to a new local_flags. sync_flags has 2005-12-20 00:33:33 +00:00
crypto Add VIA/ACE "PadLock" support as a crypto(9) driver. 2005-08-18 00:30:22 +00:00
ddb Fix -Wundef. 2005-12-04 02:12:43 +00:00
dev Return BUS_PROBE_GENERIC rather than 0 in the probe routine. 2005-12-22 16:25:22 +00:00
doc
fs Eradicate caddr_t from the VFS API. 2005-12-14 00:49:52 +00:00
gdb check return value of gdb_rx_varhex 2005-03-28 18:31:18 +00:00
geom MFp4: Typo fix (without it the XML GEOM tree wasn't consistent). 2005-12-19 06:05:40 +00:00
gnu Eradicate caddr_t from the VFS API. 2005-12-14 00:49:52 +00:00
i4b Fix -Wundef warnings found when compiling i386 LINT, GENERIC and 2005-12-05 11:58:35 +00:00
i386 Tweak how the MD code calls the fooclock() methods some. Instead of 2005-12-22 22:16:09 +00:00
ia64 Tweak how the MD code calls the fooclock() methods some. Instead of 2005-12-22 22:16:09 +00:00
isa Tweak how the MD code calls the fooclock() methods some. Instead of 2005-12-22 22:16:09 +00:00
isofs/cd9660 Normalize a significant number of kernel malloc type names: 2005-10-31 15:41:29 +00:00
kern Tweak how the MD code calls the fooclock() methods some. Instead of 2005-12-22 22:16:09 +00:00
libkern Normalize a significant number of kernel malloc type names: 2005-10-31 15:41:29 +00:00
modules Enable the cs and disable the amdsmb and nfsmb on pc98. 2005-12-22 16:16:42 +00:00
net 1) remove useless check of loop_copy - corresponding code was removed in 2005-12-22 12:16:20 +00:00
net80211 - Fix VLAN_INPUT_TAG() macro, so that it doesn't touch mtag in 2005-12-18 18:24:27 +00:00
netatalk - Store pointer to the link-level address right in "struct ifnet" 2005-11-11 16:04:59 +00:00
netatm don't assume char is signed 2005-12-21 00:19:08 +00:00
netgraph Fix memory leak. 2005-12-09 07:09:44 +00:00
netinet Add RFC 3378 EtherIP support. This change makes it possible to add gif 2005-12-21 21:29:45 +00:00
netinet6 Add RFC 3378 EtherIP support. This change makes it possible to add gif 2005-12-21 21:29:45 +00:00
netipsec Fix -Wundef warnings found when compiling i386 LINT, GENERIC and 2005-12-05 11:58:35 +00:00
netipx Include ip_options.h for IPX-IP encapsulation. 2005-11-20 16:17:12 +00:00
netkey Fix -Wundef from compiling the amd64 LINT. 2005-12-04 10:06:06 +00:00
netnatm Use sparse initializers for "struct domain" and "struct protosw", 2005-11-09 13:29:16 +00:00
netncp Normalize a significant number of kernel malloc type names: 2005-10-31 15:41:29 +00:00
netsmb Prevent module unloading if there are active connections. 2005-11-22 02:15:46 +00:00
nfs Fixes for NFS crashes on architectures that require strict alignment. 2005-07-14 20:08:27 +00:00
nfs4client Normalize a significant number of kernel malloc type names: 2005-10-31 15:41:29 +00:00
nfsclient Improve upon rev 1.133 where NFS/TCP would not reconnect. 2005-12-12 23:18:05 +00:00
nfsserver Normalize a significant number of kernel malloc type names: 2005-10-31 15:41:29 +00:00
opencrypto Fix bogus check. It was possible to panic the kernel by giving 0 length. 2005-08-18 11:58:03 +00:00
pc98 Tweak how the MD code calls the fooclock() methods some. Instead of 2005-12-22 22:16:09 +00:00
pccard Remove the kernel portion of OLDCARD. I'm working on a replacement 2005-09-25 21:29:32 +00:00
pci Use the copy of the card's MAC address saved in tulip_enaddr() in the softc 2005-12-22 16:18:23 +00:00
posix4 mqueue.h has been superceded by sys/mqueue.h thanks to David Xu's work. 2005-11-28 02:58:30 +00:00
powerpc Tweak how the MD code calls the fooclock() methods some. Instead of 2005-12-22 22:16:09 +00:00
rpc Fix -Wundef. 2005-12-04 02:12:43 +00:00
security Normalize a significant number of kernel malloc type names: 2005-10-31 15:41:29 +00:00
sparc64 Tweak how the MD code calls the fooclock() methods some. Instead of 2005-12-22 22:16:09 +00:00
sys Tweak how the MD code calls the fooclock() methods some. Instead of 2005-12-22 22:16:09 +00:00
tools Eradicate caddr_t from the VFS API. 2005-12-14 00:49:52 +00:00
ufs Eradicate caddr_t from the VFS API. 2005-12-14 00:49:52 +00:00
vm Don't access fs->first_object after dropping reference to it. 2005-12-20 12:27:59 +00:00
Makefile When building cscopnamefile, default architecture to ${MACHINE}, not i386. 2005-03-08 00:09:41 +00:00