ƒ»178000 128 195 142 136 157 1765 456 227 180 169 160 303 168 189 302 302 177 302 323 183 125 424 141 384 349 162 187 286 378 139 618 209 174 184 189 128 138 398 185 129 163 277 145 776 164 150 156 349 125 281 188 220 136 164 430 770 213 213 132 149 275 282 131 98 132 164 195 187 338 140 270 562 354 219 529 274 966 940 127 847 2276 1173 754 1202 177 328 405 488 329 549 507 159 144 586 290 10908 178 190 510 500 493 417 730 384 537 1398 404 158 1308 211 708 708 493 182 164 365 284 234 110 128 160 135 399 286 252 261 169 162 286 K 10 svn:author V 3 phk K 8 svn:date V 27 2008-04-08T09:54:37.000000Z K 7 svn:log V 102 MFC 1.44,1.45: Report CFA capability. 1.46: Un-cut&paste argument processing, fix things lint found. END K 10 svn:author V 5 kevlo K 8 svn:date V 27 2008-04-08T10:24:42.000000Z K 7 svn:log V 48 Remove some long-dead code Reviewed by: cognet END K 10 svn:author V 3 phk K 8 svn:date V 27 2008-04-08T10:48:21.000000Z K 7 svn:log V 44 MFC: Add support for "atacontrol spindown" END K 10 svn:author V 3 phk K 8 svn:date V 27 2008-04-08T11:04:06.000000Z K 7 svn:log V 65 MFC 1.310: In abort2(2): Accept a NULL arg pointer if nargs == 0 END K 10 svn:author V 2 bz K 8 svn:date V 27 2008-04-08T11:51:17.000000Z K 7 svn:log V 1672 In some situations we were not clearing pending link state attentions. Because of this we were not getting further interrupts for link state changes, thus never went into iface UP state and thus could not transmit. The only way out of this was an incoming packet generating an rx interrupt and making us call into bge_link_upd. Up to rev. 1.101, in bge_start_locked, we only returned instantly if there was 'no link AND nothing queued for tx'. So with a packet queued for tx, we hit the register scrubbing at the end of bge_start_locked and were out fine. We simply lost a packet or two but got the interrupts need to get into UP state. With rev. 1.102 this was turned into 'if there is no link OR there is nothing to send' (correct behaviour) and as long as there is no link we never hit the register scrubbing and consequently never got the link UP. What we do now is force an interrupt at the end of bge_ifmedia_upd_locked so we will call bge_link_upd, clear the link state attention and get further interrupts. This helps to get the iface UP on an idle network or at least to get it UP faster not depending on an rx intr anymore. In case you could not get a DHCP lease or it took very long, it was because of this. It is unknown which chips are affected by this. ASIC rev. 0x2003 was the most popular trouble candidate. At least the fiber cards should have been working fine. Which register to scrub is currently under discussion. The comitted solution was tested and found to work for a lot of setups. It might not help with MSI. The reason why we end up in such a situation is entirely unknown. PR: kern/111804 Tested by: phk, scottl at Y! MFC after: 14 days END K 10 svn:author V 6 rpaulo K 8 svn:date V 27 2008-04-08T12:35:56.000000Z K 7 svn:log V 360 MFC r1.97: Sync with rev 1.63 of NetBSD's ums.c: If a mouse has both a wheel and a Z direction we report both. XXX Due to tradition the wheel is reported as the Z direction (and the Z direction as W). Now Apple's Mighty Mouse is fully supported, except the X11 mouse driver doesn't know what to do with the new coordinate. END K 10 svn:author V 3 kib K 8 svn:date V 27 2008-04-08T12:57:26.000000Z K 7 svn:log V 134 Bump __FreeBSD_version after the implementation of the openat() and related syscalls both for the native FreeBSD ABI and linuxolator. END K 10 svn:author V 4 nyan K 8 svn:date V 27 2008-04-08T13:10:57.000000Z K 7 svn:log V 87 Always set the bell_pitch to 800. This catch up with the sysbeep() argument changing. END K 10 svn:author V 4 nyan K 8 svn:date V 27 2008-04-08T13:15:56.000000Z K 7 svn:log V 76 MFi386: revision 1.474.2.5 Add USB->RS232 devices to the GENERIC kernel. END K 10 svn:author V 3 jhb K 8 svn:date V 27 2008-04-08T14:23:23.000000Z K 7 svn:log V 68 MFC: Explicitly bypass bpf(4) for media test packets during attach. END K 10 svn:author V 6 marcel K 8 svn:date V 27 2008-04-08T16:34:50.000000Z K 7 svn:log V 207 Quick fix for the kernel build breakage in netgraph and the aliasing warning in libthr. A more elaborate fix is in the works that makes sure that all variants have proper inline functions with proper types. END K 10 svn:author V 6 rpaulo K 8 svn:date V 27 2008-04-08T16:36:49.000000Z K 7 svn:log V 73 MFC: Add Qualcomm ZTE CMDMA MSM modem to the list of supported modems. END K 10 svn:author V 6 rpaulo K 8 svn:date V 27 2008-04-08T16:39:00.000000Z K 7 svn:log V 94 MFC r1.11: Add Qualcomm, Inc. ZTE CDMA Technologies MSM to the list of supported devices. END K 10 svn:author V 7 trhodes K 8 svn:date V 27 2008-04-08T17:33:57.000000Z K 7 svn:log V 205 MFC revisions 1.56 and 1.57: Bring the DIAGNOSTICS section in ed.4 closer to reality by removing missing diagnostic messages and adding a few found in the code. PR: 51891 Properly Xref device.hints(5). END K 10 svn:author V 7 trhodes K 8 svn:date V 27 2008-04-08T17:40:43.000000Z K 7 svn:log V 205 MFC revisions 1.56 and 1.57: Bring the DIAGNOSTICS section in ed.4 closer to reality by removing missing diagnostic messages and adding a few found in the code. PR: 51891 Properly Xref device.hints(5). END K 10 svn:author V 3 sam K 8 svn:date V 27 2008-04-08T17:48:02.000000Z K 7 svn:log V 85 change taskqueue_start_threads to create threads instead of proc's Reviewed by: jhb END K 10 svn:author V 3 sam K 8 svn:date V 27 2008-04-08T17:53:33.000000Z K 7 svn:log V 209 o add a mountroot event handler that fires when / is mounted; this information was lost when root started being mounted by init o remove SI_SUB_MOUNT_ROOT since it's no longer meaningful MFC after: 2 weeks END K 10 svn:author V 4 jkim K 8 svn:date V 27 2008-04-08T17:55:26.000000Z K 7 svn:log V 229 - Add write(2) support for psm(4) in native operation level. Now arbitrary commands can be written to /dev/psm%d and status can be read back from it. - Reflect the change in psm(4) and bump version for ports. MFC after: 1 week END K 10 svn:author V 3 sam K 8 svn:date V 27 2008-04-08T18:54:42.000000Z K 7 svn:log V 91 spell pidfile correctly so multiple wpa_supplicant processes can be run MFC after: 1 week END K 10 svn:author V 4 jkim K 8 svn:date V 27 2008-04-08T19:09:45.000000Z K 7 svn:log V 32 Clean up and fix style(9) nits. END K 10 svn:author V 5 remko K 8 svn:date V 27 2008-04-08T19:43:00.000000Z K 7 svn:log V 329 Remove ftp.hk.super.net, the DNS isn't pointing to anything at the moment. I tested this as well as the submitter and couldn't resolve this either, since I dont want to "announce" dead mirrors, I'll remove it from the list. PR: 122567 Submitted by: vs Approved by: imp (mentor, implicit for trivial changes) MFC after: 1 week END K 10 svn:author V 3 sam K 8 svn:date V 27 2008-04-08T23:00:04.000000Z K 7 svn:log V 49 add support wired interfaces MFC after: 2 weeks END K 10 svn:author V 3 sam K 8 svn:date V 27 2008-04-08T23:12:15.000000Z K 7 svn:log V 291 o add rc.conf knobs to set the wpa_supplicant program, logging flags, and config file o change default logging options from -q to -s (log to syslog); this is currently broken for boot-time startup as syslogd is started too late but that'll be dealt with separately MFC after: 2 weeks END K 10 svn:author V 4 emax K 8 svn:date V 27 2008-04-08T23:34:12.000000Z K 7 svn:log V 255 Add rfcomm_pppd_server rc script to allow start rfcomm_pppd(8) in server mode at boot time. Multiple profiles can be started at the same time. The whole idea is very similar to the ppp rc script. Document Bluetooth knobs in rc.conf(5) MFC after: 1 week END K 10 svn:author V 4 emax K 8 svn:date V 27 2008-04-08T23:50:03.000000Z K 7 svn:log V 69 Set defaults for the rfcomm_pppd_server rc script MFC after: 1 week END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2008-04-09T00:38:32.000000Z K 7 svn:log V 91 MFC r1.68 Improve EtherIP interaction with the bridge Submitted by: Eugene Grosbein END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2008-04-09T00:47:41.000000Z K 7 svn:log V 189 MFC if_lagg.c r1.26-27, ieee8023ad_lacp.c r1.13-15, ieee8023ad_lacp.h r1.9-11 - Pass any unmatched slowprotocols frames up the stack - Switch the LACP state machine over to its own mutex END K 10 svn:author V 6 marcel K 8 svn:date V 27 2008-04-09T01:00:35.000000Z K 7 svn:log V 282 Reimplement atomic_add, atomic_clear, atomic_set and atomic_subtract so that all implemented variants have proper prototypes. The 8-bit, 16-bit and 64-bit variants are not implemented. This really fixes the current build breakages caused by type casting and struct aliasing rules. END K 10 svn:author V 6 marcel K 8 svn:date V 27 2008-04-09T03:32:48.000000Z K 7 svn:log V 44 Unbreak after removal of SI_SUB_MOUNT_ROOT. END K 10 svn:author V 2 bz K 8 svn:date V 27 2008-04-09T05:17:18.000000Z K 7 svn:log V 526 Take the route mtu into account, if available, when sending an ICMP unreach, frag needed. Up to now we only looked at the interface MTU. Make sure to only use the minimum of the two. In case IPSEC is compiled in, loop the mtu through ip_ipsec_mtu() to avoid any further conditional maths. Without this, PMTU was broken in those cases when there was a route with a lower MTU than the MTU of the outgoing interface. PR: kern/122338 Tested by: Mark Cammidge mark peralex.com Reviewed by: silence on net@ MFC after: 2 weeks END K 10 svn:author V 6 grehan K 8 svn:date V 27 2008-04-09T08:50:37.000000Z K 7 svn:log V 113 Include before to get typedefs required by new atomic.h. Fixes tinderbox LINT build. END K 10 svn:author V 3 phk K 8 svn:date V 27 2008-04-09T10:01:08.000000Z K 7 svn:log V 82 MFC: the fifolog tools. (Will be connected to build after a make universe check) END K 10 svn:author V 3 flz K 8 svn:date V 27 2008-04-09T15:08:31.000000Z K 7 svn:log V 92 Add a distfile target to generate a distfile to be used by the ports-mgmt/pkg_install port. END K 10 svn:author V 3 dfr K 8 svn:date V 27 2008-04-09T15:43:19.000000Z K 7 svn:log V 97 Fix a problem which stopped this from starting up on a kernel compiled without the INET6 option. END K 10 svn:author V 3 phk K 8 svn:date V 27 2008-04-09T16:01:07.000000Z K 7 svn:log V 36 MFC: Hitch fifolog tools into build END K 10 svn:author V 3 jhb K 8 svn:date V 27 2008-04-09T16:17:50.000000Z K 7 svn:log V 46 MFC: Add an '-a' option which maps to '-RpP'. END K 10 svn:author V 8 rdivacky K 8 svn:date V 27 2008-04-09T16:42:50.000000Z K 7 svn:log V 300 Remove using magic value of -1 to distinguish between linux_open() and linux_openat(). Instead just pass AT_FDCWD into linux_common_open() for the linux_open() case. This prevents passing -1 as a dirfd to openat() from succeeding which is wrong. Suggested by: rwatson, kib Approved by: kib (mentor) END K 10 svn:author V 3 jhb K 8 svn:date V 27 2008-04-09T17:59:17.000000Z K 7 svn:log V 93 Revert the previous change and let PROBE_KEYBOARD function identical to -P in boot2/gptboot. END K 10 svn:author V 3 sam K 8 svn:date V 27 2008-04-09T18:40:10.000000Z K 7 svn:log V 37 fix locking botch MFC after: 1 week END K 10 svn:author V 3 mav K 8 svn:date V 27 2008-04-09T19:03:19.000000Z K 7 svn:log V 71 Add memory barriers to the node locking operations. Add some comments. END K 10 svn:author V 5 peter K 8 svn:date V 27 2008-04-09T19:05:59.000000Z K 7 svn:log V 182 MFC: collect per-cpu stats for %user, %system, %idle etc. Counters are stored in pcpu area and merged at collection time rather than a common set being manipulated with atomic ops. END K 10 svn:author V 5 peter K 8 svn:date V 27 2008-04-09T19:07:34.000000Z K 7 svn:log V 51 MFC: add -P flag etc for displaying per-cpu stats. END K 10 svn:author V 3 sam K 8 svn:date V 27 2008-04-09T19:07:48.000000Z K 7 svn:log V 683 Do image loading in a context known to have a root directory: o create a private task queue thread that sets up root and current directories (hooking mountroot event as needed); this is necessary because task queue threads are parented from proc0 and it does not have a reference to rootvnode (lost when / mounting moved to init) o bounce image load + unload requests through the private task q so we can load images even when the request is made from a thread that does not have sufficient context (e.g. task q thread) o add a check in the task q thread to fail requests before root is mounted (just in case) Reviewed by: jhb, mlaier, luigi (glance) MFC after: 1 month END K 10 svn:author V 5 peter K 8 svn:date V 27 2008-04-09T19:08:43.000000Z K 7 svn:log V 70 MFC: merge -P flag for displaying per-cpu %user/%system/%idle states. END K 10 svn:author V 5 peter K 8 svn:date V 27 2008-04-09T19:47:20.000000Z K 7 svn:log V 56 MFC: record per-cpu stats for %user/%nice/%system/%idle END K 10 svn:author V 5 peter K 8 svn:date V 27 2008-04-09T19:48:06.000000Z K 7 svn:log V 62 MFC: backport -P (per-cpu) stats for %user/%system/%idle etc. END K 10 svn:author V 3 pjd K 8 svn:date V 27 2008-04-09T20:19:55.000000Z K 7 svn:log V 256 - Use LK_TYPE_MASK where needed. Actually after sys/sys/lockmgr.h:1.69 it is no longer needed, but for now we still want to be consistent with other similar checks in the tree. - Call ASSERT_VOP_ELOCKED() only when vget() returns 0. Reviewed by: jeff END K 10 svn:author V 3 kan K 8 svn:date V 27 2008-04-09T20:27:53.000000Z K 7 svn:log V 33 Fix spelling mistake in comment. END K 10 svn:author V 6 marius K 8 svn:date V 27 2008-04-09T21:14:01.000000Z K 7 svn:log V 185 - Add support for IPI_PREEMPT. [1] - Add my copyright to mp_machdep.c for having implemented support for USIII and up and some fixes. Obtained from: sun4v (modulo style(9) bugs) [1] END K 10 svn:author V 4 emax K 8 svn:date V 27 2008-04-09T21:24:11.000000Z K 7 svn:log V 95 Update .Dd Pointed out by: Niclas Zeising MFC after: 1 week END K 10 svn:author V 3 flz K 8 svn:date V 27 2008-04-09T22:20:28.000000Z K 7 svn:log V 127 Add support for Verizon v740 to ubsa(4). PR: usb/122610 Submitted by: Randi Harper MFC after: 3 days END K 10 svn:author V 7 delphij K 8 svn:date V 27 2008-04-10T00:12:44.000000Z K 7 svn:log V 40 Add memrchr(3). Obtained from: OpenBSD END K 10 svn:author V 7 cvs2svn K 8 svn:date V 27 2008-04-10T00:12:45.000000Z K 7 svn:log V 68 This commit was manufactured by cvs2svn to create branch 'RELENG_7'. END K 10 svn:author V 7 delphij K 8 svn:date V 27 2008-04-10T00:25:53.000000Z K 7 svn:log V 333 MFC: Do nextboot -D twice during boot. The first time in rc.d/root which ensures that we can remove the file as early as possible, but shut up nextboot at this moment if the operation is failed, because /boot is not necessarily a part of /; the newly added second run is placed in rc.d/mountlate after all filesystems were mounted. END K 10 svn:author V 7 yongari K 8 svn:date V 27 2008-04-10T01:06:05.000000Z K 7 svn:log V 673 It seems that RealTek 8129/8139 chip reports invalid length of received frame under certain conditions. wpaul said the length 0xfff0 is special meaning that indicates hardware is in the process of copying a packet into host memory. But it seems there are other cases that hardware is busy or stuck in bad situation even if the received frame length is not 0xfff0. To work-around this condition, add a check that verifys that recevied frame length is in valid range. If received length is out of range reinitialize hardware to recover from stuck condition. Reported by: Mike Tancsa ( mike AT sentex DOT net ) Tested by: Mike Tancsa Obtained from: OpenBSD MFC after: 1 week END K 10 svn:author V 7 yongari K 8 svn:date V 27 2008-04-10T01:25:09.000000Z K 7 svn:log V 116 Add support for MCP73 chips. Tested by: "Daan Vreeken [PA4DAN]" ( Danovitsch AT vitsch DOT net ) MFC after: 1 week END K 10 svn:author V 6 brooks K 8 svn:date V 27 2008-04-10T01:32:49.000000Z K 7 svn:log V 117 Declare _ppp_profile_cleaned, _punct, and _punct_c local in ppp_start_profile(). Reported by: yar MFC after: 1 week END K 10 svn:author V 6 marcel K 8 svn:date V 27 2008-04-10T02:37:26.000000Z K 7 svn:log V 37 Fix copy-n-paste typos in free text. END K 10 svn:author V 5 peter K 8 svn:date V 27 2008-04-10T02:45:39.000000Z K 7 svn:log V 55 MFC: rev 1.205: compile on systems without SCTL_MASK32 END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2008-04-10T04:01:26.000000Z K 7 svn:log V 178 MFC if_bridge.c r1.106, if_bridgevar.h r1.24 ifbridge.c r1.12, ifconfig.8 r1.144 Add an option to limit the number of source MACs that can be behind a bridge interface. END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2008-04-10T05:03:55.000000Z K 7 svn:log V 185 Sync to HEAD. - Simplify the error handling - Nuke licence clause 3 & 4 - Drop frames to any of the reserved multicast addresses - Remove duplicated code for testing local packets. END K 10 svn:author V 3 dfr K 8 svn:date V 27 2008-04-10T09:39:29.000000Z K 7 svn:log V 39 MFC: Kernel mode Network Lock Manager. END K 10 svn:author V 3 dfr K 8 svn:date V 27 2008-04-10T09:40:06.000000Z K 7 svn:log V 7 Regen. END K 10 svn:author V 2 ru K 8 svn:date V 27 2008-04-10T09:56:57.000000Z K 7 svn:log V 41 Add forgotten -H, -h, and -P to usage(). END K 10 svn:author V 3 kib K 8 svn:date V 27 2008-04-10T12:13:56.000000Z K 7 svn:log V 72 Add the restrict qualifiers to the pointer arguments of the readlinkat. END K 10 svn:author V 2 ru K 8 svn:date V 27 2008-04-10T12:16:20.000000Z K 7 svn:log V 103 Fix printing of sockaddr prefixes in verbose mode. PR: bin/122403 Submitted by: az MFC after: 3 days END K 10 svn:author V 3 dfr K 8 svn:date V 27 2008-04-10T12:54:53.000000Z K 7 svn:log V 95 If we can't find or load the kernel NLM support, don't just go ahead and try to use it anyway. END K 10 svn:author V 3 sos K 8 svn:date V 27 2008-04-10T13:05:05.000000Z K 7 svn:log V 245 Add experimental support for SATA Port Multipliers Support is working on the Silicon Image SiI3124/3132. Support is working on some AHCI chips but far from all. Remember this is WIP, so test reports and (constructive) suggestions are welcome! END K 10 svn:author V 2 ru K 8 svn:date V 27 2008-04-10T14:02:00.000000Z K 7 svn:log V 49 Clean up makefiles and a manpage. OK'ed by: phk END K 10 svn:author V 4 jkim K 8 svn:date V 27 2008-04-10T15:17:41.000000Z K 7 svn:log V 176 - Add ASUS G2K laptop support. - Add DLED and GLED found on newer ASUS laptops. - Turn on BLED, TLED, and WLED by default as other OSes. Reviewed by: philip MFC after: 3 days END K 10 svn:author V 3 alc K 8 svn:date V 27 2008-04-10T16:04:50.000000Z K 7 svn:log V 469 Correct pmap_copy()'s method for extracting the physical address of a 2/4MB page from a PDE. Specifically, change it to use PG_PS_FRAME, not PG_FRAME, to extract the physical address of a 2/4MB page from a PDE. Change the last argument passed to pmap_pv_insert_pde() from a vm_page_t representing the first 4KB page of a 2/4MB page to the vm_paddr_t of the 2/4MB page. This avoids an otherwise unnecessary conversion from a vm_paddr_t to a vm_page_t in pmap_copy(). END K 10 svn:author V 2 ru K 8 svn:date V 27 2008-04-10T16:17:54.000000Z K 7 svn:log V 262 Fix "top -P" (`&' mistyped as `&&' and a botched logic). The bug was unnoticed on non-i386 because mp_maxid is initialized differently, kern.cp_times doesn't print zeroes for non-existing CPUs, so no "writing outside of array bounds" happens. MFC after: 3 days END K 10 svn:author V 8 takawata K 8 svn:date V 27 2008-04-10T18:38:31.000000Z K 7 svn:log V 121 Don't break identity mapping set up for ACPI resume path. With this change, BSP processor context seems to be recovered. END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2008-04-10T19:54:54.000000Z K 7 svn:log V 432 Merge audit_arg.c:1.18, audit_bsm.c:1.25, audit_bsm_klib.c:1.10, audit_private.h:1.17 from HEAD to RELENG_7: Rename several audit functions in the global kernel symbol namespace to have audit_ on the front: - canon_path -> audit_canon_path - msgctl_to_event -> audit_msgctl_to_event - semctl_to_event -> audit_semctl_to_event Note that audit.c:1.38 is not merged as changes it depends on have also not yet been merged. END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2008-04-10T20:00:18.000000Z K 7 svn:log V 177 MFC audit.c:1.39, audit_bsm_klib.c:1.11, audit_private.h:1.19 from HEAD to RELENG_7: Add audit_prefixes to two more globally visible functions in the Audit implementation. END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2008-04-10T20:15:35.000000Z K 7 svn:log V 869 Merge kern_linker.c:1.153, linker.h:1.50 from HEAD to RELENG_7: The kernel linker includes a number of utility functions to look up symbol information in support of DDB(4); these functions bypass normal linker locking as they may run in contexts where locking is unsafe (such as the kernel debugger). Add a new interface linker_ddb_search_symbol_name(), which looks up a symbol name and offset given an address, and also linker_search_symbol_name() which does the same but *does* follow the locking conventions of the linker. Unlike existing functions, these functions place the name in a caller-provided buffer, which is stable even after linker locks have been released. These functions will be used in upcoming revisions to stack(9) to support kernel stack trace generation in contexts as part of a live, rather than suspended, kernel. END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2008-04-10T20:28:03.000000Z K 7 svn:log V 843 Merge Makefile:1.320, stack.9:1.4, kern_lock.c:1.114, subr_stack.c:1.4, stack.h:1.3, redzone.c:1.2 from HEAD to RELENG_7: Modify stack(9) stack_print() and stack_sbuf_print() routines to use new linker interfaces for looking up function names and offsets from instruction pointers. Create two variants of each call: one that is "DDB-safe" and avoids locking in the linker, and one that is safe for use in live kernels, by virtue of observing locking, and in particular safe when kernel modules are being loaded and unloaded simultaneous to their use. This will allow them to be used outside of debugging contexts. Modify two of three current stack(9) consumers to use the DDB-safe interfaces, as they run in low-level debugging contexts, such as inside lockmgr(9) and the kernel memory allocator. Update man page. END K 10 svn:author V 3 sos K 8 svn:date V 27 2008-04-10T20:40:25.000000Z K 7 svn:log V 35 Fix clearing of nVidia interrupts. END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2008-04-10T20:54:01.000000Z K 7 svn:log V 750 Merge kern_descrip.c:1.314, kern_proc.c:1.256, sysctl.h:1.153, user.h:1.71 from HEAD to RELENG_7: Add two new sysctls in support of the forthcoming procstat(1) to support its -f and -v arguments: kern.proc.filedesc - dump file descriptor information for a process, if debugging is permitted, including socket addresses, open flags, file offsets, file paths, etc. kern.proc.vmmap - dump virtual memory mapping information for a process, if debugging is permitted, including layout and information on underlying objects, such as the type of object and path. These provide a superset of the information historically available through the now-deprecated procfs(4), and are intended to be exported in an ABI-robust form. END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2008-04-10T22:09:25.000000Z K 7 svn:log V 2178 Merge stack.9:1.5, amd64/db_trace.c:1.82, amd64/stack_machdep.c:1.1, amd64/conf/GENERIC:1.489, amd64/include/stack.h:1.1, arm/db_trace.c:1.14, arm/stack_machdep.c:1.1, arm/include/stack.h:1.1, NOTES:1.1457, files:1.1254, files.amd64:1.115, files.arm:1.19, files.i386:1.588, files.ia64:1.94, files.powerpc:1.67, files.sparc64:1.93, files.sun4v:1.13, options:1.610, i386/conf/GENERIC:1.478, i386/db_trace.c:1.80, i386/stack_machdep.c:1.1, i386/include/stack.h:1.1, ia64/conf/GENERIC:1.93, ia64/db_machdep.c:1.6, ia64/stack_machdep.c:1.1, kern/subr_stack.c:1.5, pc98/conf/GENERIC:1.299, powerpc/conf/GENERIC:1.73, powerpc/include/stack.h:1.1, powerpc/db_trace.c:1.14, powerpc/stack_machdep.c:1.1, sparc64/conf/GENERIC:1.129, sparc64/include/stack.h:1.1, sparc64/db_trace.c:1.27, sparc64/stack_machdep.c:1.1, sun4v/conf/GENERIC:1.16, sun4v/include/stack.h:1.1, sun4v/db_trace.c:1.2, sun4v/stack_machdep.c:1.1, sys/stack.h:1.4 from HEAD to RELENG_7: Break out stack(9) from ddb(4): - Introduce per-architecture stack_machdep.c to hold stack_save(9). - Introduce per-architecture machine/stack.h to capture any common definitions required between db_trace.c and stack_machdep.c. - Add new kernel option "options STACK"; we will build in stack(9) if it is defined, or also if "options DDB" is defined to provide compatibility with existing users of stack(9). Add new stack_save_td(9) function, which allows the capture of a stacktrace of another thread rather than the current thread, which the existing stack_save(9) was limited to. It requires that the thread be neither swapped out nor running, which is the responsibility of the consumer to enforce. Update stack(9) man page. Build tested: amd64, arm, i386, ia64, powerpc, sparc64, sun4v Runtime tested: amd64 (rwatson), arm (cognet), i386 (rwatson) Merge i386/stack_machdep.c:1.2 from HEAD to RELENG_7: Remove duplicate $FreeBSD$ tag. Merge files.pc98:1.359, pc98/include/stack.h:1.1 from HEAD to RELENG_7: Catch up pc98 for i386 stack(9) changes: Add stub stack.h for pc98 that includes i386 pc98. Add i386 stack_machdep.c to files.pc98. Spotted by: tinderbox END K 10 svn:author V 7 delphij K 8 svn:date V 27 2008-04-10T22:43:46.000000Z K 7 svn:log V 1075 MFC revision 1.22 date: 2008/03/07 00:01:19; author: delphij; state: Exp; lines: +61 -68 Merge revisions 1.10 and 1.11 from DragonFly: - Use real getopt() handling instead of the hand-rolled and IOCCC-worthy "Micro getopt()" macros, plus clean up to the option handling code: * Sort the options in the switch statement; * Plug piddling memory leaks when processing repeated options by freeing strings before allocating them for a second time; * Die with a fatal error if the requested report file cannot be opened for appending; * Don't call init() before usage() (to prevent the usage message being mangled by changes to the terminal settings;) - Clean up the usage message, both in usage() and in the main program comment, both stylistically (sort and combine options) and for accuracy (following the manual page, make note of the -s and -S flags, and use the term 'send' instead of 'say' to reduce confusion (SAY is the name of a command for output to the user, not the connection.)) Obtained from: DragonFly END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2008-04-10T22:45:27.000000Z K 7 svn:log V 657 Merge kern_proc.c:1.257, sysctl.h:1.154, and user.h:1.72 from HEAD to RELENG_7: Add another new sysctl in support of the forthcoming procstat(1) to support its -k argument: kern.proc.kstack - dump the kernel stack of a process, if debugging is permitted. This sysctl is present if either "options DDB" or "options STACK" is compiled into the kernel. Having support for tracing the kernel stacks of processes from user space makes it much easier to debug (or understand) specific wmesg's while avoiding the need to enter DDB in order to determine the path by which a process came to be blocked on a particular wait channel or lock. END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2008-04-10T22:49:39.000000Z K 7 svn:log V 1104 Merge Makefile:1.1, procstat.1:1.1, procstat.c:1.1, procstat.h:1.1, procstat_args.c:1.1, procstat_basic.c:1.1, procstat_bin.c:1.1, procstat_cred.c:1.1, procstat_files.c:1.1, procstat_kstack.c:1.1, procstat_threads.c:1.1, and procstat_vm.c:1.1 from HEAD to RELENG_7: Add procstat(1), a process inspection utility. This provides both some of the missing functionality from procfs(4) and new functionality for monitoring and debugging specific processes. procstat(1) operates in the following modes: -b Display binary information for the process. -c Display command line arguments for the process. -f Display file descriptor information for the process. -k Display the stacks of kernel threads in the process. -s Display security credential information for the process. -t Display thread information for the process. -v Display virtual memory mappings for the process. Further revision and modes are expected. Testing, ideas, etc: cognet, sam, Skip Ford Wesley Shields END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2008-04-10T22:50:44.000000Z K 7 svn:log V 81 Merge Makefile:1.304 from HEAD to RELENG_7: Connect procstat(1) to the build. END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2008-04-10T22:57:18.000000Z K 7 svn:log V 231 Merge subr_stack.c:1.6 from HEAD to RELENG_7: When a symbol name can't be resolved, return "??" as the name, rather than "Unknown func", in order to avoid putting spaces in what ideally is a string separated by white space. END K 10 svn:author V 3 imp K 8 svn:date V 27 2008-04-10T22:57:54.000000Z K 7 svn:log V 312 Fix a bug introduced by DEFAULTS feature. When the config file doesn't exist, we make a directory and then say "oops, that file isn't there" leaving the directory behind. Add a stat for the config file so that we detect this before making the directory. This is semi-lame, but less lame than having this bug. END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2008-04-10T22:58:11.000000Z K 7 svn:log V 391 Merge procstaT_kstack.c:1.2, procstat_threads.c:1.2 from HEAD to RELENG_7: Display per-thread command line in TDNAME field for -k and -t; if no per-thread name is available or the name is identical to the process name, display "-" instead. Very slightly shrink the COMM entry to make a bit more room, although this doesn't help with stack traces much. Suggested by: thompsa END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2008-04-10T22:58:59.000000Z K 7 svn:log V 232 Merge kern_proc.c:1.258 from HEAD to RELENG_7: Check for P_WEXIT before PHOLD() on a process in kstack and vm query sysctls, as PHOLD() asserts !P_WEXIT. Reported by: Michael Plass END K 10 svn:author V 7 delphij K 8 svn:date V 27 2008-04-10T23:49:23.000000Z K 7 svn:log V 452 Add a new flag, '-C' which enables a special mode that is intended for catastrophic recovery. Currently, this mode only validates whether a cylindergroup has good signature data, and prompts the user to decide whether to clear it as a whole. This mode is useful when there is data damage on a disk and you are working on copy of the original disk, as fsck_ffs(8) tends to abnormally exit in such case, as a last resort to recover data from the disk. END K 10 svn:author V 6 brooks K 8 svn:date V 27 2008-04-11T00:18:37.000000Z K 7 svn:log V 411 MFC rev 1.19 Add a new function is_default_interface() which determines if this interface is one with the default route (or there isn't one). Use it to decide if we should adjust the default route and /etc/resolv.conf. Fix the delete of the default route. The if statement was totally bogus and the delete only worked due to a typo. [1] Reported by: Jordan Coleman [1] END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2008-04-11T01:42:20.000000Z K 7 svn:log V 63 MFC: Unblock SIGCANCEL for thread created by cleanup handler. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2008-04-11T02:38:28.000000Z K 7 svn:log V 48 MFC: Modifying td_flags with thread lock held. END K 10 svn:author V 4 jeff K 8 svn:date V 27 2008-04-11T03:26:41.000000Z K 7 svn:log V 492 - Add the interrupt vector number to intr_event_create so MI code can lookup hard interrupt events by number. Ignore the irq# for soft intrs. - Add support to cpuset for binding hardware interrupts. This has the side effect of binding any ithread associated with the hard interrupt. As per restrictions imposed by MD code we can only bind interrupts to a single cpu presently. Interrupts can be 'unbound' by binding them to all cpus. Reviewed by: jhb Sponsored by: Nokia END K 10 svn:author V 4 jeff K 8 svn:date V 27 2008-04-11T03:27:42.000000Z K 7 svn:log V 196 - Add support for interrupt bindig to cpuset(1). Interrupts are bound by specifying the interrupt with -x . The irq number matches those displayed by vmstat -i. Sponsored by: Nokia END K 10 svn:author V 7 yongari K 8 svn:date V 27 2008-04-11T03:41:59.000000Z K 7 svn:log V 10809 MFC vr(4) to latest HEAD. o vr(4) repocopied from sys/pci to sys/dev/vr. Teach vr(4) to use bus_dma(9) and major overhauling to handle link state change and reliable error recovery. o Moved vr_softc structure and relevant macros to header file. o Use PCIR_BAR macro to get BARs. o Implemented suspend/resume methods. o Implemented automatic Tx threshold configuration which will be activated when it suffers from Tx underrun. Also Tx underrun will try to restart only Tx path and resort to previous full-reset(both Rx/Tx) operation if restarting Tx path have failed. o Removed old bit-banging MII interface. Rhine provides simple and efficient MII interface. While I'm here show PHY address and PHY register number when its read/write operation was failed. o Define VR_MII_TIMEOUT constant and use it in MII access routines. o Always honor link up/down state reported by mii layers. The link state information is used in vr_start() to determine whether we got a valid link. o Removed vr_setcfg() which is now handled in vr_link_task(), link state taskqueue handler. When mii layer reports link state changes the taskqueue handler reprograms MAC to reflect negotiated duplex settings. Flow-control changes are not handled yet and it should be revisited when mii layer knows the notion of flow-control. o Added a new sysctl interface to get statistics of an instance of the driver.(sysctl dev.vr.0.stats=1) o Chip name was renamed to reflect the official name of the chips described in VIA Rhine I/II/III datasheet. REV_ID_3065_A -> REV_ID_VT6102_A REV_ID_3065_B -> REV_ID_VT6102_B REV_ID_3065_C -> REV_ID_VT6102_C REV_ID_3106_J -> REV_ID_VT6105_A0 REV_ID_3106_S -> REV_ID_VT6105M_A0 The following chip revisions were added. #define REV_ID_VT6105_B0 0x83 #define REV_ID_VT6105_LOM 0x8A #define REV_ID_VT6107_A0 0x8C #define REV_ID_VT6107_A1 0x8D #define REV_ID_VT6105M_B1 0x94 o Always show chip revision number in device attach. This shall help identifying revision specific issues. o Check whether EEPROM reloading is complete by inspecting the state of VR_EECSR_LOAD bit. This bit is self-cleared after the EEPROM reloading. Previously vr(4) blindly spins for 200us which may/may not enough to complete the EEPROM reload. o Removed if_mtu setup. It's done in ether_ifattach(). o Use our own callout to drive watchdog timer. o In vr_attach disable further interrupts after reset. For VT6102 or newer hardwares, diable MII state change interrupt as well because mii state handling is done by mii layer. o Add more sane register initialization for VT6102 or newer chips. - Have NIC report error instead of retrying forever. - Let hardware detect MII coding error. - Enable MODE10T mode. - Enable memory-read-multiple for VT6107. o PHY address for VT6105 or newer chips is located at fixed address 1. For older chips the PHY address is stored in VR_PHYADDR register. Armed with these information, there is no need to re-read VR_PHYADDR register in miibus handler to get PHY address. This saves one register access cycle for each MII access. o Don't reprogram VR_PHYADDR register whenever access to a register located at a PHY address is made. Rhine fmaily allows reprogramming PHY address location via VR_PHYADDR register depending on VR_MIISTAT_PHYOPT bit of VR_MIISTAT register. This used to lead numerous phantom PHYs attached to miibus during phy probe phase and driver used to limit allowable PHY address in mii register accessors for certain chip revisions. This removes one more register access cycle for each MII access. o Correctly set VLAN header length. o bus_dma(9) conversion. - Limit DMA access to be in range of 32bit address space. Hardware doesn't support DAC. - Apply descriptor ring alignment requirements(16 bytes alignment) - Apply Rx buffer address alignment requirements(4 bytes alignment) - Apply Tx buffer address alignment requirements(4 bytes alignment) for Rhine I chip. Rhine II or III has no Tx buffer address alignment restrictions, though. - Reduce number of allowable number of DMA segments to 8. - Removed the atomic(9) used in descriptor ownership managements as it's job of bus_dmamap_sync(9). With these change vr(4) should work on all platforms. o Rhine uses two separated 8bits command registers to control Tx/Rx MAC. So don't access it as a single 16bit register. o For non-strict alignment architectures vr(4) no longer require time-consuming copy operation for received frames to align IP header. This greatly improves Rx performance on i386/amd64 platforms. However the alignment is still necessary for strict-alignment platforms(e.g. sparc64). The alignment is handled in new fuction vr_fixup_rx(). o vr_rxeof() now rejects multiple-segmented(fragmented) frames as vr(4) is not ready to handle this situation. Datasheet said nothing about the reason when/why it happens. o In vr_newbuf() don't set VR_RXSTAT_FIRSTFRAG/VR_RXSTAT_LASTFRAG bits as it's set by hardware. o Don't pass checksum offload information to upper layer for fragmented frames. The hardware assisted checksum is valid only when the frame is non-fragmented IP frames. Also mark the checksum is valid for corrupted frames such that upper layers doesn't need to recompute the checksum with software routine. o Removed vr_rxeoc(). RxDMA doesn't seem to need to be idle before sending VR_CMD_RX_GO command. Previously it used to stop RxDMA first which in turn resulted in long delays in Rx error recovery. o Rewrote Tx completion handler. - Always check VR_TXSTAT_OWN bit in status word prior to inspecting other status bits in the status word. - Collision counter updates were corrected as VT3071 or newer ones use different bits to notify collisions. - Unlike other chip revisions, VT86C100A uses different bit to indicate Tx underrun. For VT3071 or newer ones, check both VR_TXSTAT_TBUFF and VR_TXSTAT_UDF bits to see whether Tx underrun was happend. In case of Tx underrun requeue the failed frame and restart stalled Tx SM. Also double Tx DMA threshold size on each failure to mitigate future Tx underruns. - Disarm watchdog timer only if we have no queued packets, otherwise don't touch watchdog timer. o Rewrote interrupt handler. - status word in Tx/Rx descriptors indicates more detailed error state required to recover from the specific error. There is no need to rely on interrupt status word to recover from Tx/Rx error except PCI bus error. Other event notifications like statistics counter overflows or link state events will be handled in main interrupt handler. - Don't touch VR_IMR register if we are in suspend mode. Touching the register may hang the hardware if we are in suspended state. Previously it seems that touching VR_IMR register in interrupt handler was to work-around panic occurred in system shutdown stage on SMP systems. I think that work-around would hide root-cause of the panic and I couldn't reproduce the panic with multiple attempts on my box. o While padding space to meet minimum frame size, zero the pad data in order to avoid possibly leaking sensitive data. o Rewrote vr_start_locked(). - Don't try to queue packets if number of available Tx descriptors are short than that of required one. o Don't reinitialize hardware whenever media configuration is changed. Media/link state changes are reported from mii layer if this happens and vr_link_task() will perform necessary changes. o Don't reinitialize hardware if only PROMISC bit was changed. Just toggle the PROMISC bit in hardware is sufficient to reflect the request. o Rearrganed the IFCAP_POLLING/IFCAP_HWCSUM handling in vr_ioctl(). o Generate Tx completion interrupts for every VR_TX_INTR_THRESH-th frames. This reduces Tx completion interrupts under heavy network loads. o Since vr(4) doesn't request Tx interrupts for every queued frames, reclaim any pending descriptors not handled in Tx completion handler before actually firing up watchdog timeouts. o Added vr_tx_stop()/vr_rx_stop() to wait for the end of active TxDMA/RxDMA cycles(draining). These routines are used in vr_stop() to ensure sane state of MAC before releasing allocated Tx/Rx buffers. vr_link_task() also takes advantage of these functions to get to idle state prior to restarting Tx/Rx. o Added vr_tx_start()/vr_rx_start() to restart Rx/Tx. By separating Rx operation from Tx operation vr(4) no longer need to full-reset the hardware in case of Tx/Rx error recovery. o Implemented WOL. o Added VT6105M specific register definitions. VT6105M has the following hardware capabilities. - Tx/Rx IP/TCP/UDP checksum offload. - VLAN hardware tag insertion/extraction. Due to lack of information for getting extracted VLAN tag in Rx path, VLAN hardware support was not implemented yet. - CAM(Content Addressable Memory) based 32 entry perfect multicast/ VLAN filtering. - 8 priority queues. o Implemented CAM based 32 entry perfect multicast filtering for VT6105M. If number of multicast entry is greater than 32, vr(4) uses traditional hash based filtering. o Reflect real Tx/Rx descriptor structure. Previously vr(4) used to embed other driver (private) data into these structure. This type of embedding make it hard to work on LP64 systems. o Removed unused vr_mii_frame structure and MII bit-baning definitions. o Added new PCI configuration registers that controls mii operation and mode selection. o Reduced number of Tx/Rx descriptors to 128 from 256. From my testing, increasing number of descriptors above than 64 didn't help increasing performance at all. Experimentations show 128 Rx descriptors seems to help a lot reducing Rx FIFO overruns under high system loads. It seems the poor Tx performance of Rhine hardwares comes from the limitation of hardware. You wouldn't satuarte the link with vr(4) no matter how fast CPU/large number of descriptors are used. o Added vr_statistics structure to hold various counter values. END K 10 svn:author V 7 yongari K 8 svn:date V 27 2008-04-11T03:49:47.000000Z K 7 svn:log V 82 MFC vr.4 rev 1.31 to RELENG_7. Document a new sysctl variable, dev.vr.%d.stats. END K 10 svn:author V 7 yongari K 8 svn:date V 27 2008-04-11T03:52:23.000000Z K 7 svn:log V 94 MFC GENERIC rev 1.132 to RELENG_7. Uncomment vr(4), vr(4) should work on all architectures. END K 10 svn:author V 7 yongari K 8 svn:date V 27 2008-04-11T04:01:25.000000Z K 7 svn:log V 413 MFC if_stge.c rev 1.11, if_stgereg.h rev 1.4 to RELENG_7. Implement WOL capability. - Turn on WOL bits in suspend/shutdown method. - WOL is disabled in resume routine as WOL can interfere normal Rx operation. - Move stge_reset() to stge_init_locked() as resetting hardware clears configured Rx information which in turn results in non-working Rx module after suspend/shutdown operation. END K 10 svn:author V 7 yongari K 8 svn:date V 27 2008-04-11T04:03:36.000000Z K 7 svn:log V 403 MFC if_stge.c rev 1.12 to RELENG_7. Use m_collapse(9) to collapse mbuf chains instead of relying on shortest possible chain of mbufs of m_defrag(9). What we want is chains of mbufs that can be safely stored to a Tx descriptor which can have up to STGE_MAXTXSEGS mbufs. The ethernet controller does not need to align Tx buffers on 32bit boundary. So the use of m_defrag(9) was waste of time. END K 10 svn:author V 5 benno K 8 svn:date V 27 2008-04-11T05:50:53.000000Z K 7 svn:log V 398 Identify ICH9 USB controllers. I've taken a slightly different approach than is used with the ICH8 controllers in that each controller is not identified individually (eg USB A, USB B, etc). Instead I've given then same description to each one even though the device ID differs. This can easily be changed if desired, or ICH8 (and any others using that approach) can be made to work as this does. END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2008-04-11T08:07:10.000000Z K 7 svn:log V 320 Merge procstat_args.c:1.2, procstat_bin.c:1.2, procstat_cred.c:1.2, and procstat_files.c:1.2 from HEAD to RELENG_7: Add 'COMM' column to a few more output modes of procstat(1). The only one it's missing from is the VM display, where there's really not room, and the file output display is looking quite cramped. END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2008-04-11T08:12:36.000000Z K 7 svn:log V 633 Merge kern_proc.c:1.259 from HEAD to RELENG_7: Return ESRCH when a kernel stack is queried on a process in execve() -- p_candebug() will return EAGAIN which, if the other process never leaves execve(), will result in the sysctl spinning and never returning to userspace. Processes should always eventually leave execve(), but spinning in kernel while we wait is bad for countless reasons, and particularly harmful if execve() itself is deadlocked. Possibly we should return another error, or return a marker indicating the thread is in execve() so it can be reported that way in userspace. Reported by: kris END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2008-04-11T08:13:37.000000Z K 7 svn:log V 287 Merge vfs_subr.c:1.713 from HEAD to RELENG_7: In "show lockedvnods" DDB command, use db_printf() rather than printf() so that the results end up in the DDB output stream rather than the console output stream. This should likely also be done for the vprint() function it calls. END K 10 svn:author V 3 pav K 8 svn:date V 27 2008-04-11T08:26:06.000000Z K 7 svn:log V 444 Optimize package registration/deregistration. Previously, when looking up the package name for the origin of a dependency, all entries in /var/db/pkg were traversed for each dependency of added/removed package. Now, gather all the origins first, then do the lookup in a single pass over /var/db/pkg. This should provide a major speedup for packages with hundreds of dependencies. Submitted by: rdivacky (earlier version) MFC after: 1 month END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2008-04-11T08:47:35.000000Z K 7 svn:log V 1300 Merge init_main.c:1.290, kern_proc.c:1.261, kern_resource.c:1.182, kern_sync.c:1.305, proc.h:1.499 from HEAD to RELENG_7: Don't zero td_runtime when billing thread CPU usage to the process; maintain a separate td_incruntime to hold unbilled CPU usage for the thread that has the previous properties of td_runtime. When thread information is requested using the thread monitoring sysctls, export thread td_runtime instead of process rusage runtime in kinfo_proc. This restores the display of individual ithread and other kernel thread CPU usage since inception in ps -H and top -SH, as well for libthr user threads, valuable debugging information lost with the move to try kthreads since they are no longer independent processes. There is universal agreement that we should rewrite the process and thread export sysctls, but this commit gets things going a bit better in the mean time. Likewise, there are resevations about the continued validity of statclock given the speed of modern processors. Reviewed by: attilio, emaste, jhb, julian Note: in MFC, td_incruntime is added to the end of struc thread, rather than the pre-zero'd section, and manually zero'd on thread creation, in order to avoid a negative ABI impact for third-party kernel modules. END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2008-04-11T08:56:25.000000Z K 7 svn:log V 307 Merge procstat.c:1.2, procstat_basic.c:1.2, procstat_files.c:1.4, procstat_kstack.c:1.3, procstat_threads.c:1.3, procstat_vm.c:1.2 from HEAD to RELENG_7: WARNS fixes: mainly constness and avoid comparing signed with unsigned by making array indicies unsigned. Also note one or two unused parameters. END K 10 svn:author V 3 dfr K 8 svn:date V 27 2008-04-11T09:01:31.000000Z K 7 svn:log V 66 MFC: lockd.c r1.27 - don't call the kernel NLM if its not loaded. END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2008-04-11T09:09:28.000000Z K 7 svn:log V 1210 Merge kern_descrip.c:1.322, user.h:1.74, procstat_files.c:1.5: Add support for displaying a process' current working directory, root directory, and jail directory within procstat. While this functionality is available already in fstat, encapsulating it in the kern.proc.filedesc sysctl makes it accessible without using kvm and thus without needing elevated permissions. The new procstat output looks like: PID COMM FD T V FLAGS REF OFFSET PRO NAME 76792 tcsh cwd v d -------- - - - /usr/src 76792 tcsh root v d -------- - - - / 76792 tcsh 15 v c rw------ 16 9130 - - 76792 tcsh 16 v c rw------ 16 9130 - - 76792 tcsh 17 v c rw------ 16 9130 - - 76792 tcsh 18 v c rw------ 16 9130 - - 76792 tcsh 19 v c rw------ 16 9130 - - I am also bumping __FreeBSD_version for this as this new feature will be used in at least one port. Reviewed by: rwatson Approved by: rwatson Note that in the MFC, __FreeBSD_version is not bumped as we will bump it once (shortly) for all procstat(1) MFC changes together. END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2008-04-11T09:13:11.000000Z K 7 svn:log V 114 Bump __FreeBSD_version in RELENG_7 to reflect addition of procstat(1) and its associated kernel sysctl additions. END K 10 svn:author V 4 jeff K 8 svn:date V 27 2008-04-11T09:44:25.000000Z K 7 svn:log V 614 - cache dp->i_offset in the local 'i_offset' variable for use in loop indexes so directory lookup becomes shared lock safe. In the modifying cases an exclusive lock is held here so the commit routine may rely on the state of i_offset. - Similarly handle i_diroff by fetching at the start and setting only once the operation is complete. Without the exclusive lock these are only considered hints. - Assert that an exclusive lock is held when we're preparing for a commit routine. - Honor the lock type request from lookup instead of always using exclusive locking. Tested by: pho, kris END K 10 svn:author V 4 jeff K 8 svn:date V 27 2008-04-11T09:48:12.000000Z K 7 svn:log V 614 - Use a lockmgr lock rather than a mtx to protect dirhash. This lock may be held for the duration of the various dirhash operations which avoids many complex unlock/lock/revalidate sequences. - Permit shared locks on lookup. To protect the ip->i_dirhash pointer we use the vnode interlock in the shared case. Callers holding the exclusive vnode lock can run without fear of concurrent modification to i_dirhash. - Hold an exclusive dirhash lock when creating the dirhash structure for the first time or when re-creating a dirhash structure which has been recycled. Tested by: kris, pho END K 10 svn:author V 5 remko K 8 svn:date V 27 2008-04-11T10:14:19.000000Z K 7 svn:log V 398 MFC rev 1.134 ObsoleteFiles.inc Document the removal data for usbdevs.h and usbdevs_data.h, sort the entry into it's correct place (behind 200407XX before 200406XX because we have an explicit date here). PR: misc/122098 Submitted by: "John Hein" MFC after: 3 days Approved by: imp (mentor, implicit) PR: misc/122099 (should have been this PR). END K 10 svn:author V 3 dfr K 8 svn:date V 27 2008-04-11T10:34:59.000000Z K 7 svn:log V 90 Fix some issues that showed up during Kris' testing. Reported by: kris MFC after: 3 days END K 10 svn:author V 7 cvs2svn K 8 svn:date V 27 2008-04-11T10:35:00.000000Z K 7 svn:log V 68 This commit was manufactured by cvs2svn to create branch 'RELENG_6'. END K 10 svn:author V 3 sos K 8 svn:date V 27 2008-04-11T11:30:27.000000Z K 7 svn:log V 272 Fix the brokenness in the former commit, sorry for the mess. The problem is that the PM support is part of a much larger WIP here, but due to popular demand I decided to get some of it imported. Also I forgot the mention: HW sponsored by: Vitsch Electronics / VEHosting END K 10 svn:author V 2 ru K 8 svn:date V 27 2008-04-11T11:34:09.000000Z K 7 svn:log V 192 Allocate enough memory for pcpu_cp_time[] to stop sysctl() from writing outside of array bounds. This fully fixes -P display on i386, where kern.cp_times prints zeroes for non-existing CPUs. END K 10 svn:author V 2 ru K 8 svn:date V 27 2008-04-11T11:39:26.000000Z K 7 svn:log V 142 system_info.cpustates isn't sparse, so a bitmask of available CPU states is redundant (I think it's a leftover from an older implementation). END K 10 svn:author V 2 ru K 8 svn:date V 27 2008-04-11T11:45:27.000000Z K 7 svn:log V 19 MFC: Fix "top -P". END K 10 svn:author V 6 rpaulo K 8 svn:date V 27 2008-04-11T12:12:25.000000Z K 7 svn:log V 33 Style nit. No functional change. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2008-04-11T14:39:11.000000Z K 7 svn:log V 64 MFC: Add umtx operation UMTX_OP_WAIT_UINT and userland rwlock. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2008-04-11T14:41:18.000000Z K 7 svn:log V 39 Bump version for added umtx functions. END K 10 svn:author V 5 ariff K 8 svn:date V 27 2008-04-11T15:26:25.000000Z K 7 svn:log V 304 Don't mess up with CHN_F_TRIGGERED, since it should exclusively be handled by chn_abort() and chn_start() alone. This should fix few issues with single duplex hardware (mostly) or pre virtual record (RELENG 6) under WINE emulation and possibly others that using SNDCTL_DSP_SETTRIGGER. MFC after: 3 days END K 10 svn:author V 6 rpaulo K 8 svn:date V 27 2008-04-11T17:16:19.000000Z K 7 svn:log V 190 Don't call acpi_disabled() because we are not part of the acpi.ko module. Instead, use resource_disabled() that doesn't depend on any module. Noticed by: Ian FREISLICH END K 10 svn:author V 3 jhb K 8 svn:date V 27 2008-04-11T17:35:54.000000Z K 7 svn:log V 159 Use kthread_exit() to terminate a taskqueue thread rather than kproc_exit() now that the taskqueue threads are kthreads rather than kprocs. Reported by: kris END K 10 svn:author V 7 delphij K 8 svn:date V 27 2008-04-11T21:31:15.000000Z K 7 svn:log V 164 Instead of rolling our own jail number allocation procedure, use alloc_unr() to do it. Submitted by: Ed Schouten PR: kern/122270 MFC after: 1 month END K 10 svn:author V 8 mckusick K 8 svn:date V 27 2008-04-11T21:48:14.000000Z K 7 svn:log V 72 Correctly set file group when restore is run by a user other than root. END K 10 svn:author V 8 mckusick K 8 svn:date V 27 2008-04-11T21:51:53.000000Z K 7 svn:log V 65 Avoid printing spurious ``Header with wrong dumpdate.'' message. END K 10 svn:author V 6 marius K 8 svn:date V 27 2008-04-11T22:53:06.000000Z K 7 svn:log V 190 - Fix the path encoded in the multiple inclusion protection. - GCC uses 32-byte function alignment for UltraSPARC CPUs. - Remove code duplication. Approved by: core, pjd MFC after: 2 weeks END