ƒ·L214751 157 262 133 195 282 1345 190 209 156 188 186 593 156 480 631 296 215 188 200 176 145 157 287 354 727 183 122 802 102 719 238 309 451 202 484 484 302 302 356 239 239 165 165 183 167 160 151 331 191 762 178 256 127 121 167 149 255 274 140 186 138 260 231 211 354 215 154 658 357 654 317 247 245 622 216 623 167 206 117 129 383 391 128 133 151 1035 156 156 128 200 302 123 106 616 1379 267 133 214 709 142 442 386 611 265 471 150 200 188 494 1217 469 645 367 602 208 877 1345 112 260 378 291 293 967 389 329 1325 223 206 571 161 158 747 355 602 208 139 215 494 367 979 1447 355 247 348 724 141 224 359 273 595 409 238 269 134 124 365 162 115 K 10 svn:author V 3 dim K 8 svn:date V 27 2010-11-03T16:46:05.207257Z K 7 svn:log V 169 Backport a fix for binutils PR7093, which caused segfaults in ld targeting arm, when attempting to create object files from arbitrary binary file (e.g. firmware blobs). END K 10 svn:author V 5 trasz K 8 svn:date V 27 2010-11-03T18:49:50.758208Z K 7 svn:log V 39 Xref BUS_SETUP_INTR(9) and locking(9). END K 10 svn:author V 5 dougb K 8 svn:date V 27 2010-11-03T20:50:41.538919Z K 7 svn:log V 100 Fix the entries for --clean-packages[-all] Submitted by: David DEMELIER END K 10 svn:author V 7 n_hibma K 8 svn:date V 27 2010-11-03T21:10:12.187385Z K 7 svn:log V 185 Don't spam the console with loaded modules during boot and/or during startup of ppp. Note: This cannot be hidden behind bootverbose as this file is included from lib/libalias as well. END K 10 svn:author V 3 kib K 8 svn:date V 27 2010-11-03T21:21:12.210554Z K 7 svn:log V 1251 MFC r208453: Reorganize syscall entry and leave handling. Implement ptrace_lwpinfo pl_flags PL_FLAG_SCE, PL_FLAG_SCX and PL_FLAG_EXEC. The i386, amd64, sparc64, sun4v, powerpc and ia64 syscall()s are changed to use syscallenter()/syscallret(). MIPS and arm are not converted and use the mostly unchanged syscall() implementation. MFC r208514: Change ia64' struct syscall_args definition so that args is a pointer to the arguments array instead of array itself. MFC r208566: Allow to use syscallname(9) outside subr_trap.c. MFC r209258 (by rpaulo): Make DTrace syscall provider work again by including opt_kdtrace.h here. MFC r209313: Only enable kdtrace hook in the LINT on the architectures that implement it. MFC r209697: Obey sv_syscallnames bounds in syscallname(). NOTE: The KBI of the struct sysentvec is changed, new required members sv_set_syscall_retval, sv_fetch_syscall_args and sv_syscallnames are added. The sv_prepsyscall field is now ignored. Third-party modules using the struct sysentvec must be modified and recompiled, we believe that only ABI emulators are affected. No such out-of-tree modules are known. In-tree modules that are affected by the change were converted to depend on exact version of the kernel, see r214421. END K 10 svn:author V 3 kib K 8 svn:date V 27 2010-11-03T21:24:21.438687Z K 7 svn:log V 98 MFC r209688: Extend ptrace(PT_LWPINFO) to report siginfo for the signal that caused debugee stop. END K 10 svn:author V 3 kib K 8 svn:date V 27 2010-11-03T21:31:03.996661Z K 7 svn:log V 116 MFC r208513: Improve the documentation for PT_LWPINFO. Note that some features are not implemented on MIPS and ARM. END K 10 svn:author V 3 kib K 8 svn:date V 27 2010-11-03T21:32:31.284386Z K 7 svn:log V 64 MFC r209873: Document pl_siginfo and PT_FLAG_SI for PT_LWPINFO. END K 10 svn:author V 3 kib K 8 svn:date V 27 2010-11-03T21:39:11.790471Z K 7 svn:log V 96 MFC r209689: Extend the td_thrinfo_t to include siginfo for the signal that stopped the target. END K 10 svn:author V 3 kib K 8 svn:date V 27 2010-11-03T21:40:57.608620Z K 7 svn:log V 94 MFC r209690: For "thread signal" command, print some information from siginfo when available. END K 10 svn:author V 7 n_hibma K 8 svn:date V 27 2010-11-03T21:50:49.548966Z K 7 svn:log V 496 - Simplify the way unit/subunit allocation is done in ucom. - hw.usb.ucom.cons_unit is now split into hw.usb.ucom.cons_unit/...cons_subunit. Note: The tunable/sysctl hw.usb.ucom.cons_unit needs to be reviewed if a) a console was defined a USB serial devices, and a USB device with more than 1 subunit is present, and this device is attached before the device functioning as a console or b) a console was defined on a USB device with more than 1 subunit Reviewed by: hps MFC after: 2 weeks END K 10 svn:author V 3 kib K 8 svn:date V 27 2010-11-03T21:51:05.371050Z K 7 svn:log V 64 Bump __FreeBSD_version for struct sysentvec changes in r214755. END K 10 svn:author V 8 rmacklem K 8 svn:date V 27 2010-11-03T22:17:42.347164Z K 7 svn:log V 382 MFC: r214255 Modify the experimental NFSv4 server's file handle hash function to use the generic hash32_buf() function. Although adding the bytes seemed sufficient for UFS and ZFS, since most of the bytes are the same for file handles on the same volume, this might not be sufficient for other file systems. Use of a generic function also seems preferable to one specific to NFSv4. END K 10 svn:author V 5 dougb K 8 svn:date V 27 2010-11-03T22:21:21.038184Z K 7 svn:log V 536 Bug Fix ======= Since $build_l is no longer being incremented prior to the user's +IGNOREME decision it's no longer necessary to decrement it if the user chooses not to update that port. While I was reading the trace to find this bug I noticed that we are running update_build_l (which in turn updates PM_NEEDS_UPDATE) prior to running check_state (FORBIDDEN|DEPRECATED|BROKEN|IGNORE), so move that check up; and move the "currently installed" and "port directory" messages up as well to give context to any messages from check_state. END K 10 svn:author V 4 jkim K 8 svn:date V 27 2010-11-03T23:16:35.063615Z K 7 svn:log V 202 Adjust a comment to clarify why \_SB_ and \_TZ_ are defined as device type in ACPICA. Reshuffle the code a bit to make sure this kludge only applies to these two specical cases and to make it cleaner. END K 10 svn:author V 8 jmallett K 8 svn:date V 27 2010-11-03T23:29:52.474074Z K 7 svn:log V 117 Don't attach the PCI bus driver if the board we're being run on has PCIe. The two are mutually-exclusive on Octeon. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-04T02:03:26.964553Z K 7 svn:log V 92 To avoid thundering hurd problem on pthread_cond_broadcast, implement wait queue migration. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-04T02:09:36.424392Z K 7 svn:log V 103 Save previous work in libthr.user_requeue. Follow the change in kernel, use kernel's requeue function. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-04T06:06:41.376607Z K 7 svn:log V 80 Change cv_signal to move thread from condition variable's queue to mutex queue. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-04T06:11:39.087061Z K 7 svn:log V 49 Cancel thread when it is not signaled by others. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-04T06:37:15.335810Z K 7 svn:log V 61 Fix some comments. and ignore error code from umutex_unlock. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-04T06:51:53.744504Z K 7 svn:log V 190 Define UCOND_BIND_MUTEX flag to bind a umutex to a ucond, it indicates a protocol if the condition variable is shared among processes. the system call argument CVWAIT_BIND_MUTEX is removed. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-04T07:53:09.573380Z K 7 svn:log V 257 Introduce cv_wait options: CVWAIT_ABSTIME and CVWAIT_CLOCKID. CVWAIT_ABSTIME indicates the timeout is absolute time. CVWAIT_CLOCKID indicats the clockid should be retrieved from condition variable field c_clockid. This is how POSIX condition varible works. END K 10 svn:author V 3 avg K 8 svn:date V 27 2010-11-04T08:51:45.064901Z K 7 svn:log V 634 x86 topo_probe: do not probe smp topology if only one cpu is visible This could lead to a division by zero if hardware is multi-core and/or multi-threaded, but for some (quite unusual) reason FreeBSD sees only one logical processor. This could happen, for example, if neither MADT nor MP Table are presented by BIOS. Also: - assert in topo_probe_0x4 that BSP is accounted for - neither cpu_cores nor cpu_logical should be zero after successful probing, so either being zero is an indication of failed probing Reported by: vwe, Dan Allen Tested by: Dan Allen MFC after: 3 days END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-04T08:58:16.404076Z K 7 svn:log V 87 Introduce UMUTEX_ABSTIME option, so we can reduce a clock_gettime syscall in userland. END K 10 svn:author V 3 kib K 8 svn:date V 27 2010-11-04T09:19:14.332127Z K 7 svn:log V 30 Fix style. MFC after: 6 days END K 10 svn:author V 3 kib K 8 svn:date V 27 2010-11-04T09:29:00.100970Z K 7 svn:log V 709 In r214728, if dlopen() is called for the object that has been already loaded as a dependency and marked -z nodlopen, object' DAG is already initialized by load_needed_objects(). Due to this, the init_dag() call from dlopen() does not increment refcount for the object [1]. Change init_dag() to not increment DAG refcount. Require explicit calls to ref_dag() to increment, and assert that ref_dag() and unref_dag() are called for root that has dag initialized. To fix the noted issue, unconditionally call both init_dag() and ref_dag() in dlopen() for the case when the object was already loaded, making it similar to the case of newly loaded object. Noted by: jh [1] Reviewed by: jh, kan MFC after: 6 days END K 10 svn:author V 3 bcr K 8 svn:date V 27 2010-11-04T10:47:19.298161Z K 7 svn:log V 10 Fix typo. END K 10 svn:author V 3 uqs K 8 svn:date V 27 2010-11-04T10:53:50.587539Z K 7 svn:log V 626 MFC r200626,201289,213764,214272, syncing yacc and flex to -CURRENT r200626: remove external reference to not (or at least no longer) existing variable 'myname' r201289: Let both yacc and lex generate code that passes -Wold-style-definition. Both these tools emit code where several functions have no `void' keyword placed in the arugment list when the function has no arguments. r213764: Don't define the input() function ifdef YY_NO_INPUT. This was previously done for the input() function. r214272: flex: add missing ifdef magic to create/hide prototypes This unbreaks build for some software with higher WARNS flags. END K 10 svn:author V 3 uqs K 8 svn:date V 27 2010-11-04T12:33:07.979003Z K 7 svn:log V 145 MFC r208028,214491: Sync manpages to -CURRENT r208028: mdoc: move remaining sections into consistent order r214491: Fix another "string" typo. END K 10 svn:author V 6 brucec K 8 svn:date V 27 2010-11-04T15:24:32.241372Z K 7 svn:log V 213 Fix standby timer calculation: the timer was being set 30 minutes later than the user requested. Also, 21 minutes is encoded as 252 and 22-29 minutes cannot be encoded so must be rounded up to 30. PR: bin/151871 END K 10 svn:author V 3 jhb K 8 svn:date V 27 2010-11-04T15:33:50.199073Z K 7 svn:log V 358 Update startup_alloc() to support multi-page allocations and allow internal zones whose objects are larger than a page to use startup_alloc(). This allows allocation of zone objects during early boot on machines with a large number of CPUs since the resulting zone objects are larger than a page. Submitted by: trema Reviewed by: attilio MFC after: 1 week END K 10 svn:author V 5 jamie K 8 svn:date V 27 2010-11-04T17:01:21.131031Z K 7 svn:log V 107 Reads the mount.fstab file, and put its lines separately into the IP__MOUNT_FROM_FSTAB internal parameter. END K 10 svn:author V 3 jhb K 8 svn:date V 27 2010-11-04T17:06:54.957245Z K 7 svn:log V 391 MFC 211820,211821,212292: Intel QPI chipsets actually provide extra "non-core" PCI buses that provide PCI devices for various hardware such as memory controllers, etc. for each socket. These PCI buses are not enumerated via ACPI however. Add qpi(4) psuedo bus and Host-PCI bridge drivers to enumerate these buses. Currently the driver uses the CPU ID to determine the bridges' presence. END K 10 svn:author V 3 jhb K 8 svn:date V 27 2010-11-04T17:07:13.368968Z K 7 svn:log V 391 MFC 211820,211821,212292: Intel QPI chipsets actually provide extra "non-core" PCI buses that provide PCI devices for various hardware such as memory controllers, etc. for each socket. These PCI buses are not enumerated via ACPI however. Add qpi(4) psuedo bus and Host-PCI bridge drivers to enumerate these buses. Currently the driver uses the CPU ID to determine the bridges' presence. END K 10 svn:author V 3 jhb K 8 svn:date V 27 2010-11-04T17:12:29.336484Z K 7 svn:log V 209 MFC 214203: - Add a new PCI quirk to whitelist an old chipset that doesn't support PCI-express or PCI-X capabilities if we are running in a virtual machine. - Whitelist the Intel 82440 chipset used by QEMU. END K 10 svn:author V 3 jhb K 8 svn:date V 27 2010-11-04T17:13:30.261933Z K 7 svn:log V 209 MFC 214203: - Add a new PCI quirk to whitelist an old chipset that doesn't support PCI-express or PCI-X capabilities if we are running in a virtual machine. - Whitelist the Intel 82440 chipset used by QEMU. END K 10 svn:author V 3 jhb K 8 svn:date V 27 2010-11-04T17:19:16.334306Z K 7 svn:log V 263 MFC 214448: Use 'PCPU_GET(apic_id)' to determine the BSP's APIC ID on a UP machine when routing interrupts instead of cpu_apic_ids[0] since cpu_apic_ids[] is only populated for multiple-CPU machines. This also matches what the code does when SMP is not enabled. END K 10 svn:author V 3 jhb K 8 svn:date V 27 2010-11-04T17:22:49.585765Z K 7 svn:log V 146 MFC 214449: Set bootverbose directly in mi_startup() rather than via a SYSINIT. This ensures 'bootverbose' is in a valid state for all SYSINITs. END K 10 svn:author V 3 jhb K 8 svn:date V 27 2010-11-04T17:23:06.970309Z K 7 svn:log V 146 MFC 214449: Set bootverbose directly in mi_startup() rather than via a SYSINIT. This ensures 'bootverbose' is in a valid state for all SYSINITs. END K 10 svn:author V 3 jhb K 8 svn:date V 27 2010-11-04T17:25:31.055294Z K 7 svn:log V 73 MFC 214625: Correct the abbreviations for general I/O and signal traces. END K 10 svn:author V 3 jhb K 8 svn:date V 27 2010-11-04T17:25:40.930019Z K 7 svn:log V 73 MFC 214625: Correct the abbreviations for general I/O and signal traces. END K 10 svn:author V 6 philip K 8 svn:date V 27 2010-11-04T18:00:25.440814Z K 7 svn:log V 88 Take snb's and rink's commit bits for safekeeping per their request. Approved by: core END K 10 svn:author V 2 ed K 8 svn:date V 27 2010-11-04T18:14:37.286229Z K 7 svn:log V 76 Fall back to MACHINE_ARCH. Don't build the optimized ppc bits on powerpc64. END K 10 svn:author V 2 ed K 8 svn:date V 27 2010-11-04T18:19:45.540870Z K 7 svn:log V 69 Remove PowerPC entirely. Nothing from that subdir gets built anyway. END K 10 svn:author V 2 ed K 8 svn:date V 27 2010-11-04T18:24:05.077800Z K 7 svn:log V 60 Merge from HEAD, so I can make universe, create diffs, etc. END K 10 svn:author V 5 jamie K 8 svn:date V 27 2010-11-04T18:40:29.238530Z K 7 svn:log V 236 Check paths for security: path must be absolute. mount paths must exist and have no symlinks beyond the jail's path itself. consolelog must exist (apart from the final component) and have no symlinks beyond the jail's path itself. END K 10 svn:author V 8 bschmidt K 8 svn:date V 27 2010-11-04T18:43:57.366319Z K 7 svn:log V 94 Remove 4.x, 5.x and 6.x compatibility bits. Submitted by: Paul B Mahol END K 10 svn:author V 3 dim K 8 svn:date V 27 2010-11-04T18:57:51.849662Z K 7 svn:log V 669 Binutils commit 0c845abb5a0083c6deebc75975608237015badba increased ELF_MAXPAGESIZE for amd64 from 0x00100000 to 0x00200000. This caused the kernel to be incorrectly linked, using the existing linker script, resulting in a virtual address of 0xffffffff80000000 for the LOAD program header. The boot loader will load such a kernel at a real address of 0x00000000, which either causes protection faults in btx, crashes the machine, or (in case of a VMware guest) even makes it power down. :) Fix this by partially synchronizing the amd64 linker script with binutils own updated version, in particular replacing a hardcoded value of 0x00100000 by CONSTANT(MAXPAGESIZE). END K 10 svn:author V 8 hselasky K 8 svn:date V 27 2010-11-04T19:05:35.452344Z K 7 svn:log V 81 Add new USB quirk. Submitted by: Dmitry Luhtionov Approved by: thompsa (mentor) END K 10 svn:author V 7 delphij K 8 svn:date V 27 2010-11-04T19:07:52.731576Z K 7 svn:log V 159 Sync with OpenBSD as of today. Changes: - Manual page improvement (add EXIT STATUS section) - Output normal messages to stdout to match GNU behavior. END K 10 svn:author V 5 dougb K 8 svn:date V 27 2010-11-04T19:18:32.671393Z K 7 svn:log V 33 Vendor import of BIND 9.4-ESV-R3 END K 10 svn:author V 5 dougb K 8 svn:date V 27 2010-11-04T19:20:03.159124Z K 7 svn:log V 27 Tag the 9.4-ESV-R3 release END K 10 svn:author V 8 hselasky K 8 svn:date V 27 2010-11-04T19:24:21.402964Z K 7 svn:log V 70 Add code to warm reset a USB 3.0 port. Approved by: thompsa (mentor) END K 10 svn:author V 5 jamie K 8 svn:date V 27 2010-11-04T19:32:32.693325Z K 7 svn:log V 55 Check unmounts for a mount point of the right FS type. END K 10 svn:author V 3 dim K 8 svn:date V 27 2010-11-04T20:22:44.213765Z K 7 svn:log V 162 Sync sys/conf/ldscript.amd64 with the upstream version, preserving FreeBSD-specific customizations (in particular, the addition of _start_ctors and _stop_ctors). END K 10 svn:author V 6 brucec K 8 svn:date V 27 2010-11-04T20:31:12.559497Z K 7 svn:log V 178 r214781 caused the timer value to be rounded down, so that if the user asked for 59 minutes 30 was sent to the drive. The timer value is now always rounded up. Reported by: mav END K 10 svn:author V 3 uqs K 8 svn:date V 27 2010-11-04T21:03:50.655808Z K 7 svn:log V 48 In man section 4, ERRORS is spelled DIAGNOSTICS END K 10 svn:author V 7 n_hibma K 8 svn:date V 27 2010-11-04T21:06:36.593488Z K 7 svn:log V 90 Don't terminate the notification with \n. This is done in usb_device.c:devctl_notify_f(). END K 10 svn:author V 5 dougb K 8 svn:date V 27 2010-11-04T21:47:28.043413Z K 7 svn:log V 44 MFC 214585: Prep for the 9.6-ESV-R2 update END K 10 svn:author V 5 dougb K 8 svn:date V 27 2010-11-04T21:48:39.148219Z K 7 svn:log V 165 Update to 9.6-ESV-R2, the latest from ISC. This version contains bug fixes that are relevant to any caching/resolving name server; as well as DNSSEC-related fixes. END K 10 svn:author V 5 dougb K 8 svn:date V 27 2010-11-04T21:50:19.203122Z K 7 svn:log V 136 MFV version 9.4-ESV-R3 This version contains several fixes for DNSSEC and DLV, as well as fixes relevant to any resolving name server. END K 10 svn:author V 5 dougb K 8 svn:date V 27 2010-11-04T22:05:50.475613Z K 7 svn:log V 116 Only print the fast-resume message if we're building. Otherwise we might not know all the ports that need updating. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-05T00:07:56.023194Z K 7 svn:log V 257 Merge condition variable work from previous work from libthr.user_requeue. if the current thread is using the simple mutex, use userlevel cv, otherwise use kernel based cv. userlevel cv is fast. may there are other cases, thread should use kernel based cv. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-05T00:25:13.908107Z K 7 svn:log V 118 Move clock_gettime() after lock released. we should have another UMTX_OP_WAIT with absolute timeout to save syscalls. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-05T00:31:09.716486Z K 7 svn:log V 58 Don't check EINTR, we don't break loop for user level cv. END K 10 svn:author V 2 ed K 8 svn:date V 27 2010-11-05T00:56:21.031235Z K 7 svn:log V 566 Partially implement the mysterious cons25 \e[x escape sequence. It seems the terminfo library on some systems (OS X, Linux) may emit the sequence \e[x to reset to default attributes. Apart from using the zero-command, this escape sequence allows many more operations, such as setting ANSI colors. I don't see this used anywhere, so this should be sufficient for now. This deficiency was spotted by the Debian GNU/kFreeBSD. They have their own patch, which is slightly flawed in my opinion. I don't know why they never reported this issue to us. MFC after: 1 week END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-05T01:50:18.766433Z K 7 svn:log V 260 To reduce the size of condition variable, use a simple integer as lock, Also none timesharing thread use kernel based cv, because the simple lock can not protect priority inversion, and no intention to make it PI or PP mutex which is too heavy for normal use. END K 10 svn:author V 8 rmacklem K 8 svn:date V 27 2010-11-05T02:12:18.751790Z K 7 svn:log V 556 MFC: r214406 Add a flag to the experimental NFSv4 client to indicate when delegations are being returned for reasons other than a Recall. Also, re-organize nfscl_recalldeleg() slightly, so that it leaves clearing NMODIFIED to the ncl_flush() call and invalidates the attribute cache after flushing. It is hoped that these changes might fix the problem others have seen when using the NFSv4 client with delegations enabled, since I can't reliably reproduce the problem. These changes only affect the client when doing NFSv4 mounts with delegations enabled. END K 10 svn:author V 8 rmacklem K 8 svn:date V 27 2010-11-05T02:33:27.152242Z K 7 svn:log V 219 MFC: r214511 Add a call for nfsrpc_close() to ncl_reclaim() in the experimental NFSv4 client, since the call in ncl_inactive() might be missed because VOP_INACTIVE() is not guaranteed to be called before VOP_RECLAIM(). END K 10 svn:author V 8 rmacklem K 8 svn:date V 27 2010-11-05T02:45:13.311406Z K 7 svn:log V 149 MFC: r214513 Modify nfs_open() in the experimental NFS client to be compatible with the regular NFS client. Also, fix a couple of mutex lock issues. END K 10 svn:author V 8 kientzle K 8 svn:date V 27 2010-11-05T05:11:54.069162Z K 7 svn:log V 147 Clarify the naming: Methods that free an object should be called "free". Retain the old "finish" names to preserve source compatibility for now. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-05T06:35:10.905646Z K 7 svn:log V 525 Introduce a bit flag UMUTEX_SIMPLE for umutex, so that it does not use thread id to lock and unlock. this is necessary, because a link entry can not be embedded into mutex which will be shared between processes, because if other process do incorrect think, it corrupt your link list. But to let unlocking after fork() to work, we either should link it into list to remember it or use a id which can be atomatically duplicated. We use pthread pointer, the bit UMUTEX_SIMPLE_OWNER indicates if the mutex is locked or unlocked. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-05T06:39:38.161222Z K 7 svn:log V 119 Restore to previous version, don't use THR_UMTX_ACQUIRE, as it is not needed to inhibit signal and other async things. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-05T06:42:30.142700Z K 7 svn:log V 526 Merge mutex link code from libthr.user_requeue. Now following the change in kernel, we use UMUTEX_SIMPLE bit flag to avoid use thread id from process-private mutex, so we don't need to link mutex into list, this saves some cycles. Not that for priority-protect mutex, we still need to link it, because we should restore correct priority after unlocking a such kind of mutex. Also the priority-inhertied mutex needs to be linked, because we still use thread ID as lock-word. The simplest mutex is now a bit faster then before. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-05T07:03:35.816684Z K 7 svn:log V 71 Don't forget to lock the mutex again before doing thread cancellation. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-05T07:04:32.094815Z K 7 svn:log V 109 Account priority mutex we have locked, in cv_wait we use kernel based cv if the thread helds priority mutex. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-05T07:42:10.659093Z K 7 svn:log V 21 Oops, remove printf. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-05T07:49:47.114382Z K 7 svn:log V 33 Free memory pages of mutex link. END K 10 svn:author V 7 n_hibma K 8 svn:date V 27 2010-11-05T08:30:16.493117Z K 7 svn:log V 286 Bugfix: Move the 'at =') and hence prevent 'port=X' (and 'bus=<"on" string>) from making it into the environment for the devd action. Reviewed by: hselasky MFC after: 2 weeks END K 10 svn:author V 7 n_hibma K 8 svn:date V 27 2010-11-05T09:06:23.537804Z K 7 svn:log V 294 - Remove an unused entry from the softc (only used in a debugging printf). - Fix the loop count on detach (causing a panic on detaching a serial dongle). - Increase a buffer in case some driver want extra long tty device names (postfixing the purpose of the tty for example, e.g. u3g.ppp). END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-05T09:10:16.643168Z K 7 svn:log V 32 Count priority mutex correctly. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-05T09:32:32.040541Z K 7 svn:log V 37 Pass process-shared flag to syscall. END K 10 svn:author V 6 rpaulo K 8 svn:date V 27 2010-11-05T11:31:39.005264Z K 7 svn:log V 56 Append to CFLAGS, don't clobber it. Submitted by: loos END K 10 svn:author V 3 jhb K 8 svn:date V 27 2010-11-05T13:42:58.677115Z K 7 svn:log V 942 Adjust the order of operations in spinlock_enter() and spinlock_exit() to work properly with single-stepping in a kernel debugger. Specifically, these routines have always disabled interrupts before increasing the nesting count and restored the prior state of interrupts after decreasing the nesting count to avoid problems with a nested interrupt not disabling interrupts when acquiring a spin lock. However, trap interrupts for single-stepping can still occur even when interrupts are disabled. Now the saved state of interrupts is not saved in the thread until after interrupts have been disabled and the nesting count has been increased. Similarly, the saved state from the thread cannot be read once the nesting count has been decreased to zero. To fix this, use temporary variables to store interrupt state and shuffle it between the thread's MD area and the appropriate registers. In cooperation with: bde MFC after: 1 month END K 10 svn:author V 3 jhb K 8 svn:date V 27 2010-11-05T13:45:13.223819Z K 7 svn:log V 64 MFC 214673: Fix a few typos and style nits in the example code. END K 10 svn:author V 3 jhb K 8 svn:date V 27 2010-11-05T13:45:26.386238Z K 7 svn:log V 64 MFC 214673: Fix a few typos and style nits in the example code. END K 10 svn:author V 2 ed K 8 svn:date V 27 2010-11-05T13:46:58.325753Z K 7 svn:log V 37 Disable trampoline_setup() on PPC64. END K 10 svn:author V 2 jh K 8 svn:date V 27 2010-11-05T16:04:10.301766Z K 7 svn:log V 108 MFC r212505: In backup_kernel(), support backing up subdirectories and handle files with spaces correctly. END K 10 svn:author V 7 yongari K 8 svn:date V 27 2010-11-05T18:19:54.996346Z K 7 svn:log V 205 Enable 64bit DMA addressing for RTL810xE/RTL8168/RTL8111 PCIe controllers. Some old PCI controllers may work with DAC but it was known to be buggy so 64bit DMA addressing is used only on PCIe controllers. END K 10 svn:author V 7 yongari K 8 svn:date V 27 2010-11-05T18:23:43.042390Z K 7 svn:log V 27 Remove extra white spaces. END K 10 svn:author V 7 yongari K 8 svn:date V 27 2010-11-05T18:24:50.196690Z K 7 svn:log V 10 style(9). END K 10 svn:author V 7 n_hibma K 8 svn:date V 27 2010-11-05T19:12:48.019754Z K 7 svn:log V 519 Implement ucom_set_pnpinfo_usb() providing ttyname and port number information through devd. My E220 now produces the notification (1 line): +u3g0 at bus=1 hubaddr=1 port=0 devaddr=2 interface=0 \ vendor=0x12d1 product=0x1003 devclass=0x00 devsubclass=0x00 \ sernum="" release=0x0000 intclass=0xff intsubclass=0xff \ ttyname=U0 ttyports=2 on uhub0 Note: serial/ufoma and net/uhso still provide port number and tty name (uhso only) information through sysctls, which should now be removed. Reviewed by: hpselasky END K 10 svn:author V 7 yongari K 8 svn:date V 27 2010-11-05T19:28:00.521630Z K 7 svn:log V 1281 Add simple MAC statistics counter reading support. Unfortunately useful counters like rl_missed_pkts is 16 bits quantity which is too small to hold meaningful information happened in a second. This means driver should frequently read these counters in order not to lose accuracy and that approach is too inefficient in driver's view. Moreover it seems there is no way to trigger an interrupt to detect counter near-full or wraparound event as well as lacking clearing the MAC counters. Another limitation of reading the counters from RealTek controllers is lack of interrupt firing at the end of DMA cycle of MAC counter read request such that driver have to poll the end of the DMA which is a time consuming process as well as inefficient. The more severe issue of the MAC counter read request is it takes too long to complete the DMA. All these limitation made maintaining MAC counters in driver impractical. For now, just provide simple sysctl interface to trigger reading the MAC counters. These counters could be used to track down driver issues. Users can read MAC counters maintained in controller with the following command. #sysctl dev.re.0.stats=1 While I'm here add check for validity of dma map and allocated memory before unloading/freeing them. Tested by: rmacklem END K 10 svn:author V 3 dim K 8 svn:date V 27 2010-11-05T19:30:30.982325Z K 7 svn:log V 174 Step 1: sync sys/conf/ldscript.i386 with the binutils 2.15 version, preserving FreeBSD-specific customizations (in particular, the addition of _start_ctors and _stop_ctors). END K 10 svn:author V 6 marius K 8 svn:date V 27 2010-11-05T19:38:28.719859Z K 7 svn:log V 38 Correct an inverted check in r213893. END K 10 svn:author V 3 dim K 8 svn:date V 27 2010-11-05T19:40:27.536820Z K 7 svn:log V 121 Step 2: sync sys/conf/ldscript.i386 with the binutils 2.17.50 version, again preserving FreeBSD-specific customizations. END K 10 svn:author V 4 jkim K 8 svn:date V 27 2010-11-05T19:50:09.533862Z K 7 svn:log V 615 Fix a use-after-free bug for extended IRQ resource[1]. When _PRS buffer is copied as a template for _SRS, a string pointer for descriptor name is also copied and it becomes stale as soon as it gets de-allocated[2]. Now _CRS is used as a template for _SRS as ACPI specification suggests if it is usable. The template from _PRS is still utilized but only when _CRS is not available or broken. To avoid use-after-free the problem in this case, however, only mandatory fields are copied, optional data is removed, and structure length is adjusted accordingly. Reported by: hps[1] Analyzed by: avg[2] Tested by: hps END K 10 svn:author V 4 jkim K 8 svn:date V 27 2010-11-05T20:24:26.184492Z K 7 svn:log V 49 Add a forgotten change from the previous commit. END K 10 svn:author V 3 dim K 8 svn:date V 27 2010-11-05T20:58:18.674019Z K 7 svn:log V 349 For sys/boot/ia64/efi and sys/boot/ia64/ski, modify their linker scripts to move the .IA_64.unwind and .IA_64.unwind_info input sections into separate output sections. Otherwise ld will complain about it (".data has both ordered [`.IA_64.unwind'] and unordered [`.IA_64.unwind_info'] sections"). This makes ia64 buildworld run to full completion. END K 10 svn:author V 3 kib K 8 svn:date V 27 2010-11-05T21:13:16.627855Z K 7 svn:log V 293 Fix a bug in r214049. The nvp == vp case shall be handled specially only for !usevget case. If VFS_VGET is working, the vnode shared lock is obtained recursively and vput() shall be done, not vunref(). Submitted by: rmacklem Tested by: Josh Carroll MFC after: 3 days END K 10 svn:author V 7 n_hibma K 8 svn:date V 27 2010-11-05T21:17:55.584968Z K 7 svn:log V 514 Bugfix: In rev 213509 Alexander committed a duplicate ID for ZTE STOR based devices (QUALCOMMINC 0x2000). He made it use SCSI eject instead of ZTE STOR eject. This prevented my ZTE MF626 dongle from switching. - Apply both eject methods for ZTE STOR based devices. Works on my as well as mav's device. - Remove the duplicate. - Sort the usbdevs entries for Qualcomm so this won't happen again. - Add bootverbose message displaying the fact that we are ejecting (and how). Reviewed by: mav MFC after: 2 weeks END K 10 svn:author V 6 jilles K 8 svn:date V 27 2010-11-05T21:47:58.898231Z K 7 svn:log V 169 sh: Add simple tests for printf. These are not meant as a replacement for tools/regression/usr.bin/printf/* but to detect errors specific to making it a shell builtin. END K 10 svn:author V 7 delphij K 8 svn:date V 27 2010-11-05T22:18:09.671114Z K 7 svn:log V 374 Validate whether the zfs_cmd_t submitted from userland is not smaller than what we have. Without the check the kernel could accessing memory that does not belong to the request struct. Note that we do not test if the struct equals in size at this time, which may faciliate forward compatibility with newer binaries. Reviewed by: pjd at MeetBSD CA '2010 MFC after: 1 week END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-06T00:53:54.700586Z K 7 svn:log V 54 Decrease waiter count when it is timeout or canceled. END K 10 svn:author V 6 marius K 8 svn:date V 27 2010-11-06T01:09:00.710916Z K 7 svn:log V 104 Fix an instance missed in r212892: MFC r212413: bus_add_child: change type of order parameter to u_int END K 10 svn:author V 7 delphij K 8 svn:date V 27 2010-11-06T03:59:21.133508Z K 7 svn:log V 92 Inverse display of top(1)'s table header when running in inactive mode. MFC after: 2 weeks END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-06T09:23:49.726124Z K 7 svn:log V 396 MFC r209050 (originally committed by jhb): Add helper macros to iterate over available CPUs in the system. CPU_FOREACH(i) iterates over the CPU IDs of all available CPUs. The CPU_FIRST() and CPU_NEXT(i) macros can also be used to iterate over available CPU IDs. CPU_NEXT(i) wraps around to CPU_FIRST() rather than returning some sort of terminator. Requested by: rwatson Reviewed by: attilio END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-06T09:34:51.961550Z K 7 svn:log V 1118 MFC r209662,209665: Import the Statistical Information For TCP Research (SIFTR) kernel module into FreeBSD. SIFTR logs a range of statistics on active TCP connections to a log file, providing the ability to make highly granular measurements of TCP connection state. The tool is aimed at system administrators, developers and researchers alike. Please take it for a spin and test it out - the man page should have all the information required to get you going. Many thanks go to the Cisco University Research Program Fund at Community Foundation Silicon Valley and the FreeBSD Foundation. Their support of our work at the Centre for Advanced Internet Architectures, Swinburne University of Technology is greatly appreciated. r209980: Catch up with the rename of DPCPU_SUM to DPCPU_VARSUM. r209982: The SIFTR DPCPU statistics struct was not being zeroed between enable/disable cycles so the values would accumulate rather than reset for each cycle. Sponsored by: Cisco URP (r209662), FreeBSD Foundation Reviewed by: dwmalone, gnn, rpaulo (r209662) Tested by: Many on freebsd-current@ and elsewhere over the years END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-06T09:42:41.377508Z K 7 svn:log V 371 MFC r213158: Internalise reassembly queue related functionality and variables which should not be used outside of the reassembly queue implementation. Provide a new function to flush all segments from a reassembly queue and call it from the appropriate places instead of manipulating the queue directly. Sponsored by: FreeBSD Foundation Reviewed by: andre, gnn, rpaulo END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-06T09:56:14.047685Z K 7 svn:log V 547 MFC r211396 (originally committed by andre): Add uma_zone_get_max() to obtain the effective limit after a call to uma_zone_set_max(). The UMA zone limit is not exactly set to the value supplied but rounded up to completely fill the backing store increment (a page normally). This can lead to surprising situations where the number of elements allocated from UMA is higher than the supplied limit value. The new get function reads back the effective value so that the supplied limit value can be adjusted to the real limit. Reviewed by: jeffr END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-06T10:06:58.695759Z K 7 svn:log V 269 MFC r213910: - Simplify implementation of uma_zone_get_max. - Add uma_zone_get_cur which returns the current approximate occupancy of a zone. This is useful for providing stats via sysctl amongst other things. Sponsored by: FreeBSD Foundation Reviewed by: gnn, jhb END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-06T10:17:43.475756Z K 7 svn:log V 504 MFC r210203: - Move common code from the hook functions that fills in a packet node struct to a separate inline function. This further reduces duplicate code that didn't have a good reason to stay as it was. - Reorder the malloc of a pkt_node struct in the hook functions such that it only occurs if we managed to find a usable tcpcb associated with the packet. - Make the inp_locally_locked variable's type consistent with the prototype of siftr_siftdata(). Sponsored by: FreeBSD Foundation END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-06T10:21:46.549136Z K 7 svn:log V 110 MFC r213162: Log the number of segments currently in the reassembly queue. Sponsored by: FreeBSD Foundation END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-06T10:26:49.382354Z K 7 svn:log V 779 MFC r213912: - Switch the "net.inet.tcp.reass.cursegments" and "net.inet.tcp.reass.maxsegments" sysctl variables to be based on UMA zone stats. The value returned by the cursegments sysctl is approximate owing to the way in which uma_zone_get_cur is implemented. - Discontinue use of V_tcp_reass_qsize as a global reassembly segment count variable in the reassembly implementation. The variable was used without proper synchronisation and was duplicating accounting done by UMA already. The lack of synchronisation was particularly problematic on SMP systems terminating many TCP sessions, resulting in poor TCP performance for connections with non-zero packet loss. Sponsored by: FreeBSD Foundation Reviewed by: andre, gnn, rpaulo (as part of a larger patch) END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-06T10:31:52.155231Z K 7 svn:log V 1246 MFC r213913: Retire the system-wide, per-reassembly queue segment limit. The mechanism is far too coarse grained to be useful and the default value significantly degrades TCP performance on moderate to high bandwidth-delay product paths with non-zero loss (e.g. 5+Mbps connections across the public Internet often suffer). Replace the outgoing mechanism with an individual per-queue limit based on the number of MSS segments that fit into the socket's receive buffer. This should strike a good balance between performance and the potential for resource exhaustion when FreeBSD is acting as a TCP receiver. With socket buffer autotuning (which is enabled by default), the reassembly queue tracks the socket buffer and benefits too. As the XXX comment suggests, my testing uncovered some unexpected behaviour which requires further investigation. By using so->so_rcv.sb_hiwat instead of sbspace(&so->so_rcv), we allow more segments to be held across both the socket receive buffer and reassembly queue than we probably should. The tradeoff is better performance in at least one common scenario, versus a devious sender's ability to consume more resources on a FreeBSD receiver. Sponsored by: FreeBSD Foundation Reviewed by: andre, gnn, rpaulo END K 10 svn:author V 3 uqs K 8 svn:date V 27 2010-11-06T10:54:33.957542Z K 7 svn:log V 20 Fix manpage markup. END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-06T11:09:04.723529Z K 7 svn:log V 162 MFC r205959: Add support for ALQ(9) to be compiled and loaded as a kernel module. Sponsored by: FreeBSD Foundation Reviewed by: dwmalone, jeff, rpaulo, rwatson END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-06T11:17:30.486251Z K 7 svn:log V 280 MFC r206026: - Factor code to destroy an ALQ out of alq_close() into a private alq_destroy(). - Use the new alq_destroy() to properly handle a failure case in alq_open(). Sponsored by: FreeBSD Foundation Reviewed by: dwmalone, jeff, rpaulo, rwatson (as part of a larger patch) END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-06T11:20:20.842993Z K 7 svn:log V 193 MFC r206027: According to SLEEP(9), msleep() is deprecated in favour of mtx_sleep(). Sponsored by: FreeBSD Foundation Reviewed by: dwmalone, jeff, rpaulo, rwatson (as part of a larger patch) END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-06T11:23:46.235836Z K 7 svn:log V 195 MFC r206028: The ALQ should not be considered drained until it has been made inactive. Sponsored by: FreeBSD Foundation Reviewed by: dwmalone, jeff, rpaulo, rwatson (as part of a larger patch) END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-06T11:38:40.495303Z K 7 svn:log V 869 MFC r207223: - Rework the underlying ALQ storage to be a circular buffer, which amongst other things allows variable length messages to be easily supported. - Extend KPI with alq_writen() and alq_getn() to support variable length messages, which is enabled at ALQ creation time depending on the arguments passed to alq_open(). Also add variants of alq_open() and alq_post() that accept a flags argument. The KPI is still fully backwards compatible and shouldn't require any change in ALQ consumers unless they wish to utilise the new features. - Introduce the ALQ_NOACTIVATE and ALQ_ORDERED flags to allow ALQ consumers to have more control over IO scheduling and resource acquisition respectively. - Strengthen invariants checking. - Document ALQ changes in ALQ(9) man page. Sponsored by: FreeBSD Foundation Reviewed by: gnn, jeff, rpaulo, rwatson END K 10 svn:author V 6 marius K 8 svn:date V 27 2010-11-06T11:38:49.806292Z K 7 svn:log V 293 - Move Sun Fire V240 to the list of known working machines. - For the parallel stable/7 and stable/8 branches mention both releases that first supported a particular sparc64 machine and update the sparc64 hardware list regarding machines that will be supported beginning with 7.4-RELEASE. END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-06T12:41:47.506097Z K 7 svn:log V 231 The kthread/kproc KPI differs between 7.x and 8.x+ and requires the use of kthread_exit() in order to get a wakeup delivered to the "struct proc *" which ALQ relies on. This is an intentional direct commit to the 7-STABLE branch. END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-06T13:03:33.569200Z K 7 svn:log V 1226 MFC r209662,209665: Import the Statistical Information For TCP Research (SIFTR) kernel module into FreeBSD. SIFTR logs a range of statistics on active TCP connections to a log file, providing the ability to make highly granular measurements of TCP connection state. The tool is aimed at system administrators, developers and researchers alike. Please take it for a spin and test it out - the man page should have all the information required to get you going. Many thanks go to the Cisco University Research Program Fund at Community Foundation Silicon Valley and the FreeBSD Foundation. Their support of our work at the Centre for Advanced Internet Architectures, Swinburne University of Technology is greatly appreciated. The base SIFTR code from r209662 was modified as part of this MFC in order to work correctly on FreeBSD 7. r209980: Catch up with the rename of DPCPU_SUM to DPCPU_VARSUM. r209982: The SIFTR DPCPU statistics struct was not being zeroed between enable/disable cycles so the values would accumulate rather than reset for each cycle. Sponsored by: Cisco URP (r209662), FreeBSD Foundation Reviewed by: dwmalone, gnn, rpaulo (r209662) Tested by: Many on freebsd-current@ and elsewhere over the years END K 10 svn:author V 6 tuexen K 8 svn:date V 27 2010-11-06T13:30:54.521226Z K 7 svn:log V 127 * Fix an accounting bug regarding SACK/NR-SACK chunks. * Fix the generation of the SACK/NR-SACK gap lists. MFC after: 3 days. END K 10 svn:author V 6 tuexen K 8 svn:date V 27 2010-11-06T13:43:18.957525Z K 7 svn:log V 110 Do not resend DATA chunks without delay when dropped by the peer and the CRC was correct. MFC after: 3 days. END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-06T13:46:58.911144Z K 7 svn:log V 473 MFC r213158: Internalise reassembly queue related functionality and variables which should not be used outside of the reassembly queue implementation. Provide a new function to flush all segments from a reassembly queue and call it from the appropriate places instead of manipulating the queue directly. The base code from r213158 was modified as part of this MFC in order to work correctly on FreeBSD 7. Sponsored by: FreeBSD Foundation Reviewed by: andre, gnn, rpaulo END K 10 svn:author V 6 marius K 8 svn:date V 27 2010-11-06T13:58:24.995528Z K 7 svn:log V 66 Implement pmap_is_prefaultable(). Reviewed by: alc (with bugfix) END K 10 svn:author V 3 mav K 8 svn:date V 27 2010-11-06T14:22:50.546976Z K 7 svn:log V 66 Add support for odd-sized PIO transfers, sometimes used by ATAPI. END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-06T14:38:57.511475Z K 7 svn:log V 649 MFC r211396 (originally committed by andre): Add uma_zone_get_max() to obtain the effective limit after a call to uma_zone_set_max(). The UMA zone limit is not exactly set to the value supplied but rounded up to completely fill the backing store increment (a page normally). This can lead to surprising situations where the number of elements allocated from UMA is higher than the supplied limit value. The new get function reads back the effective value so that the supplied limit value can be adjusted to the real limit. The base code from r211396 was modified as part of this MFC in order to work correctly on FreeBSD 7. Reviewed by: jeffr END K 10 svn:author V 2 bz K 8 svn:date V 27 2010-11-06T14:46:24.237169Z K 7 svn:log V 263 MFC r214250: Make the IPsec SADB embedded route cache a union to be able to hold both the legacy and IPv6 route destination address. Previously in case of IPv6, there was a memory overwrite due to not enough space for the IPv6 address. PR: kern/122565 END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-06T14:49:10.094447Z K 7 svn:log V 504 MFC r210203: - Move common code from the hook functions that fills in a packet node struct to a separate inline function. This further reduces duplicate code that didn't have a good reason to stay as it was. - Reorder the malloc of a pkt_node struct in the hook functions such that it only occurs if we managed to find a usable tcpcb associated with the packet. - Make the inp_locally_locked variable's type consistent with the prototype of siftr_siftdata(). Sponsored by: FreeBSD Foundation END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-06T14:53:22.021887Z K 7 svn:log V 110 MFC r213162: Log the number of segments currently in the reassembly queue. Sponsored by: FreeBSD Foundation END K 10 svn:author V 3 uqs K 8 svn:date V 27 2010-11-06T15:04:48.858972Z K 7 svn:log V 47 Put string in quotes, like is done everywhere. END K 10 svn:author V 3 uqs K 8 svn:date V 27 2010-11-06T15:04:56.468729Z K 7 svn:log V 122 Apply style(9) and unbreak build. This went unnoticed during the WARNS bump, as this tool is not connected to the build. END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-06T15:10:31.187181Z K 7 svn:log V 396 MFC r209050 (originally committed by jhb): Add helper macros to iterate over available CPUs in the system. CPU_FOREACH(i) iterates over the CPU IDs of all available CPUs. The CPU_FIRST() and CPU_NEXT(i) macros can also be used to iterate over available CPU IDs. CPU_NEXT(i) wraps around to CPU_FIRST() rather than returning some sort of terminator. Requested by: rwatson Reviewed by: attilio END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-06T15:21:46.302577Z K 7 svn:log V 269 MFC r213910: - Simplify implementation of uma_zone_get_max. - Add uma_zone_get_cur which returns the current approximate occupancy of a zone. This is useful for providing stats via sysctl amongst other things. Sponsored by: FreeBSD Foundation Reviewed by: gnn, jhb END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-06T15:40:34.331351Z K 7 svn:log V 881 MFC r213912: - Switch the "net.inet.tcp.reass.cursegments" and "net.inet.tcp.reass.maxsegments" sysctl variables to be based on UMA zone stats. The value returned by the cursegments sysctl is approximate owing to the way in which uma_zone_get_cur is implemented. - Discontinue use of V_tcp_reass_qsize as a global reassembly segment count variable in the reassembly implementation. The variable was used without proper synchronisation and was duplicating accounting done by UMA already. The lack of synchronisation was particularly problematic on SMP systems terminating many TCP sessions, resulting in poor TCP performance for connections with non-zero packet loss. The base code from r213912 was modified as part of this MFC in order to work correctly on FreeBSD 7. Sponsored by: FreeBSD Foundation Reviewed by: andre, gnn, rpaulo (as part of a larger patch) END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-06T15:49:59.336860Z K 7 svn:log V 1348 MFC r213913: Retire the system-wide, per-reassembly queue segment limit. The mechanism is far too coarse grained to be useful and the default value significantly degrades TCP performance on moderate to high bandwidth-delay product paths with non-zero loss (e.g. 5+Mbps connections across the public Internet often suffer). Replace the outgoing mechanism with an individual per-queue limit based on the number of MSS segments that fit into the socket's receive buffer. This should strike a good balance between performance and the potential for resource exhaustion when FreeBSD is acting as a TCP receiver. With socket buffer autotuning (which is enabled by default), the reassembly queue tracks the socket buffer and benefits too. As the XXX comment suggests, my testing uncovered some unexpected behaviour which requires further investigation. By using so->so_rcv.sb_hiwat instead of sbspace(&so->so_rcv), we allow more segments to be held across both the socket receive buffer and reassembly queue than we probably should. The tradeoff is better performance in at least one common scenario, versus a devious sender's ability to consume more resources on a FreeBSD receiver. The base code from r213913 was modified as part of this MFC in order to work correctly on FreeBSD 7. Sponsored by: FreeBSD Foundation Reviewed by: andre, gnn, rpaulo END K 10 svn:author V 2 bz K 8 svn:date V 27 2010-11-06T15:56:44.390589Z K 7 svn:log V 263 MFC r214250: Make the IPsec SADB embedded route cache a union to be able to hold both the legacy and IPv6 route destination address. Previously in case of IPv6, there was a memory overwrite due to not enough space for the IPv6 address. PR: kern/122565 END K 10 svn:author V 6 marcel K 8 svn:date V 27 2010-11-06T16:09:25.362879Z K 7 svn:log V 151 MFC 213381: Replace an obsolete flag -L in an mkisofs(1) command line with -allow-leading-dots to fix "make release" for FreeBSD/powerpc. Author: hrs END K 10 svn:author V 8 dumbbell K 8 svn:date V 27 2010-11-06T17:48:46.352308Z K 7 svn:log V 250 Fix a segmentation fault in argument processing. The crash was caused by a command line such as this one: # foldl -b1 PR: bin/151592 Reported by: Marcus Reid Tested by: Marcus Reid MFC after: 3 days END K 10 svn:author V 8 bschmidt K 8 svn:date V 27 2010-11-06T18:17:20.560323Z K 7 svn:log V 626 Instead of using the AMRR ratectl algo as default for drivers which have the IEEE80211_C_RATECTL flag set, default to NONE for all drivers. Only if a driver calls ieee80211_ratectl_init() check if the NONE algo is still selected and try to use AMRR in that case. Drivers are still free to use any other algo by calling ieee80211_ratectl_set() prior to the ieee80211_ratectl_init() call. After this change it is now safe to assume that a ratectl algo is always available and selected, which renders the IEEE80211_C_RATECTL flag pretty much useless. Therefore revert r211314 and 211546. Reviewed by: rpaulo MFC after: 2 weeks END K 10 svn:author V 3 dim K 8 svn:date V 27 2010-11-06T18:36:21.497469Z K 7 svn:log V 49 Sync: merge r214649 through r214894 from ^/head. END K 10 svn:author V 3 mav K 8 svn:date V 27 2010-11-06T19:11:49.310004Z K 7 svn:log V 131 Mark command submission timeouts as timeouts. This should trigger device resets and increase chances of getting device back again. END K 10 svn:author V 5 gabor K 8 svn:date V 27 2010-11-06T21:04:01.974998Z K 7 svn:log V 264 MFC r210254: - Add a periodic script, which can be used to find installed ports' files with mismatched checksum MFC r211141 - Fixes to the chkportsum script to handle better some special cases, like spaces in filename Approved by: delphij (mentor) END K 10 svn:author V 7 yongari K 8 svn:date V 27 2010-11-06T21:54:32.546090Z K 7 svn:log V 176 If we got an invalid station address, generate random address. This might be caused by broken BIOS. Reported by: "Mikhail T." aldan.algebra.com> MFC after: 1 week END K 10 svn:author V 7 yongari K 8 svn:date V 27 2010-11-06T22:07:22.975597Z K 7 svn:log V 498 Fix a long standing bug in programming station address for Yukon controllers. sk(4) never reprogrammed station address for Yukon controllers so overriding station address with ifconfig(8) was not possible. Fix the bug by reprogramming all registers that control station address, flow-control and virtual station address. Virtual station address has no use at this moment since driver does not make use of fail over feature. Tested by: "Mikhail T." aldan.algebra.com> MFC after: 1 week END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-07T01:19:40.639666Z K 7 svn:log V 311 Remove siis.4 from the man4/Makefile. It was incorrectly included in r214875 as part of the SIFTR MFC and breaks buildworld as siis.4 doesn't exist in stable/7. This is an intentional direct commit to the 7-STABLE branch. Pointy hat to: lstewart Noticed by: Michael Butler END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-07T02:16:07.456148Z K 7 svn:log V 141 Add POSIX functions pthread_mutexattr_setrobust and pthread_mutexattr_getrobust, these functions are required to support POSIX robust mutex. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-07T02:20:34.202648Z K 7 svn:log V 172 The POSIX robust mutex may return two error codes: EOWNERDEAD - owner thread is dead without unlocking mutex. ENOTRECOVERABLE - application marks its state unrecoverable. END K 10 svn:author V 5 gonzo K 8 svn:date V 27 2010-11-07T03:09:02.630635Z K 7 svn:log V 40 - Add minidump support for FreeBSD/mips END K 10 svn:author V 5 gonzo K 8 svn:date V 27 2010-11-07T03:26:22.903970Z K 7 svn:log V 30 Add minidump support for MIPS END K 10 svn:author V 8 kientzle K 8 svn:date V 27 2010-11-07T03:40:37.185239Z K 7 svn:log V 267 If the Zip reader doesn't see a PK signature block because there's inter-entry garbage, just scan forward to find the next one. This allows us to handle a lot of Zip archives that have been modified in-place. Thanks to: Gleb Kurtsou for sending me a sample archive END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-07T06:46:52.314736Z K 7 svn:log V 66 Add error messages for error code EOWNERDEAD and ENOTRECOVERABLE. END K 10 svn:author V 4 joel K 8 svn:date V 27 2010-11-07T07:16:35.248861Z K 7 svn:log V 22 Remove extraneous Aq. END