ļ227630 132 1060 1060 249 247 209 565 482 498 216 207 121 194 179 121 339 143 831 181 178 265 277 2110 408 144 195 155 260 377 257 99 160 180 272 440 367 367 133 202 339 339 164 161 128 152 179 416 139 331 331 407 407 169 169 146 146 351 156 1597 161 427 443 391 122 224 122 241 288 940 144 431 368 362 326 499 296 3563 366 326 296 499 3563 1494 1494 1472 388 388 365 365 168 168 145 145 163 898 347 203 149 221 174 170 313 139 296 299 273 464 281 372 294 285 1805 338 127 394 300 709 176 854 305 293 279 299 404 547 150 261 99 528 1193 176 332 170 K 10 svn:author V 8 rmacklem K 8 svn:date V 27 2011-11-17T16:08:46.599505Z K 7 svn:log V 962 MFC: r227059 Both a crash reported on freebsd-current on Oct. 18 under the subject heading "mtx_lock() of destroyed mutex on NFS" and PR# 156168 appear to be caused by clnt_dg_destroy() closing down the socket prematurely. When to close down the socket is controlled by a reference count (cs_refs), but clnt_dg_create() checks for sb_upcall being non-NULL to decide if a new socket is needed. I believe the crashes were caused by the following race: clnt_dg_destroy() finds cs_refs == 0 and decides to delete socket clnt_dg_destroy() then loses race with clnt_dg_create() for acquisition of the SOCKBUF_LOCK() clnt_dg_create() finds sb_upcall != NULL and increments cs_refs to 1 clnt_dg_destroy() then acquires SOCKBUF_LOCK(), sets sb_upcall to NULL and destroys socket This patch fixes the above race by changing clnt_dg_destroy() so that it acquires SOCKBUF_LOCK() before testing cs_refs. Tested by: bz Reviewed by: dfr Approved by: re (kib) END K 10 svn:author V 8 rmacklem K 8 svn:date V 27 2011-11-17T16:38:22.497372Z K 7 svn:log V 962 MFC: r227059 Both a crash reported on freebsd-current on Oct. 18 under the subject heading "mtx_lock() of destroyed mutex on NFS" and PR# 156168 appear to be caused by clnt_dg_destroy() closing down the socket prematurely. When to close down the socket is controlled by a reference count (cs_refs), but clnt_dg_create() checks for sb_upcall being non-NULL to decide if a new socket is needed. I believe the crashes were caused by the following race: clnt_dg_destroy() finds cs_refs == 0 and decides to delete socket clnt_dg_destroy() then loses race with clnt_dg_create() for acquisition of the SOCKBUF_LOCK() clnt_dg_create() finds sb_upcall != NULL and increments cs_refs to 1 clnt_dg_destroy() then acquires SOCKBUF_LOCK(), sets sb_upcall to NULL and destroys socket This patch fixes the above race by changing clnt_dg_destroy() so that it acquires SOCKBUF_LOCK() before testing cs_refs. Tested by: bz Reviewed by: dfr Approved by: re (kib) END K 10 svn:author V 6 mjacob K 8 svn:date V 27 2011-11-17T17:16:43.335056Z K 7 svn:log V 153 Make a playpen area for potential FreeBSD work. I had been using a perforce client, but it gets so hopelessly skewed from head that it gets unbuildable. END K 10 svn:author V 8 brueffer K 8 svn:date V 27 2011-11-17T17:57:35.878643Z K 7 svn:log V 149 Some cleanup: - Start sentences on new lines - Mark up sysctl variables - Use %d in sysctl variables to denote the index, as we do in other manpages END K 10 svn:author V 6 mjacob K 8 svn:date V 27 2011-11-17T18:08:56.424962Z K 7 svn:log V 113 Import changes from my perforce client into a users svn project. Mostly an alternate mpt2 driver at this point. END K 10 svn:author V 3 mav K 8 svn:date V 27 2011-11-17T20:46:51.467973Z K 7 svn:log V 472 Change the way how "not implemented" AHCI channels handled. Instead of completely skipping them, create ahcich devices for them to allocate unit numbers, but mark them as disabled to prevent driver probe and attach. Last time some BIOSes tend to report unused channels as "not implemented". This change makes ahcichX devices numbering consistent, independently of connected disks. It makes per-channel driver hints usable and CAM devices wiring possible on such systems. END K 10 svn:author V 3 dim K 8 svn:date V 27 2011-11-17T21:06:53.962430Z K 7 svn:log V 389 Revert r227538, since it doesn't compile with clang at all (it doesn't allow the built-in operations to be redefined, at least not without excessive force). Instead, just disable LLVM's support for atomic operations for now. Nothing in either clang or the tablegen tools currently depends on it. This still allows users of head built before r198344 to upgrade to top-of-head seamlessly. END K 10 svn:author V 3 mav K 8 svn:date V 27 2011-11-17T21:07:56.521459Z K 7 svn:log V 405 Introduce CAM_SIM_POLLED SIM flag, indicating that it works in polling mode. It blocks CAM SWI usage on requests completion, unneeded because of polling and denied during kernel dumping because of blocked scheduler. Before r198899 there was periph flag CAM_PERIPH_POLLED, but that was wrong, because there is whole SIM is polled or handled by SWI, not a single periph. Tested by: kib MFC after: 1 month END K 10 svn:author V 7 yongari K 8 svn:date V 27 2011-11-17T21:24:56.241646Z K 7 svn:log V 119 Add preliminary support for second generation RTL8105E PCIe FastEthernet. H/W donated by: RealTek Semiconductor Corp. END K 10 svn:author V 7 yongari K 8 svn:date V 27 2011-11-17T22:07:50.900943Z K 7 svn:log V 110 Add preliminary support for RTL8168/8111F PCIe Gigabit ethernet. H/W donated by: RealTek Semiconductor Corp. END K 10 svn:author V 6 marius K 8 svn:date V 27 2011-11-17T22:56:40.282763Z K 7 svn:log V 26 Fix compilation on ILP32. END K 10 svn:author V 6 marius K 8 svn:date V 27 2011-11-17T22:59:16.366857Z K 7 svn:log V 99 Implement prefetch_read_{many,once}() for sparc64 and fix compilation on other !x86 architectures. END K 10 svn:author V 6 eadler K 8 svn:date V 27 2011-11-17T23:04:43.475372Z K 7 svn:log V 84 - be more precise about the unit of measurement Approved by: jhb MFC after: 3 days END K 10 svn:author V 6 sbruno K 8 svn:date V 27 2011-11-18T01:00:26.444773Z K 7 svn:log V 26 add a proj dir for myself END K 10 svn:author V 6 sbruno K 8 svn:date V 27 2011-11-18T01:04:25.557041Z K 7 svn:log V 243 Add the Yahoo! mfi(4) monitoring utility for review. Compiles against amd64 freebsd-current at this time. Installs a /usr/sbin/mfid and can be started/stopped via the included rc script. Obtained from: Yahoo! Inc. and jhb@ in a former life END K 10 svn:author V 6 sbruno K 8 svn:date V 27 2011-11-18T01:07:08.757340Z K 7 svn:log V 48 etc/bin --> usr/sbin Obtained from: Yahoo! Inc END K 10 svn:author V 2 mm K 8 svn:date V 27 2011-11-18T01:28:52.317641Z K 7 svn:log V 739 Update and desolarization of zfs(8) and zpool(8) manual pages: - synchronized to match new vendor code (Illumos rev. 13513) [1] - removed references to sun commands (replaced with FreeBSD commands) - removed ATTRIBUTES sections - updated SEE ALSO sections - properly updated copyright information (required by CDDL) - remove empty lines via MANFILTER zfs(8) only: - replaced "Zones" section with new "Jails" section - removed misleading "ZFS Volumes as Swap or Dump Devices" section - updated shareiscsi and sharesmb option information (not supported on FreeBSD) - replace zoned property with jailed property zpool(8) only: - updated device names in examples Obtained from: Illumos (as of rev. 13513:f84d4672fdbd) [1] MFC after: 1 week END K 10 svn:author V 6 sbruno K 8 svn:date V 27 2011-11-18T01:30:54.423711Z K 7 svn:log V 86 Add 3 clause license, just to be clear. Obtained from: Yahoo Inc. Noted by: delphij@ END K 10 svn:author V 2 mm K 8 svn:date V 27 2011-11-18T02:06:09.002589Z K 7 svn:log V 87 Fix reference to fsync(2). Add more references to SEE ALSO section. MFC after: 1 week END K 10 svn:author V 2 mm K 8 svn:date V 27 2011-11-18T02:25:54.150724Z K 7 svn:log V 173 More zfs(8) manpage fixes: - remove shareiscsi property - mark casesensitivity property as unsupported - remove reference to Solaris Administration Guide MFC after: 1 week END K 10 svn:author V 5 kevlo K 8 svn:date V 27 2011-11-18T03:05:20.898248Z K 7 svn:log V 182 Add unicode support to msdosfs and smbfs; original pathes from imura, bug fixes by Kuan-Chung Chiu . Tested by me in production for several days at work. END K 10 svn:author V 6 adrian K 8 svn:date V 27 2011-11-18T05:06:30.443483Z K 7 svn:log V 2013 Flesh out some slightly dirty reset/channel change serialisation code for the ath(4) driver. Currently, there's nothing stopping reset, channel change and general TX/RX from overlapping with each other. This wasn't a big deal with pre-11n traffic as it just results in some dropped frames. It's possible this may have also caused some inconsistencies and badly-setup hardware. Since locks can't be held across all of this (the Linux solution) due to LORs with the network stack locks, some state counter variables are used to track what parts of the code the driver is currently in. When the hardware is being reset, it disables the taskqueue and waits for pending interrupts, tx, rx and tx completion before it begins the reset or channel change. TX and RX both abort if called during an active reset or channel change. Finally, the reset path now doesn't flush frames if ATH_RESET_NOLOSS is set. Instead, completed TX and RX frames are passed back up to net80211 before the reset occurs. This is not without problems: * Raw frame xmit are just dropped, rather than placed on a queue. The net80211 stack should be the one which queues these frames rather than the driver. * It's all very messy. It'd be better if these hardware operations were serialised on some kind of work queue, rather than hoping they can be run in parallel. * The taskqueue block/unblock may occur in parallel with the newstate() function - which shuts down the taskqueue and restarts it once the new state is known. It's likely these operations should be refcounted so the taskqueue is restored once no other areas in the code wish to suspend operations. * .. interrupt disable/enable should likely be refcounted as well. With this work, the driver does not drop frames during stuck beacon or fatal errors and thus 11n traffic continues to run correctly. Default and full resets however do still drop frames and it's possible this may occur, causing traffic loss and session stalls. Sponsored by: Hobnob, Inc. END K 10 svn:author V 6 grehan K 8 svn:date V 27 2011-11-18T05:43:43.457555Z K 7 svn:log V 312 Import virtio base, PCI front-end, and net/block/balloon drivers. Tested on Qemu/KVM, VirtualBox, and BHyVe. Currently built as modules-only on i386/amd64. Man pages not yet hooked up, pending review. Submitted by: Bryan Venteicher bryanv at daemoninthecloset dot org Reviewed by: bz MFC after: 4 weeks or so END K 10 svn:author V 7 linimon K 8 svn:date V 27 2011-11-18T06:03:11.067546Z K 7 svn:log V 48 Make the new verbosity under control of a flag. END K 10 svn:author V 8 hselasky K 8 svn:date V 27 2011-11-18T08:31:24.139560Z K 7 svn:log V 98 Make some XHCI command timeouts less strict. Reported by: Jan Henrik Sylvester MFC after: 1 week END K 10 svn:author V 6 tuexen K 8 svn:date V 27 2011-11-18T09:01:08.517397Z K 7 svn:log V 60 Cleanup comparison of interface names. MFC after: 1 month. END K 10 svn:author V 3 kib K 8 svn:date V 27 2011-11-18T09:05:25.703699Z K 7 svn:log V 167 Use the alternate form of the gcc extension that works even with -ansi -pedantic without issuing a warning, and which is recommended by gcc manual. MFC after: 1 week END K 10 svn:author V 3 kib K 8 svn:date V 27 2011-11-18T09:12:26.533059Z K 7 svn:log V 284 Consistently use process spin lock for protection of the p->p_boundary_count. Race could cause the execve(2) from the threaded process to hung since thread boundary counter was incorrect and single-threading never finished. Reported by: pluknet, pho Tested by: pho MFC after: 1 week END K 10 svn:author V 8 jchandra K 8 svn:date V 27 2011-11-18T09:30:24.775546Z K 7 svn:log V 159 Fix COP0 hazards for XLR and XLP The XLR CPUs do not have any software visible hazards for COP0 operations. On XLP the hazard is a ehb, since it is mips64r2. END K 10 svn:author V 7 attilio K 8 svn:date V 27 2011-11-18T09:54:14.741260Z K 7 svn:log V 4 MFC END K 10 svn:author V 3 kib K 8 svn:date V 27 2011-11-18T09:55:47.133985Z K 7 svn:log V 68 Fix fd leak. Reported by: slonoman2011 yandex ru MFC after: 1 week END K 10 svn:author V 3 kib K 8 svn:date V 27 2011-11-18T09:56:40.086788Z K 7 svn:log V 88 Free unused allocation on error. Reported by: slonoman2011 yandex ru MFC after: 1 week END K 10 svn:author V 6 philip K 8 svn:date V 27 2011-11-18T11:10:14.647014Z K 7 svn:log V 176 Limit building sfxge(4) to amd64 only to unbreak the tinderboxen. The driver should also work on (at least) i386 but hasn't been built/tested for a while. MFC after: 3 weeks END K 10 svn:author V 8 jchandra K 8 svn:date V 27 2011-11-18T11:18:59.446839Z K 7 svn:log V 342 Rearrange XLP configuration files. Create std.XLP for configuration options, which is included by the conf files. The files XLP, XLPN32 and XLP64 will have mostly ABI related options. Also move uart and pci to mips/nlm/std.xlp since all XLP configurations needs these devices. Obtained from: prabhath at netlogicmicro com (intial version) END K 10 svn:author V 7 fabient K 8 svn:date V 27 2011-11-18T14:41:48.086677Z K 7 svn:log V 270 MFC r227391: Import gcc fix for -fstack-protector that produces segfaulting binaries on arm/armel. Related gcc bug: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35965 Author kindly accepted that all of his patches can be use as GPLv2. PR: 161128 Approved by: re (kib) END K 10 svn:author V 7 fabient K 8 svn:date V 27 2011-11-18T14:56:06.637987Z K 7 svn:log V 270 MFC r227391: Import gcc fix for -fstack-protector that produces segfaulting binaries on arm/armel. Related gcc bug: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35965 Author kindly accepted that all of his patches can be use as GPLv2. PR: 161128 Approved by: re (kib) END K 10 svn:author V 8 brueffer K 8 svn:date V 27 2011-11-18T16:54:22.641320Z K 7 svn:log V 36 Add sfxge(4) to the hardware notes. END K 10 svn:author V 6 sbruno K 8 svn:date V 27 2011-11-18T17:35:04.920177Z K 7 svn:log V 106 Update to 2-clause BSD license for maximum compatibility Obtained from: Yahoo! Inc. Suggested by: peter@ END K 10 svn:author V 6 sbruno K 8 svn:date V 27 2011-11-18T17:37:04.838234Z K 7 svn:log V 243 Add the Yahoo! ata-raid monitoring daemon for review. Compiles against amd64 freebsd-current at this time. Installs a /usr/sbin/ard and cam be started/stopped via the included rc script. Obtained from: Yahoo! Inc. and jhb@ in a former life END K 10 svn:author V 6 sbruno K 8 svn:date V 27 2011-11-18T17:39:20.251206Z K 7 svn:log V 243 Add the Yahoo! mpt(4) montioring utility for review. Compiles against amd64 freebsd-current at this time. Installs a /usr/sbin/mptd and can be started/stopped via the included rc script. Obtained from: Yahoo! Inc. and jhb@ in a former life END K 10 svn:author V 6 sbruno K 8 svn:date V 27 2011-11-18T18:18:08.717013Z K 7 svn:log V 69 Branch the firewire code for a bit to overhaul fwohci init routines. END K 10 svn:author V 6 sbruno K 8 svn:date V 27 2011-11-18T18:19:14.386524Z K 7 svn:log V 66 Delete this branch as I have moved into a user branch for testing END K 10 svn:author V 6 sbruno K 8 svn:date V 27 2011-11-18T19:10:56.599326Z K 7 svn:log V 33 Delete such that I can try again END K 10 svn:author V 6 sbruno K 8 svn:date V 27 2011-11-18T19:12:12.018703Z K 7 svn:log V 57 Start with empty dir to play around with module building END K 10 svn:author V 3 pho K 8 svn:date V 27 2011-11-18T19:14:42.745061Z K 7 svn:log V 87 Added check for negative seconds value. Found by syscall() fuzzing. MFC after: 1 week END K 10 svn:author V 7 yongari K 8 svn:date V 27 2011-11-18T19:38:19.857403Z K 7 svn:log V 319 Partially revert r218788. r218788 removed calling dc_setcfg() for !DC_IS_ADMTEK in dc_miibus_statchg(). This change broke link establishment of Intel 21143 with dcphy(4) where it stuck in "ability detect" state without completing auto-negotiation. Also nuke dc_if_media as it's not actually used. Submitted by: marius END K 10 svn:author V 6 sbruno K 8 svn:date V 27 2011-11-18T19:43:02.758050Z K 7 svn:log V 44 Branch firewire device code for development END K 10 svn:author V 5 dougb K 8 svn:date V 27 2011-11-18T20:47:14.015762Z K 7 svn:log V 236 MFC r226863: Fix svnversion for svn 1.7.x by not looking for .svn in ${SYSDIR} (since it no longer exists). Instead, run svnversion if we can find the binary and test that the output looks like a version string. Approved by: re (kib) END K 10 svn:author V 5 dougb K 8 svn:date V 27 2011-11-18T20:51:31.267952Z K 7 svn:log V 236 MFC r226863: Fix svnversion for svn 1.7.x by not looking for .svn in ${SYSDIR} (since it no longer exists). Instead, run svnversion if we can find the binary and test that the output looks like a version string. Approved by: re (kib) END K 10 svn:author V 5 dougb K 8 svn:date V 27 2011-11-18T21:04:59.650022Z K 7 svn:log V 312 MFC r213077: Simplify how we find the kernel source. MFC r222218: expr -> sh arithmetic expansion MFC r226863: Fix svnversion for svn 1.7.x by not looking for .svn in ${SYSDIR} (since it no longer exists). Instead, run svnversion if we can find the binary and test that the output looks like a version string. END K 10 svn:author V 5 dougb K 8 svn:date V 27 2011-11-18T21:09:03.409370Z K 7 svn:log V 312 MFC r213077: Simplify how we find the kernel source. MFC r222218: expr -> sh arithmetic expansion MFC r226863: Fix svnversion for svn 1.7.x by not looking for .svn in ${SYSDIR} (since it no longer exists). Instead, run svnversion if we can find the binary and test that the output looks like a version string. END K 10 svn:author V 5 dougb K 8 svn:date V 27 2011-11-18T21:10:13.042157Z K 7 svn:log V 75 MFC r227416: Document that flock can return ENOLCK Approved by: re (kib) END K 10 svn:author V 5 dougb K 8 svn:date V 27 2011-11-18T21:12:05.606888Z K 7 svn:log V 75 MFC r227416: Document that flock can return ENOLCK Approved by: re (kib) END K 10 svn:author V 5 dougb K 8 svn:date V 27 2011-11-18T21:12:58.931197Z K 7 svn:log V 52 MFC r227416: Document that flock can return ENOLCK END K 10 svn:author V 5 dougb K 8 svn:date V 27 2011-11-18T21:13:43.272789Z K 7 svn:log V 52 MFC r227416: Document that flock can return ENOLCK END K 10 svn:author V 6 marius K 8 svn:date V 27 2011-11-18T21:22:43.263232Z K 7 svn:log V 255 - There's no need to ignore the return value of mii_attach(9) when attaching dcphy(4) (CID 9283). - In dc_detach(), check whether ifp is NULL as dc_attach() may call the former without ifp being allocated (CID 4288). Found with: Coverity Prevent(tm) END K 10 svn:author V 6 marius K 8 svn:date V 27 2011-11-18T21:23:13.589206Z K 7 svn:log V 61 There's no need to read DC_10BTSTAT twice in dcphy_status(). END K 10 svn:author V 6 marius K 8 svn:date V 27 2011-11-18T22:39:46.211525Z K 7 svn:log V 1500 - Add a hint.miibus.X.phymask hint, allowing do individually exclude PHY addresses from being probed and attaching something including ukphy(4) to it. This is mainly necessarily for PHY switches that create duplicate or fake PHYs on the bus that can corrupt the PHY state when accessed or simply cause problems when ukphy(4) isolates the additional instances. - Change miibus(4) to be a hinted bus, allowing to add child devices via hints and to set their attach arguments (including for automatically probed PHYs). This is mainly needed for PHY switches that violate IEEE 802.3 and don't even implement the basic register set so we can't probe them automatically. However, the ability to alter the attach arguments for automatically probed PHYs is also useful as for example it allows to test (or tell a user to test) new variant of a PHY with a specific driver by letting an existing driver attach to it via manipulating the IDs without the need to touch the source code or to limit a Gigabit Ethernet PHY to only announce up to Fast Ethernet in order to save energy by limiting the capability mask. Generally, a driver has to be hinted via hint.phydrv.X.at="miibusY" and hint.phydrv.X.phyno="Z" (which already is sufficient to add phydrvX at miibusY at PHY address Z). Then optionally the following attach arguments additionally can be configured: hint.phydrv.X.id1 hint.phydrv.X.id2 hint.phydrv.X.capmask - Some minor cleanup. Reviewed by: adrian, ray END K 10 svn:author V 6 marius K 8 svn:date V 27 2011-11-18T22:58:13.996394Z K 7 svn:log V 66 There's no need export the device interface methods of miibus(4). END K 10 svn:author V 2 np K 8 svn:date V 27 2011-11-19T00:20:28.724547Z K 7 svn:log V 335 Do not increment the parent firmware's reference count when any other firmware image in the module is registered. Instead, do it when the other image is itself referenced. This allows a module with multiple firmware images to be automatically unloaded when none of the firmware images are in use. Discussed with: jhb@ (on -hackers) END K 10 svn:author V 8 rmacklem K 8 svn:date V 27 2011-11-19T03:20:15.185326Z K 7 svn:log V 345 The old NFS client will crash due to the reply being m_freem()'d twice if the server bogusly returns an error with the NFSERR_RETERR bit (bit 31) set. No actual NFS error has this bit set, but it seems that amd will sometimes do this. This patch makes sure the NFSERR_RETERR bit is cleared to avoid a crash. PR: kern/153847 MFC after: 2 weeks END K 10 svn:author V 2 ed K 8 svn:date V 27 2011-11-19T06:35:15.626865Z K 7 svn:log V 299 Improve *access*() parameter name consistency. The current code mixes the use of `flags' and `mode'. This is a bit confusing, since the faccessat() function as a `flag' parameter to store the AT_ flag. Make this less confusing by using the same name as used in the POSIX specification -- `amode'. END K 10 svn:author V 2 ed K 8 svn:date V 27 2011-11-19T06:36:11.002876Z K 7 svn:log V 31 Regenerate system call tables. END K 10 svn:author V 2 ed K 8 svn:date V 27 2011-11-19T07:19:37.093961Z K 7 svn:log V 132 Make the Linux *at() calls a bit more complete. Properly support: - AT_EACCESS for faccessat(), - AT_SYMLINK_FOLLOW for linkat(). END K 10 svn:author V 2 ed K 8 svn:date V 27 2011-11-19T07:20:20.013137Z K 7 svn:log V 31 Regenerate system call tables. END K 10 svn:author V 3 kib K 8 svn:date V 27 2011-11-19T07:40:13.934783Z K 7 svn:log V 148 Use the plain panic calls, without additional printing around them. The debugger and dumping support is adequate. Tested by: pho MFC after: 1 week END K 10 svn:author V 3 kib K 8 svn:date V 27 2011-11-19T07:41:37.734687Z K 7 svn:log V 195 Do not use NULLVPTOLOWERVP() in the null_print(). If diagnostic is compiled in, and show vnode is used from ddb on the faulty nullfs vnode, we get panic instead of vnode dump. MFC after: 1 week END K 10 svn:author V 3 kib K 8 svn:date V 27 2011-11-19T07:50:49.254358Z K 7 svn:log V 847 Existing VOP_VPTOCNP() interface has a fatal flow that is critical for nullfs. The problem is that resulting vnode is only required to be held on return from the successfull call to vop, instead of being referenced. Nullfs VOP_INACTIVE() method reclaims the vnode, which in combination with the VOP_VPTOCNP() interface means that the directory vnode returned from VOP_VPTOCNP() is reclaimed in advance, causing vn_fullpath() to error with EBADF or like. Change the interface for VOP_VPTOCNP(), now the dvp must be referenced. Convert all in-tree implementations of VOP_VPTOCNP(), which is trivial, because vhold(9) and vref(9) are similar in the locking prerequisites. Out-of-tree fs implementation of VOP_VPTOCNP(), if any, should have no trouble with the fix. Tested by: pho Reviewed by: mckusick MFC after: 3 weeks (subject of re approval) END K 10 svn:author V 3 kib K 8 svn:date V 27 2011-11-19T07:52:39.154212Z K 7 svn:log V 52 Update the manpage for r227697. MFC after: 3 weeks END K 10 svn:author V 6 philip K 8 svn:date V 27 2011-11-19T09:13:58.668106Z K 7 svn:log V 335 sfxge: Fix if_baudrate reports This field is supposed to be set to the interface bit rate, but for some reason I thought it was denominated in kilobits. Multiply the values up accordingly, taking care to saturate rather than overflow on 32-bit architectures. Submitted by: Ben Hutchings MFC after: 3 weeks END K 10 svn:author V 6 philip K 8 svn:date V 27 2011-11-19T09:16:52.024085Z K 7 svn:log V 272 sfxge: Remove interrupt self-test code It's not currently used; it didn't build on 32-bit and the previous build fix is incorrect. If we really implement self-tests we can do this again properly. Submitted by: Ben Hutchings MFC after: 3 weeks END K 10 svn:author V 8 hselasky K 8 svn:date V 27 2011-11-19T10:11:50.901253Z K 7 svn:log V 264 Move the device_delete_all_children() function from usb_util.c to kern/subr_bus.c. Simplify this function so that it no longer depends on malloc() to execute. Identify a few other places where it makes sense to use device_delete_all_children(). MFC after: 1 week END K 10 svn:author V 3 pjd K 8 svn:date V 27 2011-11-19T10:24:46.862293Z K 7 svn:log V 233 MFC r226620: Update per-thread I/O statistics collection in ZFS. This allows to see processes I/O activity in 'top -m io' output. PR kern/156218 Reported by: Marcus Reid Patch by: avg Approved by: re (kib) END K 10 svn:author V 3 pjd K 8 svn:date V 27 2011-11-19T10:26:34.828147Z K 7 svn:log V 406 MFC r226613,r226615,r226616: r226613: libzpool task_alloc: pass only valid flags to kmem_alloc tqflags may contain other flags besided those that are suitable for kmem_alloc == umem_alloc Submitted by: avg r226615: thr_create: new_thread_ID may be NULL Submitted by: avg r226616: zdb: access dp_free_bpobj only if pool version is >= SPA_VERSION_DEADLISTS Submitted by: avg Approved by: re (kib) END K 10 svn:author V 3 pjd K 8 svn:date V 27 2011-11-19T10:28:06.990680Z K 7 svn:log V 203 MFC r226617: zfs vdev_file_io_start: validate vdev before using vdev_tsd vdev_tsd can be NULL for certain vdev states. At least in userland testing with ztest. Submitted by: avg Approved by: re (kib) END K 10 svn:author V 3 pjd K 8 svn:date V 27 2011-11-19T10:49:03.704375Z K 7 svn:log V 3469 MFC r226549,r226550,r226551,r226552,r226553,r226554,r226568,r226569,r226611, r226612: r226549: Remove redundant size calculation. r226550: Initialize 'rc' properly before using it. This error could lead to infinite loop when data reconstruction was needed. r226551: Don't mark vdev as healthy too soon, so we won't try to use invalid vdevs. r226552: Never pass NULL block pointer when reading. This is neither expected nor handled by lower layers like vdev_raidz, which uses bp for checksum verification. This bug could lead to NULL pointer reference and resets during boot. r226553: Always pass data size for checksum verification function, as using physical block size declared in bp may not always be what we want. For example in case of gang block header physical block size declared in bp is much larger than SPA_GANGBLOCKSIZE (512 bytes) and checksum calculation failed. This bug could lead to accessing unallocated memory and resets/failures during boot. r226554: Fix missing return when LOADER_GPT_SUPPORT is defined, but LOADER_MBR_SUPPORT is not. r226568: - Correctly read gang header from raidz. - Decompress assembled gang block data if compressed. - Verify checksum of a gang header. - Verify checksum of assembled gang block data. - Verify checksum of uber block. Submitted by: avg r226569: With LOADER_MBR_SUPPORT defined and LOADER_GPT_SUPPORT undefined we would never call disk_openmbr(). Submitted by: avg r226611: - Allow to specify multiple files to check, eg. zfsboottest gpt/system0 gpt/system1 - /boot/kernel/kernel /boot/zfsloader - Instead of printing file's content calculate MD5 hash of the file, so it can be easly compared to the hash calculated via file system. - Some other minor improvements. r226612: Because ZFS boot code was very fragile in the past and real PITA to debug, introduce zfsboottest.sh script that will verify if it will be possible to boot from the given pool. # zfsboottest.sh system Where "system" is pool name of the pool we want to boot from. What is being verified by the script: - Does the pool exist? - Does it have bootfs property configured? - Is mountpoint property of the boot dataset set to 'legacy'? Dataset configured in bootfs property has to be mounted to perform more checks: - Does the /boot directory in boot dataset exist? - Is this dataset configured as root file system in /etc/fstab or set in vfs.root.mountfrom variable in /boot/loader.conf? By using zfsboottest tool the script will read all the files in /boot directory using ZFS boot code and calculate their checksums. Then, it will walk /boot directory using find(1) though regular file sytem and also read all the files in /boot directory and calculate their checksums. If any of the files cannot be looked up, read or checksum is invalid it will be reported and booting off of this pool is probably not possible. Some additional checks may be interesting as well. For example if the disks contain proper pmbr and gptzfsboot code or if all expected files in /boot/ are present. When upgrading FreeBSD, one should snapshot datasets that contain operating system, upgrade (install new world and kernel) and use zfsboottest.sh to verify if it will be possible to boot from new configuration. If all is good one should upgrade boot blocks, by eg.: # gpart -b /boot/pmbr -p /boot/gptzfsboot -i 1 ada1 If something is wrong, one should rollback datasets and report the problems. Approved by: re (kib) END K 10 svn:author V 8 hselasky K 8 svn:date V 27 2011-11-19T11:17:27.764796Z K 7 svn:log V 268 Simplify the usb_pause_mtx() function by factoring out the generic parts to the kernel's pause() function. The pause() function can now be used when cold != 0. Also assert that the timeout in system ticks must be positive. Suggested by: Bruce Evans MFC after: 1 week END K 10 svn:author V 3 pjd K 8 svn:date V 27 2011-11-19T11:42:19.346668Z K 7 svn:log V 233 MFC r226620: Update per-thread I/O statistics collection in ZFS. This allows to see processes I/O activity in 'top -m io' output. PR kern/156218 Reported by: Marcus Reid Patch by: avg Approved by: re (kib) END K 10 svn:author V 3 pjd K 8 svn:date V 27 2011-11-19T11:43:18.866903Z K 7 svn:log V 203 MFC r226617: zfs vdev_file_io_start: validate vdev before using vdev_tsd vdev_tsd can be NULL for certain vdev states. At least in userland testing with ztest. Submitted by: avg Approved by: re (kib) END K 10 svn:author V 3 pjd K 8 svn:date V 27 2011-11-19T11:44:20.680046Z K 7 svn:log V 406 MFC r226613,r226615,r226616: r226613: libzpool task_alloc: pass only valid flags to kmem_alloc tqflags may contain other flags besided those that are suitable for kmem_alloc == umem_alloc Submitted by: avg r226615: thr_create: new_thread_ID may be NULL Submitted by: avg r226616: zdb: access dp_free_bpobj only if pool version is >= SPA_VERSION_DEADLISTS Submitted by: avg Approved by: re (kib) END K 10 svn:author V 3 pjd K 8 svn:date V 27 2011-11-19T11:47:15.002721Z K 7 svn:log V 3469 MFC r226549,r226550,r226551,r226552,r226553,r226554,r226568,r226569,r226611, r226612: r226549: Remove redundant size calculation. r226550: Initialize 'rc' properly before using it. This error could lead to infinite loop when data reconstruction was needed. r226551: Don't mark vdev as healthy too soon, so we won't try to use invalid vdevs. r226552: Never pass NULL block pointer when reading. This is neither expected nor handled by lower layers like vdev_raidz, which uses bp for checksum verification. This bug could lead to NULL pointer reference and resets during boot. r226553: Always pass data size for checksum verification function, as using physical block size declared in bp may not always be what we want. For example in case of gang block header physical block size declared in bp is much larger than SPA_GANGBLOCKSIZE (512 bytes) and checksum calculation failed. This bug could lead to accessing unallocated memory and resets/failures during boot. r226554: Fix missing return when LOADER_GPT_SUPPORT is defined, but LOADER_MBR_SUPPORT is not. r226568: - Correctly read gang header from raidz. - Decompress assembled gang block data if compressed. - Verify checksum of a gang header. - Verify checksum of assembled gang block data. - Verify checksum of uber block. Submitted by: avg r226569: With LOADER_MBR_SUPPORT defined and LOADER_GPT_SUPPORT undefined we would never call disk_openmbr(). Submitted by: avg r226611: - Allow to specify multiple files to check, eg. zfsboottest gpt/system0 gpt/system1 - /boot/kernel/kernel /boot/zfsloader - Instead of printing file's content calculate MD5 hash of the file, so it can be easly compared to the hash calculated via file system. - Some other minor improvements. r226612: Because ZFS boot code was very fragile in the past and real PITA to debug, introduce zfsboottest.sh script that will verify if it will be possible to boot from the given pool. # zfsboottest.sh system Where "system" is pool name of the pool we want to boot from. What is being verified by the script: - Does the pool exist? - Does it have bootfs property configured? - Is mountpoint property of the boot dataset set to 'legacy'? Dataset configured in bootfs property has to be mounted to perform more checks: - Does the /boot directory in boot dataset exist? - Is this dataset configured as root file system in /etc/fstab or set in vfs.root.mountfrom variable in /boot/loader.conf? By using zfsboottest tool the script will read all the files in /boot directory using ZFS boot code and calculate their checksums. Then, it will walk /boot directory using find(1) though regular file sytem and also read all the files in /boot directory and calculate their checksums. If any of the files cannot be looked up, read or checksum is invalid it will be reported and booting off of this pool is probably not possible. Some additional checks may be interesting as well. For example if the disks contain proper pmbr and gptzfsboot code or if all expected files in /boot/ are present. When upgrading FreeBSD, one should snapshot datasets that contain operating system, upgrade (install new world and kernel) and use zfsboottest.sh to verify if it will be possible to boot from new configuration. If all is good one should upgrade boot blocks, by eg.: # gpart -b /boot/pmbr -p /boot/gptzfsboot -i 1 ada1 If something is wrong, one should rollback datasets and report the problems. Approved by: re (kib) END K 10 svn:author V 6 marius K 8 svn:date V 27 2011-11-19T12:55:32.720525Z K 7 svn:log V 1397 MFC: r227537 As it turns out, r186347 actually is insufficient to avoid the use of the curthread-accessing part of mtx_{,un}lock(9) when using a r210623-style curthread implementation on sparc64, crashing the kernel in its early cycles as PCPU isn't set up, yet (and can't be set up as OFW is one of the things we need for that, which leads to a chicken-and-egg problem). What happens is that due to the fact that the idea of r210623 actually is to allow the compiler to cache invocations of curthread, it factors out obtaining curthread needed for both mtx_lock(9) and mtx_unlock(9) to before the branch based on kobj_mutex_inited when compiling the kernel without the debugging options. So change kobj_class_compile_static(9) to just never acquire kobj_mtx, effectively restricting it to its documented use, and add a kobj_init_static(9) for initializing objects using a class compiled with the former and that also avoids using mutex(9) (and malloc(9)). Also assert in both of these functions that they are used in their intended way only. While at it, inline kobj_register_method() and kobj_unregister_method() as there wasn't much point for factoring them out in the first place and so that a reader of the code has to figure out the locking for fewer functions missing a KOBJ_ASSERT. Tested on powerpc{,64} by andreast. Reviewed by: nwhitehorn (earlier version), jhb Approved by: re (kib) END K 10 svn:author V 6 marius K 8 svn:date V 27 2011-11-19T12:55:34.257424Z K 7 svn:log V 1397 MFC: r227537 As it turns out, r186347 actually is insufficient to avoid the use of the curthread-accessing part of mtx_{,un}lock(9) when using a r210623-style curthread implementation on sparc64, crashing the kernel in its early cycles as PCPU isn't set up, yet (and can't be set up as OFW is one of the things we need for that, which leads to a chicken-and-egg problem). What happens is that due to the fact that the idea of r210623 actually is to allow the compiler to cache invocations of curthread, it factors out obtaining curthread needed for both mtx_lock(9) and mtx_unlock(9) to before the branch based on kobj_mutex_inited when compiling the kernel without the debugging options. So change kobj_class_compile_static(9) to just never acquire kobj_mtx, effectively restricting it to its documented use, and add a kobj_init_static(9) for initializing objects using a class compiled with the former and that also avoids using mutex(9) (and malloc(9)). Also assert in both of these functions that they are used in their intended way only. While at it, inline kobj_register_method() and kobj_unregister_method() as there wasn't much point for factoring them out in the first place and so that a reader of the code has to figure out the locking for fewer functions missing a KOBJ_ASSERT. Tested on powerpc{,64} by andreast. Reviewed by: nwhitehorn (earlier version), jhb Approved by: re (kib) END K 10 svn:author V 6 marius K 8 svn:date V 27 2011-11-19T13:03:14.935441Z K 7 svn:log V 1375 MFC: r227537 As it turns out, r186347 actually is insufficient to avoid the use of the curthread-accessing part of mtx_{,un}lock(9) when using a r210623-style curthread implementation on sparc64, crashing the kernel in its early cycles as PCPU isn't set up, yet (and can't be set up as OFW is one of the things we need for that, which leads to a chicken-and-egg problem). What happens is that due to the fact that the idea of r210623 actually is to allow the compiler to cache invocations of curthread, it factors out obtaining curthread needed for both mtx_lock(9) and mtx_unlock(9) to before the branch based on kobj_mutex_inited when compiling the kernel without the debugging options. So change kobj_class_compile_static(9) to just never acquire kobj_mtx, effectively restricting it to its documented use, and add a kobj_init_static(9) for initializing objects using a class compiled with the former and that also avoids using mutex(9) (and malloc(9)). Also assert in both of these functions that they are used in their intended way only. While at it, inline kobj_register_method() and kobj_unregister_method() as there wasn't much point for factoring them out in the first place and so that a reader of the code has to figure out the locking for fewer functions missing a KOBJ_ASSERT. Tested on powerpc{,64} by andreast. Reviewed by: nwhitehorn (earlier version), jhb END K 10 svn:author V 6 marius K 8 svn:date V 27 2011-11-19T13:03:59.155245Z K 7 svn:log V 292 MFC: r227539 Define curthread as an inline function that loads the thread pointer directly from g7, the pcpu pointer. This guarantees correct behavior when the thread migrates to a different CPU. Commit message stolen from r205431. Additional testing by Peter Jeremy. Approved by: re (kib) END K 10 svn:author V 6 marius K 8 svn:date V 27 2011-11-19T13:04:17.947470Z K 7 svn:log V 292 MFC: r227539 Define curthread as an inline function that loads the thread pointer directly from g7, the pcpu pointer. This guarantees correct behavior when the thread migrates to a different CPU. Commit message stolen from r205431. Additional testing by Peter Jeremy. Approved by: re (kib) END K 10 svn:author V 6 marius K 8 svn:date V 27 2011-11-19T13:29:55.209880Z K 7 svn:log V 269 MFC: r227539 Define curthread as an inline function that loads the thread pointer directly from g7, the pcpu pointer. This guarantees correct behavior when the thread migrates to a different CPU. Commit message stolen from r205431. Additional testing by Peter Jeremy. END K 10 svn:author V 6 marius K 8 svn:date V 27 2011-11-19T13:30:12.771173Z K 7 svn:log V 269 MFC: r227539 Define curthread as an inline function that loads the thread pointer directly from g7, the pcpu pointer. This guarantees correct behavior when the thread migrates to a different CPU. Commit message stolen from r205431. Additional testing by Peter Jeremy. END K 10 svn:author V 6 marius K 8 svn:date V 27 2011-11-19T13:33:21.911507Z K 7 svn:log V 73 MFC: r227578 Fix compilation with DEBUG defined. Approved by: re (kib) END K 10 svn:author V 6 marius K 8 svn:date V 27 2011-11-19T13:33:22.174100Z K 7 svn:log V 73 MFC: r227578 Fix compilation with DEBUG defined. Approved by: re (kib) END K 10 svn:author V 6 marius K 8 svn:date V 27 2011-11-19T13:33:24.720713Z K 7 svn:log V 50 MFC: r227578 Fix compilation with DEBUG defined. END K 10 svn:author V 6 marius K 8 svn:date V 27 2011-11-19T13:33:30.880207Z K 7 svn:log V 50 MFC: r227578 Fix compilation with DEBUG defined. END K 10 svn:author V 8 jchandra K 8 svn:date V 27 2011-11-19T14:06:15.106793Z K 7 svn:log V 66 Whitespace fixes in XLP HAL files. Also fixup a macro in iomap.h END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2011-11-19T14:10:16.329742Z K 7 svn:log V 800 Core structure and functions to support a feed-forward clock within the kernel. Implement ffcounter, a monotonically increasing cumulative counter on top of the active timecounter. Provide low-level functions to read the ffcounter and convert it to absolute time or a time interval in seconds using the current ffclock estimates, which track the drift of the oscillator. Add a ring of fftimehands to track passing of time on each kernel tick and pick up updates of ffclock estimates. Committed on behalf of Julien Ridoux and Darryl Veitch from the University of Melbourne, Australia, as part of the FreeBSD Foundation funded "Feed-Forward Clock Synchronization Algorithms" project. For more information, see http://www.synclab.org/radclock/ Submitted by: Julien Ridoux (jridoux at unimelb edu au) END K 10 svn:author V 8 jchandra K 8 svn:date V 27 2011-11-19T14:14:35.332169Z K 7 svn:log V 249 Fixup cache flush definitions for XLP mco_icache_sync_range was earlier set to mipsNN_icache_sync_range_index_32 which is not necessary, revert this. Also, the data cache is coherent so write back is not really needed. This change is experimental. END K 10 svn:author V 8 jchandra K 8 svn:date V 27 2011-11-19T14:33:14.778422Z K 7 svn:log V 105 Fix USB compilation, and add USB options to XLP conf Remove obsolete header file included in usb_init.c END K 10 svn:author V 4 miwi K 8 svn:date V 27 2011-11-19T14:42:06.171201Z K 7 svn:log V 56 - Whitespaces fixed only Approved by: rwatson (mentor) END K 10 svn:author V 4 miwi K 8 svn:date V 27 2011-11-19T14:44:29.578881Z K 7 svn:log V 127 - Add new loader_logo orbbw to default.conf PR: 162608 Submitted by: manolis Approved by: rwatson (mentor) MFC after: 3 Days END K 10 svn:author V 8 jchandra K 8 svn:date V 27 2011-11-19T15:01:09.649591Z K 7 svn:log V 77 Remvoe unused file mips/nlm/uart_cpu_xlp.c has replaced uart_bus_xlp_iodi.c END K 10 svn:author V 8 jchandra K 8 svn:date V 27 2011-11-19T15:08:49.173830Z K 7 svn:log V 73 Remove unused variable ubase. This vaiable is initialized but not used. END K 10 svn:author V 3 raj K 8 svn:date V 27 2011-11-19T16:30:06.906957Z K 7 svn:log V 220 Initial version of cesa(4) driver for Marvell crypto engine and security accelerator. The following algorithms and schemes are supported: - 3DES, AES, DES - MD5, SHA1 Obtained from: Semihalf Written by: Piotr Ziecik END K 10 svn:author V 9 scheidell K 8 svn:date V 27 2011-11-19T16:47:26.592401Z K 7 svn:log V 41 - Add myself Approved by: gabor(mentor) END K 10 svn:author V 8 brueffer K 8 svn:date V 27 2011-11-19T16:54:58.089697Z K 7 svn:log V 198 MFC: r227465, r227515 - Grammar and mdoc cleanup. - Remove list nesting in the hardware notes section, thus making it compatible with the hardware notes generation script. Approved by: re (kib) END K 10 svn:author V 8 brueffer K 8 svn:date V 27 2011-11-19T16:59:23.540502Z K 7 svn:log V 201 MFC: r227465, r227515 - Grammar and mdoc cleanup. - Remove list nesting in the hardware notes section, thus making it compatible with the hardware notes generation script. Approved by: re (kib) END K 10 svn:author V 8 brueffer K 8 svn:date V 27 2011-11-19T17:01:11.947094Z K 7 svn:log V 175 MFC: r227465, r227515 - Grammar and mdoc cleanup. - Remove list nesting in the hardware notes section, thus making it compatible with the hardware notes generation script. END K 10 svn:author V 3 dim K 8 svn:date V 27 2011-11-19T17:09:36.167238Z K 7 svn:log V 371 Pull in r144110 from upstream clang trunk: Mark the overloaded atomic builtins as having custom type checking, which they do. This avoids all of the default argument promotions that we (1) don't want, and (2) undo during that custom type checking, and makes sure that we don't run into trouble during template instantiation. Fixes llvm/clang PR11320. MFC after: 1 week END K 10 svn:author V 3 dim K 8 svn:date V 27 2011-11-19T17:15:20.413577Z K 7 svn:log V 188 Pull in r144237 from upstream clang trunk: Fix the signature of __sigsetjmp and sigsetjmp. This eliminates incorrect warnings about the prototypes of these functions. MFC after: 1 week END K 10 svn:author V 3 dim K 8 svn:date V 27 2011-11-19T18:01:14.424477Z K 7 svn:log V 279 Pull in r144505 from upstream clang trunk: Fix the signature of the getcontext builtin, eliminating incorrect warnings about its prototype. This also adds a -W(no-)builtin-requires-header option, which can be used to enable or disable warnings of this kind. MFC after: 1 week END K 10 svn:author V 7 glebius K 8 svn:date V 27 2011-11-19T19:06:08.452432Z K 7 svn:log V 197 For unknown reason, since rev 1.1 of ifconfig.c, sin_family isn't set properly for the mask argument. Since I'd like to improve argument sanity checking in kernel side, in in_control(), fix this. END K 10 svn:author V 8 andreast K 8 svn:date V 27 2011-11-19T19:25:57.266924Z K 7 svn:log V 187 Rename the linker emulation name for powerpc and powerc64. This is needed that we can also use the upstream binutils linker where we have to have a unique name for the FreeBSD emulation. END K 10 svn:author V 6 adrian K 8 svn:date V 27 2011-11-19T21:05:31.423015Z K 7 svn:log V 1708 Begin breaking apart the receive setup/stop path in preparation for more "correct" handling of frames in the RX pending queue during interface transitions. * ath_stoprecv() doesn't blank out the descriptor list - that's what ath_startrecv() does. So, change a comment to reflect that. * ath_stoprecv() does include a large (3ms) delay to let pending DMA complete. However, I'm under the impression that the stopdma hal method does check for a bit in the PCU to indicate DMA has stopped. So, to help with fast abort and restart, modify ath_stoprecv() to take a flag which indicates whether this is needed. * Modify the uses of ath_stoprecv() to pass in a flag to support the existing behaviour (ie, do the delay.) * Remove some duplicate PCU teardown code (which wasn't shutting down DMA, so it wasn't entirely correct..) and replace it with a call to ath_stoprecv(sc, 0) - which disables the DELAY call. The upshoot of this is now channel change doesn't simply drop completed frames on the floor, but instead it cleanly handles those frames. It still discards pending TX frames in the software and hardware queues as there's no (current) logic which forcibly recalculates the rate control information (or whether they're appropriate to be on the TX queue after a channel change), that'll come later. This still doesn't stop all the sources of queue stalls but it does tidy up some of the code duplication. To be complete, queue stalls now occur during normal behaviour - they only occur after some kind of broken behaviour causes an interface or node flush, upsetting the TX/RX BAW. Subsequent commits will incrementally fix these and other related issues. Sponsored by: Hobnob, Inc. END K 10 svn:author V 6 adrian K 8 svn:date V 27 2011-11-19T21:12:35.357117Z K 7 svn:log V 242 Add some (totally untested!) code to correctly set the RF half/quarter mode configuration registers. This is apparently required for correct behaviour, but also requires the chip to actually officially support it. Sponsored by: Hobnob, Inc. END K 10 svn:author V 8 brueffer K 8 svn:date V 27 2011-11-19T22:14:08.451862Z K 7 svn:log V 30 Add 2010 and 2011 copyrights. END K 10 svn:author V 8 rmacklem K 8 svn:date V 27 2011-11-20T00:39:15.060547Z K 7 svn:log V 296 Post r223774 the NFSv4 client never uses the linked list with the head nfsc_defunctlockowner. This patch simply removes the code that loops through this always empty list, since the code no longer does anything useful. It should not have any effect on the client's behaviour. MFC after: 2 weeks END K 10 svn:author V 8 rmacklem K 8 svn:date V 27 2011-11-20T01:18:47.814640Z K 7 svn:log V 202 Since the nfscl_cleanup() function isn't used by the FreeBSD NFSv4 client, delete the code and fix up the related comments. This should not have any functional effect on the client. MFC after: 2 weeks END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2011-11-20T01:20:50.928549Z K 7 svn:log V 611 Provide high-level functions to access the feed-forward absolute and difference clocks. Each routine can output an upper bound on the absolute time or time interval requested. Different flavours of absolute time can be requested, for example with or without leap seconds, monotonic or not, etc. Committed on behalf of Julien Ridoux and Darryl Veitch from the University of Melbourne, Australia, as part of the FreeBSD Foundation funded "Feed-Forward Clock Synchronization Algorithms" project. For more information, see http://www.synclab.org/radclock/ Submitted by: Julien Ridoux (jridoux at unimelb edu au) END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2011-11-20T01:48:22.560653Z K 7 svn:log V 79 Fix a whitespace nit. Submitted by: Julien Ridoux (jridoux at unimelb edu au) END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2011-11-20T05:32:12.234720Z K 7 svn:log V 756 - Provide a sysctl interface to change the active system clock at runtime. - Wrap [get]{bin,nano,micro}[up]time() functions of sys/time.h to allow requesting time from either the feedback or the feed-forward clock. If a feedback (e.g. ntpd) and feed-forward (e.g. radclock) daemon are both running on the system, both kernel clocks are updated but only one serves time. - Add similar wrappers for the feed-forward difference clock. Committed on behalf of Julien Ridoux and Darryl Veitch from the University of Melbourne, Australia, as part of the FreeBSD Foundation funded "Feed-Forward Clock Synchronization Algorithms" project. For more information, see http://www.synclab.org/radclock/ Submitted by: Julien Ridoux (jridoux at unimelb edu au) END K 10 svn:author V 8 hselasky K 8 svn:date V 27 2011-11-20T08:29:23.685979Z K 7 svn:log V 207 Minor style change: Simplify the description of pause() and shorten the KASSERT message in pause. Also add a clamp for the timo argument in the non-KASSERT case. Suggested by: Bruce Evans MFC after: 1 week END K 10 svn:author V 8 hselasky K 8 svn:date V 27 2011-11-20T08:36:18.258144Z K 7 svn:log V 195 Given that the typical usage of pause() is pause("zzz", hz / N), where N can be greater than hz in some cases, simply ignore a timeout value of zero. Suggested by: Bruce Evans MFC after: 1 week END K 10 svn:author V 4 miwi K 8 svn:date V 27 2011-11-20T12:18:21.027548Z K 7 svn:log V 185 - Add missing usb and ucom devices PR: usb/160301 Submitted by: Garrett Cooper Reviewed by: hselasky Approved by: hselasky, rwatson (mentor) MFC after: 3 Days END K 10 svn:author V 4 miwi K 8 svn:date V 27 2011-11-20T12:26:20.544426Z K 7 svn:log V 205 - Add support for Add LOGITECH Webcam C100 - While here whitespace fixes PR: usb/161559 Submitted by: Sergey Zaykov Reviewed by: hselasky Approved by: hselasky, rwatson (mentor) END K 10 svn:author V 2 mm K 8 svn:date V 27 2011-11-20T13:11:29.090897Z K 7 svn:log V 312 Update and desolarization of zdb(8) and zstreamdump(1) manual pages: - synchronized to match new vendor code [1] - removed ATTRIBUTES sections - updated SEE ALSO sections - properly updated copyright information (required by CDDL) - remove empty lines via MANFILTER Obtained from: Illumos [1] MFC after: 5 days END K 10 svn:author V 8 theraven K 8 svn:date V 27 2011-11-20T14:45:42.078634Z K 7 svn:log V 449 Implement xlocale APIs from Darwin, mainly for use by libc++. This adds a load of _l suffixed versions of various standard library functions that use the global locale, making them take an explicit locale parameter. Also adds support for per-thread locales. This work was funded by the FreeBSD Foundation. Please test any code you have that uses the C standard locale functions! Reviewed by: das (gdtoa changes) Approved by: dim (mentor) END K 10 svn:author V 7 attilio K 8 svn:date V 27 2011-11-20T14:51:27.010822Z K 7 svn:log V 54 Add more KTR points for failure in vm_radix_insert(). END K 10 svn:author V 6 tuexen K 8 svn:date V 27 2011-11-20T15:00:45.565444Z K 7 svn:log V 165 Add support for the SCTP_REMOTE_UDP_ENCAPS_PORT socket option. Retire the the now unused sctp_udp_tunneling_for_client_enable sysctl variable. MFC after: 3 months. END K 10 svn:author V 7 attilio K 8 svn:date V 27 2011-11-20T15:06:39.252998Z K 7 svn:log V 4 MFC END K 10 svn:author V 3 des K 8 svn:date V 27 2011-11-20T15:18:49.290192Z K 7 svn:log V 435 key_load_private() ignores the passphrase argument if the private key is unencrypted. This defeats the nullok check, because it means a non-null passphrase will successfully unlock the key. To address this, try at first to load the key without a passphrase. If this succeeds and the user provided a non-empty passphrase *or* nullok is false, reject the key. MFC after: 1 week Noticed by: Guy Helmer END K 10 svn:author V 7 attilio K 8 svn:date V 27 2011-11-20T16:33:09.353793Z K 7 svn:log V 1095 Introduce macro stubs in the mutex implementation that will be always defined and will allow consumers, willing to provide options, file and line to locking requests, to not worry about options redefining the interfaces. This is typically useful when there is the need to build another locking interface on top of the mutex one. The introduced functions that consumers can use are: - mtx_lock_flags_ - mtx_unlock_flags_ - mtx_lock_spin_flags_ - mtx_unlock_spin_flags_ - mtx_assert_ - thread_lock_flags_ Spare notes: - Likely we can get rid of all the 'INVARIANTS' specification in the ppbus code by using the same macro as done in this patch (but this is left to the ppbus maintainer) - all the other locking interfaces may require a similar cleanup, where the most notable case is sx which will allow a further cleanup of vm_map locking facilities - The patch should be fully compatible with older branches, thus a MFC is previewed (infact it uses all the underlying mechanisms already present). Comments review by: eadler, Ben Kaduk Discussed with: kib, jhb MFC after: 1 month END K 10 svn:author V 7 attilio K 8 svn:date V 27 2011-11-20T16:36:02.567960Z K 7 svn:log V 80 Revert part of the r227758 which crept in. Pointy hat: attilio X-MFC: r227758 END K 10 svn:author V 8 rmacklem K 8 svn:date V 27 2011-11-20T16:46:50.529525Z K 7 svn:log V 234 Add two arguments to the nfsrpc_rellockown() function in the NFSv4 client. This does not change the client's behaviour, but prepares the code so that nfsrpc_rellockown() can be called elsewhere in a future commit. MFC after: 2 weeks END K 10 svn:author V 8 brueffer K 8 svn:date V 27 2011-11-20T17:05:25.951553Z K 7 svn:log V 73 MFC: r227275 Add qlxgb(4) to the hardware notes. Approved by: re (kib) END