Ħo215368 153 481 390 390 251 251 328 328 176 191 820 230 230 222 222 209 157 157 122 122 182 243 125 147 714 301 353 370 515 173 190 561 133 180 826 190 697 697 894 894 334 334 130 196 126 172 123 369 336 368 333 258 177 575 266 266 361 374 254 147 195 158 283 273 164 671 273 306 162 241 246 402 201 158 201 462 204 357 138 138 144 339 293 268 150 173 310 285 258 856 856 148 310 703 703 141 123 141 203 326 326 306 480 406 917 247 142 297 225 179 210 758 217 147 458 248 363 330 173 143 160 168 201 381 155 250 277 159 179 177 142 141 315 304 201 236 141 294 133 188 477 272 247 135 414 159 10116 182 194 134 229 150 125 817 K 10 svn:author V 7 sobomax K 8 svn:date V 27 2010-11-16T04:40:03.432330Z K 7 svn:log V 384 MFC r207554: Add new tunable 'net.link.ifqmaxlen' to set default send interface queue length. The default value for this parameter is 50, which is quite low for many of today's uses and the only way to modify this parameter right now is to edit if_var.h file. Also add read-only sysctl with the same name, so that it's possible to retrieve the current value. END K 10 svn:author V 3 alc K 8 svn:date V 27 2010-11-16T04:40:27.669414Z K 7 svn:log V 297 MFC r214953 In case the stack size reaches its limit and its growth must be restricted, ensure that grow_amount is a multiple of the page size. Otherwise, the kernel may crash in swap_reserve_by_uid() on HEAD and FreeBSD 8.x, and produce a core file with a missing stack on FreeBSD 7.x. END K 10 svn:author V 3 alc K 8 svn:date V 27 2010-11-16T04:51:07.317587Z K 7 svn:log V 297 MFC r214953 In case the stack size reaches its limit and its growth must be restricted, ensure that grow_amount is a multiple of the page size. Otherwise, the kernel may crash in swap_reserve_by_uid() on HEAD and FreeBSD 8.x, and produce a core file with a missing stack on FreeBSD 7.x. END K 10 svn:author V 3 alc K 8 svn:date V 27 2010-11-16T05:01:27.698768Z K 7 svn:log V 158 MFC r214938 Eliminate a possible race between pmap_pinit() and pmap_kenter_pde() on superpage promotion or demotion. Micro-optimize pmap_kenter_pde(). END K 10 svn:author V 3 alc K 8 svn:date V 27 2010-11-16T05:06:20.334578Z K 7 svn:log V 158 MFC r214938 Eliminate a possible race between pmap_pinit() and pmap_kenter_pde() on superpage promotion or demotion. Micro-optimize pmap_kenter_pde(). END K 10 svn:author V 3 alc K 8 svn:date V 27 2010-11-16T05:46:35.901252Z K 7 svn:log V 235 MFC r213455 Initialize KPTmap in locore so that vm86.c can call vtophys() (or really pmap_kextract()) before pmap_bootstrap() is called. Document the set of pmap functions that may be called before pmap_bootstrap() is called. END K 10 svn:author V 3 alc K 8 svn:date V 27 2010-11-16T06:20:12.074604Z K 7 svn:log V 235 MFC r213455 Initialize KPTmap in locore so that vm86.c can call vtophys() (or really pmap_kextract()) before pmap_bootstrap() is called. Document the set of pmap functions that may be called before pmap_bootstrap() is called. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-16T07:03:06.272869Z K 7 svn:log V 80 The EBUSY error should be return here, also do not check recursive-mutex twice. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-16T07:06:51.108976Z K 7 svn:log V 95 Use int32_t or uint32_t, the size is fixed so it can be shared by 32-bit and 64-bit processes. END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-16T07:09:05.589155Z K 7 svn:log V 722 cc_init() should only be run once on system boot, but with VIMAGE kernels it runs on boot and each time a vnet jail is created. Running cc_init() multiple times results in a panic when attempting to initialise the cc_list lock again, and so r215166 effectively broke the use of vnet jails. Switch to using a SYSINIT to run cc_init() on boot. CC algorithm modules loaded on boot register in the same SI_SUB_PROTO_IFATTACHDOMAIN category as is used in this patch, so cc_init() is run at SI_ORDER_FIRST to ensure the framework is initialised before module registration is attempted. Sponsored by: FreeBSD Foundation Reported and tested by: Mikolaj Golub MFC after: 11 weeks X-MFC with: r215166 END K 10 svn:author V 6 brucec K 8 svn:date V 27 2010-11-16T07:16:40.292938Z K 7 svn:log V 134 MFC r215263: Add ftp4.se.freebsd.org to the set of mirrors. PR: bin/150552 Submitted by: Niclas Zeising END K 10 svn:author V 6 brucec K 8 svn:date V 27 2010-11-16T07:19:05.893400Z K 7 svn:log V 134 MFC r215263: Add ftp4.se.freebsd.org to the set of mirrors. PR: bin/150552 Submitted by: Niclas Zeising END K 10 svn:author V 6 brucec K 8 svn:date V 27 2010-11-16T07:24:17.663154Z K 7 svn:log V 126 MFC r215239: Memory stats are reported in bytes, not pages. PR: docs/151283 Submitted by: Bas Smeelen END K 10 svn:author V 6 brucec K 8 svn:date V 27 2010-11-16T07:26:49.137372Z K 7 svn:log V 126 MFC r215239: Memory stats are reported in bytes, not pages. PR: docs/151283 Submitted by: Bas Smeelen END K 10 svn:author V 6 brucec K 8 svn:date V 27 2010-11-16T07:30:51.850946Z K 7 svn:log V 113 MFC r214381: Add information about the values and default setting of the kern.cam.ada.spindown_shutdown sysctl. END K 10 svn:author V 6 brucec K 8 svn:date V 27 2010-11-16T07:33:53.338849Z K 7 svn:log V 62 MFC r213763: Use the RFC2606 domain example.com in examples. END K 10 svn:author V 6 brucec K 8 svn:date V 27 2010-11-16T07:35:29.883097Z K 7 svn:log V 62 MFC r213763: Use the RFC2606 domain example.com in examples. END K 10 svn:author V 6 brucec K 8 svn:date V 27 2010-11-16T07:38:26.852848Z K 7 svn:log V 27 MFC r214021: Fix grammar. END K 10 svn:author V 6 brucec K 8 svn:date V 27 2010-11-16T07:39:52.130264Z K 7 svn:log V 27 MFC r214021: Fix grammar. END K 10 svn:author V 6 brucec K 8 svn:date V 27 2010-11-16T07:47:43.781598Z K 7 svn:log V 87 MFC r214022: Remove extra word, which looks like a left-over from a deleted sentence. END K 10 svn:author V 6 brucec K 8 svn:date V 27 2010-11-16T07:51:35.453286Z K 7 svn:log V 147 MFC r214073: Stop disallowing device nodes to be passed to camcontrol(8) since libcam already allows both device names and nodes to be specified. END K 10 svn:author V 6 brucec K 8 svn:date V 27 2010-11-16T07:53:14.588681Z K 7 svn:log V 30 MFC r214395: Fix formatting. END K 10 svn:author V 6 brucec K 8 svn:date V 27 2010-11-16T07:55:36.337815Z K 7 svn:log V 52 MFC r215136: Bump .Dd due to additions in r214279. END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-16T07:57:56.069708Z K 7 svn:log V 616 On CC algorithm module unload, we walk the list of active TCP control blocks. Any found to be using the algorithm that is about to go away are switched back to NewReno to avoid leaving dangling pointers which would trigger a panic. For VIMAGE kernels, there is a list per vnet to walk, yet the implementation was only examining one of the vnet lists. Fix the implementation of the above feature for VIMAGE kernels by looping through all active TCP control blocks across all vnets. Sponsored by: FreeBSD Foundation Tested by: Mikolaj Golub Reviewed by: bz (briefly) MFC after: 11 weeks END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-16T08:30:39.960284Z K 7 svn:log V 203 Move protocol specific implementation detail out of the core CC framework. Sponsored by: FreeBSD Foundation Tested by: Mikolaj Golub MFC after: 11 weeks X-MFC with: r215166 END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-16T08:43:25.750205Z K 7 svn:log V 255 - Querying the default CC algo is more common than setting it and the function is small, so there is no good reason not to declare the buffer at the top. - Fix a whitespace nit. Sponsored by: FreeBSD Foundation MFC after: 11 weeks X-MFC with: r215166 END K 10 svn:author V 8 netchild K 8 svn:date V 27 2010-11-16T09:01:19.961951Z K 7 svn:log V 272 MFC r206081: Fix some bogus values in linprocfs. Submitted by: Petr Salinger Verified on: GNU/kFreeBSD debian 8.0-1-686 (by submitter) PR: 144584 Reviewed by / discussed with: kib, des, jhb, submitter Requested by: emaste Tested by: olli END K 10 svn:author V 8 lstewart K 8 svn:date V 27 2010-11-16T09:34:31.748942Z K 7 svn:log V 417 Make the CC framework more VIMAGE friendly by adding the machinery to allow vnets to select their own default CC algorithm independent of each other and the base system. If the base system or a vnet has set a default which gets unloaded, we reset that netstack's default to NewReno. Sponsored by: FreeBSD Foundation Tested by: Mikolaj Golub Reviewed by: bz (briefly) MFC after: 3 months END K 10 svn:author V 3 dim K 8 svn:date V 27 2010-11-16T10:33:41.831779Z K 7 svn:log V 81 Sync: merge r215319 through r215395 from ^/head, so ports can actually build! :) END K 10 svn:author V 3 avg K 8 svn:date V 27 2010-11-16T12:30:47.120698Z K 7 svn:log V 98 fix misspelling in a comment Reported by: Daniel Braniss MFC after: 3 days END K 10 svn:author V 3 avg K 8 svn:date V 27 2010-11-16T12:43:45.633597Z K 7 svn:log V 468 hwpstate: use CPU_FOREACH when binding to all available processors Also, add a comment mentioning _PSD - on some systems it's enough to put one logical CPU into a particular P-state to make other CPUs in the same domain to enter that P-state. Also, call sched_unbind() after the loop - sched_bind() automatically rebinds from previous CPU to a new one, and the new arrangement of code is safer against early loop exit. Plus one minor style nit. MFC after: 10 days END K 10 svn:author V 6 cognet K 8 svn:date V 27 2010-11-16T14:08:21.571406Z K 7 svn:log V 38 No need to include sys/systm.h twice. END K 10 svn:author V 7 sobomax K 8 svn:date V 27 2010-11-16T15:02:53.587563Z K 7 svn:log V 84 Fix build problem introduced in r215368 MFC when IPX is enabled. Submitted by: des END K 10 svn:author V 3 avg K 8 svn:date V 27 2010-11-16T15:53:44.361108Z K 7 svn:log V 733 zfs+sendfile: populate all requested pages, not just those already cached kern_sendfile() uses vm_rdwr() to read-ahead blocks of data to populate page cache. When sendfile stumbles upon a page that is not populated yet, it sends out all the mbufs that it collected so far. This resulted in very poor performance with ZFS when file data is not in the page cache, because ZFS vop_read for UIO_NOCOPY case populated only those pages that are already in cache, but not valid. Which means that most of the time it populated only the first requested page in the described above scenario. Reported by: Alexander Zagrebin Tested by: Alexander Zagrebin , Artemiev Igor MFC after: 12 days END K 10 svn:author V 5 luigi K 8 svn:date V 27 2010-11-16T17:44:09.628863Z K 7 svn:log V 96 sync with the version in HEAD -- use ${BINMAKE} built by the toolchain and not the hosts's make END K 10 svn:author V 7 yongari K 8 svn:date V 27 2010-11-16T20:21:53.919169Z K 7 svn:log V 600 MFC r214992: Reduce spin wait time consumed in GMII register access routine. There were a couple of attempts in the past to reduce it since it took more than 1ms. Because mii_tick() periodically polls link status, waiting more than 1ms for each GMII register access was overkill. Unfortunately all previous attempts were failed with various ways on different controllers. This time, add additional 20us dealy at the end of GMII register access which seems to requirement of all RealTek controllers to issue next GMII register access request. This is the same way what Linux does. END K 10 svn:author V 7 yongari K 8 svn:date V 27 2010-11-16T20:27:01.785903Z K 7 svn:log V 600 MFC r214992: Reduce spin wait time consumed in GMII register access routine. There were a couple of attempts in the past to reduce it since it took more than 1ms. Because mii_tick() periodically polls link status, waiting more than 1ms for each GMII register access was overkill. Unfortunately all previous attempts were failed with various ways on different controllers. This time, add additional 20us dealy at the end of GMII register access which seems to requirement of all RealTek controllers to issue next GMII register access request. This is the same way what Linux does. END K 10 svn:author V 7 yongari K 8 svn:date V 27 2010-11-16T20:32:09.496116Z K 7 svn:log V 797 MFC r215017,215025: Follow the lead of vendor's interrupt moderation mechanism. It seems RTL8169/RTL8168/RTL810xE has a kind of interrupt moderation mechanism but it is not documented at all. The magic value dramatically reduced number of interrupts without noticeable performance drops so apply it to all RTL8169/RTL8169 controllers. Vendor's FreeBSD driver also applies it to RTL810xE controllers but their Linux driver explicitly cleared the register, so do not enable interrupt moderation for RTL810xE controllers. While I'm here sort 8169 specific registers. Obtained from: RealTek FreeBSD driver MFC r215025: Only moderate TX completion interrupts. Relying on taskqueue to suppress RX interrupts seems to give better RX performance than RX interrupt moderation. END K 10 svn:author V 7 yongari K 8 svn:date V 27 2010-11-16T20:34:00.603973Z K 7 svn:log V 797 MFC r215017,215025: Follow the lead of vendor's interrupt moderation mechanism. It seems RTL8169/RTL8168/RTL810xE has a kind of interrupt moderation mechanism but it is not documented at all. The magic value dramatically reduced number of interrupts without noticeable performance drops so apply it to all RTL8169/RTL8169 controllers. Vendor's FreeBSD driver also applies it to RTL810xE controllers but their Linux driver explicitly cleared the register, so do not enable interrupt moderation for RTL810xE controllers. While I'm here sort 8169 specific registers. Obtained from: RealTek FreeBSD driver MFC r215025: Only moderate TX completion interrupts. Relying on taskqueue to suppress RX interrupts seems to give better RX performance than RX interrupt moderation. END K 10 svn:author V 7 yongari K 8 svn:date V 27 2010-11-16T20:36:52.708766Z K 7 svn:log V 237 MFC r215018-215020: r215018: Consistently use tab character instead of using space character. No functional changes. r215019: Remove trailing white spaces. r215020: Remove standard PCI configuration space register definitions. END K 10 svn:author V 7 yongari K 8 svn:date V 27 2010-11-16T20:38:41.736115Z K 7 svn:log V 237 MFC r215018-215020: r215018: Consistently use tab character instead of using space character. No functional changes. r215019: Remove trailing white spaces. r215020: Remove standard PCI configuration space register definitions. END K 10 svn:author V 3 gnn K 8 svn:date V 27 2010-11-16T20:39:52.712132Z K 7 svn:log V 38 Fix an error in our results printing. END K 10 svn:author V 6 tuexen K 8 svn:date V 27 2010-11-16T22:16:38.232778Z K 7 svn:log V 100 Add an SCTP socket option to retrieve the number of timeouts of an association. MFC after: 3 days. END K 10 svn:author V 6 adrian K 8 svn:date V 27 2010-11-16T22:21:14.767398Z K 7 svn:log V 31 Add in forgotten install rule. END K 10 svn:author V 6 adrian K 8 svn:date V 27 2010-11-16T22:22:16.468565Z K 7 svn:log V 77 .. and then notice that the list of mk files is ordered, and update to suit. END K 10 svn:author V 6 adrian K 8 svn:date V 27 2010-11-16T22:23:20.580025Z K 7 svn:log V 28 Re-enable generating links. END K 10 svn:author V 4 jkim K 8 svn:date V 27 2010-11-16T22:44:58.332048Z K 7 svn:log V 275 Invalidate TLBs explicitly. r1.4 of sys/i386/i386/i686_mem.c removed this code but probably it only worked by chance because modifying CR4.PGE bit causes invlidation of entire TLBs. Since these are very rare events, this micro-optimization seems useless. Reviewed by: jhb END K 10 svn:author V 4 jkim K 8 svn:date V 27 2010-11-16T23:26:02.749720Z K 7 svn:log V 242 Restore CR0 after MTRR initialization for correctness sakes. There will be no noticeable change because we enable caches before we enter here for both BSP and AP cases. Remove another pointless optimization for CR4.PGE bit while I am here. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-17T04:42:47.284877Z K 7 svn:log V 271 - In function robust_free(), wake up waiters, this is suggested by Jilles Tjoelker. - Reparent sysctl max_robust_mutexes_per_proc from debug.umtx to kern.threads, set its default value to 3000. - Only allocate robust_info after a robust mutex is successfully locked. END K 10 svn:author V 8 jchandra K 8 svn:date V 27 2010-11-17T08:56:01.607445Z K 7 svn:log V 235 MFC test for mips changes in -CURRENT. - Pull in vm updates for allocating page table pages. - revert page queue locking code in -CURRENT pmap.c - merge PMC by hand - revert kernel event timer code from -CURRENT tick.c - other fixups END K 10 svn:author V 2 bz K 8 svn:date V 27 2010-11-17T09:25:08.367987Z K 7 svn:log V 166 No need to re-initialize the callout. We initially do it in in6_lltable_new() right after allocation. Worse, we are losing the right flags here. MFC after: 4 days END K 10 svn:author V 8 bschmidt K 8 svn:date V 27 2010-11-17T09:28:17.375043Z K 7 svn:log V 80 Use kmem_alloc_contig() to honour the cache_type variable. Pointed out by: alc END K 10 svn:author V 8 bschmidt K 8 svn:date V 27 2010-11-17T09:32:39.535702Z K 7 svn:log V 477 Fix a panic on i386 for drivers using MmAllocateContiguousMemory() and MmAllocateContiguousMemorySpecifyCache(). Those two functions take 64-bit variable(s) for their arguments. On i386 that takes additional 32-bit variable per argument. This is required so that windrv_wrap() can correctly wrap function that miniport driver calls with stdcall convention. Similar explanation is provided in subr_ndis.c for other functions. Submitted by: Paul B Mahol END K 10 svn:author V 7 pluknet K 8 svn:date V 27 2010-11-17T09:48:18.835930Z K 7 svn:log V 169 MFC r215186: Add 'jid' as a possible sort order to the help screen. PR: bin/150992 Submitted by: Frederic Culot Approved by: avg (mentor) END K 10 svn:author V 7 pluknet K 8 svn:date V 27 2010-11-17T09:49:51.164607Z K 7 svn:log V 169 MFC r215186: Add 'jid' as a possible sort order to the help screen. PR: bin/150992 Submitted by: Frederic Culot Approved by: avg (mentor) END K 10 svn:author V 2 bz K 8 svn:date V 27 2010-11-17T10:43:20.416312Z K 7 svn:log V 269 Do not initialize flag variables before needed. Consistently use the LLE_ prefix for lla_lookup() and the ND6_ prefix for nd6_lookup() even though both are defined the same. Use the right flag variable when checking each. No real functional change. MFC after: 4 days END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-17T13:52:09.619467Z K 7 svn:log V 277 In mutex_try_lock, use _mutex_owned() to simply code, this also fixed some bugs which ignored recursive mutex. In mutex_unlock_common, check recursive mutex correctly. If kernel returned EOWNERDEAD, clear mutex's left-over recursive count, so we can correctly unlock it later. END K 10 svn:author V 6 ivoras K 8 svn:date V 27 2010-11-17T15:12:10.068173Z K 7 svn:log V 158 Change "wait" banner to "qlen" to be more indicative of its purpose and to be more inline with what gstat uses. Reviewed by: gnn Silence from: phk, keramida END K 10 svn:author V 3 jhb K 8 svn:date V 27 2010-11-17T15:42:47.298701Z K 7 svn:log V 55 Remove unused autofs userland bits. Approved by: core END K 10 svn:author V 3 kib K 8 svn:date V 27 2010-11-17T16:17:15.540118Z K 7 svn:log V 102 Only save FPU context when not executing in the context of the crypto thread. Tested by: Mike Tancsa END K 10 svn:author V 3 mav K 8 svn:date V 27 2010-11-17T16:17:35.782476Z K 7 svn:log V 66 Add IDs for VIA VX900 chipset SATA controller. MFC after: 1 week END K 10 svn:author V 5 markm K 8 svn:date V 27 2010-11-17T17:12:41.838918Z K 7 svn:log V 188 MFC: Add /bin/rmail symlink to mailwrapper if sendmail is not being built and mailwrapper is being built. Ensure that it is not removed by "make delete-old". Add Exim example to man page. END K 10 svn:author V 3 alc K 8 svn:date V 27 2010-11-17T17:29:22.885361Z K 7 svn:log V 180 MFC r209407, r209648, r209650 Introduce and use vm_page_next() and vm_page_prev(). They provide both a simpler and faster interface for iterating over the pages of an object. END K 10 svn:author V 3 mav K 8 svn:date V 27 2010-11-17T17:52:04.919784Z K 7 svn:log V 72 Add IDs for VIA VX900 chipset SATA controller. (Missed part of r215428) END K 10 svn:author V 7 yongari K 8 svn:date V 27 2010-11-17T18:09:02.179906Z K 7 svn:log V 574 MCP55 is the only NVIDIA controller that supports VLAN tag insertion/stripping and it also supports TSO over VLAN. Implement TSO over VLAN support for MCP55 controller. While I'm here clean up SIOCSIFCAP ioctl handler. Since nfe(4) sets ifp capabilities based on various hardware flags in device attach, there is no need to check hardware flags again in SIOCSIFCAP ioctl handler. Also fix a bug which toggled both TX and RX checksum offloading even if user requested either TX or RX checksum configuration change. Tested by: Rob Farmer ( rfarmer <> predatorlabs dot net ) END K 10 svn:author V 3 alc K 8 svn:date V 27 2010-11-17T18:21:29.715062Z K 7 svn:log V 180 MFC r209407, r209648, r209650 Introduce and use vm_page_next() and vm_page_prev(). They provide both a simpler and faster interface for iterating over the pages of an object. END K 10 svn:author V 3 gnn K 8 svn:date V 27 2010-11-17T18:55:12.974322Z K 7 svn:log V 213 Add new, per connection, statistics for TCP, including: Retransmitted Packets Zero Window Advertisements Out of Order Receives These statistics are available via the -T argument to netstat(1). MFC after: 2 weeks END K 10 svn:author V 8 andreast K 8 svn:date V 27 2010-11-17T19:25:37.847411Z K 7 svn:log V 65 Load the full 16k stack space. Approved by: nwhitehorn (mentor) END K 10 svn:author V 8 andreast K 8 svn:date V 27 2010-11-17T19:28:48.894164Z K 7 svn:log V 143 Make sure the .bss is cleared at the beginning. The pSeries OF ELF loader does not clear .bss automatically. Approved by: nwhitehorn (mentor) END K 10 svn:author V 8 andreast K 8 svn:date V 27 2010-11-17T19:31:48.990503Z K 7 svn:log V 148 Move the declaration of the eh struct (used only when debugging is enabled) from ofwn_put into the debug section. Approved by: nwhitehorn (mentor) END K 10 svn:author V 8 andreast K 8 svn:date V 27 2010-11-17T19:35:56.086566Z K 7 svn:log V 304 Check the real-mode? OF property to find out whether we operate in real or virtual mode. In virtual mode we have to do memory mapping. On PowerMacs it is usually false while on pSeries we have found that it is true. The real-mode? property is not available on sparc64. Approved by: nwhitehorn (mentor) END K 10 svn:author V 4 tijl K 8 svn:date V 27 2010-11-17T19:54:01.775185Z K 7 svn:log V 107 Let gcc and ld know where to find 32 bit libraries on amd64. Reviewed by: arch@ Approved by: kib (mentor) END K 10 svn:author V 6 jilles K 8 svn:date V 27 2010-11-17T20:21:10.644022Z K 7 svn:log V 63 MFC r174692: Fix wordexp() testsuite. Original commit by das. END K 10 svn:author V 8 andreast K 8 svn:date V 27 2010-11-17T20:37:16.724472Z K 7 svn:log V 103 Revert r215435. We need to figure out the exact value to be loaded. Approved by: nwhitehorn (mentor) END K 10 svn:author V 6 jilles K 8 svn:date V 27 2010-11-17T21:45:11.132302Z K 7 svn:log V 366 MFC r198406: wordexp(3): fix some bugs with signals and long outputs * retry various system calls on EINTR * retry the rest after a short read (common if there is more than about 1K of output) * block SIGCHLD like system(3) does (note that this does not and cannot work fully in threaded programs, they will need to be careful with wait functions) PR: 90580 END K 10 svn:author V 3 jhb K 8 svn:date V 27 2010-11-17T22:28:04.468534Z K 7 svn:log V 111 Add a resource_list_reserved() method that returns true if a resource list entry contains a reserved resource. END K 10 svn:author V 6 jilles K 8 svn:date V 27 2010-11-17T23:13:02.256812Z K 7 svn:log V 261 MFC r215022: test: Move tests to tools/regression/bin/test. Convert the tests to the perl prove format. Remove obsolete TEST.README (results of an old TEST.sh for some old Unices) and TEST.csh (old tests without correct values, far less complete than TEST.sh). END K 10 svn:author V 7 delphij K 8 svn:date V 27 2010-11-18T01:14:18.900367Z K 7 svn:log V 42 MFC through r214047: nc from OpenBSD 4.8. END K 10 svn:author V 7 delphij K 8 svn:date V 27 2010-11-18T01:21:55.683084Z K 7 svn:log V 42 MFC through r214047: nc from OpenBSD 4.8. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-18T02:12:45.886648Z K 7 svn:log V 48 _mutex_owned() returns error code, not boolean. END K 10 svn:author V 7 davidxu K 8 svn:date V 27 2010-11-18T02:16:06.180145Z K 7 svn:log V 242 Create new version for following functins: pthread_barrierattr_setpshared pthread_condattr_setpshared pthread_mutexattr_setpshared pthread_rwlockattr_setpshared These functions allow PTHREAD_PROCESS_SHARED to be set for attribute object. END K 10 svn:author V 3 mav K 8 svn:date V 27 2010-11-18T08:03:40.187065Z K 7 svn:log V 200 Some VIA SATA controllers provide access to non-standard SATA registers via PCI config space. Use them to implement hot-plug and link speed reporting. Tested on ASRock PV530 board with VX900 chipset. END K 10 svn:author V 8 hselasky K 8 svn:date V 27 2010-11-18T08:32:47.706163Z K 7 svn:log V 170 Correct description of the return values of the LibUSB v1.0 libusb_control_transfer() function. PR: usb/151851 Submitted by: HIROSHI OOTA Approved by: thompsa (mentor) END K 10 svn:author V 3 mav K 8 svn:date V 27 2010-11-18T10:34:18.882923Z K 7 svn:log V 58 Record that there is no devices if SATA reset found none. END K 10 svn:author V 8 jchandra K 8 svn:date V 27 2010-11-18T11:19:23.569956Z K 7 svn:log V 76 MFC 202061, 202091,203001 to update dev/cfe MFC 205845 to fix module build END K 10 svn:author V 3 mav K 8 svn:date V 27 2010-11-18T11:58:17.007676Z K 7 svn:log V 217 Even if we are skipping SATA hard reset - set power management bits in SControl register. This should make things consistent and help to avoid unexpected PHY events that I've noticed in some cases on VIA controllers. END K 10 svn:author V 3 mav K 8 svn:date V 27 2010-11-18T13:38:33.985777Z K 7 svn:log V 192 If HBA doesn't report user-enabled SATA capabilies (like ATA_CAM wrapper) - handle all of them as disabled. This was original cause of the problem, workarounded by r215453. MFC after: 1 week END K 10 svn:author V 5 markm K 8 svn:date V 27 2010-11-18T16:32:52.983188Z K 7 svn:log V 163 Do not lint code beyond necessity (with apologies to Wiliam of Ockham). Don't lint externally maintained CDDL code, or relint the 32-bit libraries in amd64 mode. END K 10 svn:author V 7 yongari K 8 svn:date V 27 2010-11-18T17:44:02.787261Z K 7 svn:log V 759 MFC r215132,215194: r215132: Add basic WOL support for MCP ethernet controllers. It seems the controller does not perform automatic switching from 1000Mbps link to 10/100Mbps link when WOL is activated. Implement establishing 10/100Mps link with auto-negotiation in driver. Link status change handler was modified to remove taskqueue based approach since driver now needs synchronous handling for link establishment. Submitted by: Yamagi Burmeister (lists <> yamagi.org ) (initial version) Tested by: Yamagi Burmeister (lists <> yamagi.org ) r215194: Fix regression introduced in r215132. Caller always holds a driver lock before accessing mii, so locking is not needed here. Reported by: Rob Farmer (rfarmer <> predatorlabs dot net) END K 10 svn:author V 7 yongari K 8 svn:date V 27 2010-11-18T17:49:24.424635Z K 7 svn:log V 759 MFC r215132,215194: r215132: Add basic WOL support for MCP ethernet controllers. It seems the controller does not perform automatic switching from 1000Mbps link to 10/100Mbps link when WOL is activated. Implement establishing 10/100Mps link with auto-negotiation in driver. Link status change handler was modified to remove taskqueue based approach since driver now needs synchronous handling for link establishment. Submitted by: Yamagi Burmeister (lists <> yamagi.org ) (initial version) Tested by: Yamagi Burmeister (lists <> yamagi.org ) r215194: Fix regression introduced in r215132. Caller always holds a driver lock before accessing mii, so locking is not needed here. Reported by: Rob Farmer (rfarmer <> predatorlabs dot net) END K 10 svn:author V 6 sbruno K 8 svn:date V 27 2010-11-18T17:50:23.574321Z K 7 svn:log V 53 Merge to HEAD. Building my own release for testing. END K 10 svn:author V 6 marius K 8 svn:date V 27 2010-11-18T17:58:59.321903Z K 7 svn:log V 214 Fix a bug introduced with r215298; when atphy_reset() is called from atphy_attach() the current media has not been set, yet, leading to a NULL-dereference in atphy_setmedia(). Submitted by: jkim (initial version) END K 10 svn:author V 6 marius K 8 svn:date V 27 2010-11-18T18:03:52.582214Z K 7 svn:log V 607 MFC: r215348 Return from mii_attach() after calling bus_generic_attach(9) on the device_t of the MAC driver in order to attach miibus(4) on the first pass instead of falling through to also calling it on the device_t of miibus(4). The latter code flow was intended to attach the PHY drivers the same way regardless of whether it's the first or a repeated pass, modulo the bus_generic_attach() call in miibus_attach() which shouldn't be there. However, it turned out that these variants cause miibus(4) to be attached twice under certain conditions when using MAC drivers as modules. Submitted by: yongari END K 10 svn:author V 6 marius K 8 svn:date V 27 2010-11-18T18:05:59.627549Z K 7 svn:log V 607 MFC: r215348 Return from mii_attach() after calling bus_generic_attach(9) on the device_t of the MAC driver in order to attach miibus(4) on the first pass instead of falling through to also calling it on the device_t of miibus(4). The latter code flow was intended to attach the PHY drivers the same way regardless of whether it's the first or a repeated pass, modulo the bus_generic_attach() call in miibus_attach() which shouldn't be there. However, it turned out that these variants cause miibus(4) to be attached twice under certain conditions when using MAC drivers as modules. Submitted by: yongari END K 10 svn:author V 3 mav K 8 svn:date V 27 2010-11-18T18:09:25.813180Z K 7 svn:log V 49 Add VIA VX900 to the list of supported chipsets. END K 10 svn:author V 5 markm K 8 svn:date V 27 2010-11-18T18:22:58.360423Z K 7 svn:log V 29 Fix paths for example files. END K 10 svn:author V 3 dim K 8 svn:date V 27 2010-11-18T18:30:03.020222Z K 7 svn:log V 49 Sync: merge r215396 through r215463 from ^/head. END K 10 svn:author V 3 dim K 8 svn:date V 27 2010-11-18T18:49:04.588630Z K 7 svn:log V 110 Revert patch for gcc PR 20218 for now, I hope it can land in head soon, otherwise I'll just reapply it again. END K 10 svn:author V 2 jh K 8 svn:date V 27 2010-11-18T19:06:56.818700Z K 7 svn:log V 234 MFC r215235: Set FD_CLOEXEC for the output file only when the file has been specified with the -o option. Setting the flag for stderr (the default) could cause the traced process to redirect stderr to a random file. PR: bin/152151 END K 10 svn:author V 2 jh K 8 svn:date V 27 2010-11-18T19:08:56.922232Z K 7 svn:log V 234 MFC r215235: Set FD_CLOEXEC for the output file only when the file has been specified with the -o option. Setting the flag for stderr (the default) could cause the traced process to redirect stderr to a random file. PR: bin/152151 END K 10 svn:author V 3 mav K 8 svn:date V 27 2010-11-18T19:28:45.845014Z K 7 svn:log V 213 Make ATA_CAM wrapper to report SATA power management capabilities to CAM to make it configure device to initiate transitions if controller configured to accept them. This makes hint.ata.X.pm_level=1 mode working. END K 10 svn:author V 3 kib K 8 svn:date V 27 2010-11-18T20:46:28.919506Z K 7 svn:log V 387 Only increment object generation count when inserting the page into object page list. The only use of object generation count now is a restart of the scan in vm_object_page_clean(), which makes sense to do on the page addition. Page removals do not affect the dirtiness of the object, as well as manipulations with the shadow chain. Suggested and reviewed by: alc MFC after: 1 week END K 10 svn:author V 8 cperciva K 8 svn:date V 27 2010-11-18T21:02:40.238841Z K 7 svn:log V 308 Don't KASSERT in pmap_release that xpmap_ptom(VM_PAGE_TO_PHYS(m)) == (pmap->pm_pdpt[i] & PG_FRAME) for i = NPGPTD, since pmap->pm_pdpt[i] is only initialized for 0 <= i < NPGPTD. This fixes an inevitable panic with XEN && PAE && INVARIANTS when pmap_release is called (e.g., when /sbin/init is launched). END K 10 svn:author V 3 kib K 8 svn:date V 27 2010-11-18T21:09:02.083243Z K 7 svn:log V 824 vm_pageout_flush() might cache the pages that finished write to the backing storage. Such pages might be then reused, racing with the assert in vm_object_page_collect_flush() that verified that dirty pages from the run (most likely, pages with VM_PAGER_AGAIN status) are write-protected still. In fact, the page indexes for the pages that were removed from the object page list should be ignored by vm_object_page_clean(). Return the length of successfully written run from vm_pageout_flush(), that is, the count of pages between requested page and first page after requested with status VM_PAGER_AGAIN. Supply the requested page index in the array to vm_pageout_flush(). Use the returned run length to forward the index of next page to clean in vm_object_page_clean(). Reported by: avg Reviewed by: alc MFC after: 1 week END K 10 svn:author V 8 cperciva K 8 svn:date V 27 2010-11-18T21:29:43.111378Z K 7 svn:log V 149 Make pmap_release match pmap_pinit by invoking pmap_qremove(pmap->pm_pdpt) to match pmap_pinit's pmap_qenter(pmap->pm_pdpt) call in the case of PAE. END K 10 svn:author V 3 jhb K 8 svn:date V 27 2010-11-18T22:17:20.336984Z K 7 svn:log V 50 Various small typos and grammar nits in comments. END K 10 svn:author V 6 rstone K 8 svn:date V 27 2010-11-18T23:46:55.639227Z K 7 svn:log V 201 When netstat was run with -i/-I and -w1 to produce running counters, the idrop field printed an absolute value rather than the delta from the last value Approved by: emaste (mentor) MFC after: 1 week END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:17:49.821874Z K 7 svn:log V 128 MFC r203774 Use more standard way for setting nonblocking flag for a filedescriptor. This makes libusb porting a bit easier. END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:18:52.890793Z K 7 svn:log V 83 MFC r203775 Remove redundand headers and use more standard ones where necessary. END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:20:53.589493Z K 7 svn:log V 113 MFC r203815 Resort includes to match style(9) a bit more. No functional change is expected after this commit. END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:23:09.913084Z K 7 svn:log V 661 MFC r210275 - Support for Globetrotter iCON 452. - Fixed the interface probe routine to only attach to USB interfaces the driver actually supports. This allows other drivers to attach to things like MicroSD slots etc. - Fixed network interface enumeration to be globally sequential instead of relying on the USB interface numbers. This make sure the first network interface always is at uhso0 and the second at usho1 and so on. - Added a radio kill switch; exposed through sysctl. - Updated the manual page to be verbose about the number of serial ports and include iCON 452 in the set of tested hardware. Submitted by: Fredrik Lindberg END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:24:36.570774Z K 7 svn:log V 120 MFC r212980 Add new device ids. Buffalo (Melco Inc.) LUA3-U2-AGT Logitec LAN-GTJ/U2A(usb/119981) PR: usb/119981 END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:27:21.741694Z K 7 svn:log V 51 MFC r206369 Remove debugging code that snuck in. END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:28:22.047421Z K 7 svn:log V 361 MFC r209144 - Because hostapd calls iv_key_set() before if_init(), make sure key_set callback function will be executed, and that the key won't be deleted during the init process. - txmic and rxmic are written into the chip the same place regardless of opmode. - Make the hardware generate 802.11 sequence numbers. Submitted by: Akinori Furukoshi END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:29:20.183154Z K 7 svn:log V 151 MFC r209443 Add support for LOW speed BULK transfers. This mode is not recommended by the USB 2.0 standard, though some USB devices use it anyway. END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:30:23.820364Z K 7 svn:log V 266 MFC r209450 Reduce MIDI input buffer size to one USB packet, hence some USB devices don't properly short terminate their transfers. This fixes a problem where input appears several seconds late. Reported by: Alexander Yerenkow Submitted by: Hans Petter Selasky END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:30:59.625689Z K 7 svn:log V 233 MFC r209452 - fix for USB audio devices which use the 7-byte endpoint descriptor instead of the 9-byte one. - remove sync-endpoint code, which is currently unused. Reported by: Antun Matanovi Submitted by: Hans Petter Selasky END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:32:23.547725Z K 7 svn:log V 77 MFC r209917 Update for style(9). Submitted by: Akinori Furukoshi (author) END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:34:18.928736Z K 7 svn:log V 47 MFC r209918 Use more compact deviceid table. END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:35:14.382129Z K 7 svn:log V 64 MFC r210018 Add a 4 and 7 port USB hub from NEC. PR: 148189 END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:35:57.111117Z K 7 svn:log V 72 MFC r210469 Give a name to the HTC Wizard Smartphone PR: usb/135575 END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:36:40.267346Z K 7 svn:log V 104 MFC r210553 Fix the entry for the Option ICON452 where an underscore was used instead of whitespace. END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:39:29.361420Z K 7 svn:log V 284 MFC r211021 Sort this file a little better: the vendors are supposed to be sorted by vendor ID in the vendor section, and by symbolic name in the product section. Products are sorted by product ID. While here, get rid of a duplicate Microsoft Mouse entry, revealed by sorting. END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:40:34.461895Z K 7 svn:log V 59 MFC r211104 Add entries for some devices I have locally. END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:41:28.506580Z K 7 svn:log V 153 MFC r212122 Add missing MODULE_VERSION() definitions, this resolves problems around duplicate module loads. PR: usb/125736 Submitted by: danger, mm END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:42:13.309041Z K 7 svn:log V 180 MFC r212127 We need to grab a node reference count to vap->iv_bss before using it as it is possible for the node to be replaced and freed at any time by ieee80211_sta_join1(). END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:43:08.176511Z K 7 svn:log V 63 MFC r212128 Silence debug error by default. PR: usb/141212 END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:44:13.663200Z K 7 svn:log V 83 MFC r212129 Add support for extra buttons on the Kensington Slimblade Trackball. END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:45:34.828756Z K 7 svn:log V 81 MFC r212130 Add GPIO programming for more PHY hardware. Submitted by: yongari END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:46:33.464616Z K 7 svn:log V 46 MFC r212131 Fix build breakage from r212127 END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:47:09.013824Z K 7 svn:log V 45 MFC r212132 Fix UMS_BUTTON_MAX define name END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:47:46.777500Z K 7 svn:log V 218 MFC r212133 Fix setting of the rx_max and tx_max variables. If the expected buffer size is greater than 65535 bytes then the CDC driver might not work as expected, which is not likely with the existing USB speeds. END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:48:47.673967Z K 7 svn:log V 207 MFC r212134 Change argument for usbd_get_dma_delay() from USB bus to USB device, some embedded hardware needs to know exactly which device is in question before it exactly can decide the required delay. END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:49:22.748078Z K 7 svn:log V 104 MFC r212135 Add support for power mode filtering as some USB hardware does not support power saving. END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:50:22.762755Z K 7 svn:log V 139 MFC r212136 Reduce the need to accesss struct usb_device by providing functions to access the product, manufacturer and serial strings. END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:50:56.521950Z K 7 svn:log V 45 MFC r212830 Cleanup white space and typos. END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:51:51.651704Z K 7 svn:log V 197 MFC r215326 Add a special INIT product ID used by some models of the HUAWEI K3765 datacard. After ejecting this device, it reappears using the normal K3765 ID. It does not switch automatically END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:52:34.227912Z K 7 svn:log V 37 MFC r215330 Add the Sierra MC8700. END K 10 svn:author V 7 thompsa K 8 svn:date V 27 2010-11-19T01:58:11.627755Z K 7 svn:log V 92 MFC r207768 Add dummy function for ic_update_mcast (a la if_urtw) to avoid console spam. END K 10 svn:author V 6 rstone K 8 svn:date V 27 2010-11-19T03:47:10.961338Z K 7 svn:log V 381 When doing a camcontrol rescan all or a camcontrol reset all, use the wildcard path id for enumerating the available busses. Previously camcontrol was implicitly passing 0 as the first path id, which meant that if bus 0 was not present camcontrol would fail with EINVAL instead of rescanning/resetting any busses that were present. Approved by: emaste (mentor) MFC after: 1 week END K 10 svn:author V 6 mlaier K 8 svn:date V 27 2010-11-19T04:30:33.677112Z K 7 svn:log V 176 Off by one page in vm_reserv_reclaim_contig(): Also reclaim reservations with only a single free page if that satisfies the requested size. MFC after: 3 days Reviewed by: alc END K 10 svn:author V 3 mav K 8 svn:date V 27 2010-11-19T09:14:53.280288Z K 7 svn:log V 154 MFC r214988: Teach ahci(4), siis(4) and ATA_CAM ata(4) wrapper report to CAM residual I/O length on underruns, that often happens for some SCSI commands. END K 10 svn:author V 3 mav K 8 svn:date V 27 2010-11-19T09:21:53.511255Z K 7 svn:log V 43 MFC r209682 by imp: Minor formatting nits. END K 10 svn:author V 3 mav K 8 svn:date V 27 2010-11-19T09:25:12.853680Z K 7 svn:log V 321 MFC r209683 by imp: Add a safety-belt. If the identified disk has 0 blocks, don't attach it. This can happen in some cases when plugging in SD/SmartCard PC Cards with empty slots. It is better to detect this bogosity, and refuse to attach rather than panic with a division by zero (in one of many places) down stream. END K 10 svn:author V 3 mav K 8 svn:date V 27 2010-11-19T09:26:39.706298Z K 7 svn:log V 67 MFC r214672: Remove stale line, accidentally slipped into r214016. END K 10 svn:author V 3 kib K 8 svn:date V 27 2010-11-19T09:49:14.435747Z K 7 svn:log V 10021 Merge the kern_fpu_enter/kern_fpu_leave KPI and followup fixes for the amd64 suspend/resume support. Tested by: Mike Tancsa Also tested by: Dewayne Geraghty , Daryl Richards Below is the svn log of the merged revisions. ------------------------------------------------------------------------ r197455 | emaste | 2009-09-24 17:26:42 +0300 (Thu, 24 Sep 2009) | 5 lines Add a backtrace to the "fpudna in kernel mode!" case, to help track down where this comes from. Reviewed by: bde ------------------------------------------------------------------------ r197863 | jkim | 2009-10-08 20:41:53 +0300 (Thu, 08 Oct 2009) | 8 lines Clean up amd64 suspend/resume code. - Allocate memory for wakeup code after ACPI bus is attached. The early memory allocation hack was inherited from i386 but amd64 does not need it. - Exclude real mode IVT and BDA explicitly. Improve comments about memory allocation and reason for the exclusions. It is a no-op in reality, though. - Remove an unnecessary CLD from wakeup code and re-align. ------------------------------------------------------------------------ r198931 | jkim | 2009-11-05 00:39:18 +0200 (Thu, 05 Nov 2009) | 2 lines Tweak memory allocation for amd64 suspend/resume CPU context. ------------------------------------------------------------------------ r200280 | jkim | 2009-12-09 00:38:42 +0200 (Wed, 09 Dec 2009) | 2 lines Simplify a macro not to generate unncessary symbols. ------------------------------------------------------------------------ r205444 | emaste | 2010-03-22 13:52:53 +0200 (Mon, 22 Mar 2010) | 7 lines Merge r197455 from amd64: Add a backtrace to the "fpudna in kernel mode!" case, to help track down where this comes from. Reviewed by: bde ------------------------------------------------------------------------ r208833 | kib | 2010-06-05 18:59:59 +0300 (Sat, 05 Jun 2010) | 15 lines Introduce the x86 kernel interfaces to allow kernel code to use FPU/SSE hardware. Caller should provide a save area that is chained into the stack of the areas; pcb save_area for usermode FPU state is on top. The pcb now contains a pointer to the current FPU saved area, used during FPUDNA handling and context switches. There is also a facility to allow the kernel thread to use pcb save_area. Change the dreaded warnings "npxdna in kernel mode!" into the panics when FPU usage is not registered. KPI discussed with: fabient Tested by: pho, fabient Hardware provided by: Sentex Communications MFC after: 1 month ------------------------------------------------------------------------ r208834 | kib | 2010-06-05 19:00:53 +0300 (Sat, 05 Jun 2010) | 13 lines Use the fpu_kern_enter() interface to properly separate usermode FPU context from in-kernel execution of padlock instructions and to handle spurious FPUDNA exceptions that sometime are raised when doing padlock calculations. Globally mark crypto(9) kthread as using FPU. Reviewed by: pjd Hardware provided by: Sentex Communications Tested by: pho PR: amd64/135014 MFC after: 1 month ------------------------------------------------------------------------ r208877 | kib | 2010-06-06 19:13:50 +0300 (Sun, 06 Jun 2010) | 5 lines Style-compilant order of declarations. Noted by: bde MFC after: 1 month ------------------------------------------------------------------------ r209174 | jkim | 2010-06-14 23:08:26 +0300 (Mon, 14 Jun 2010) | 3 lines Fix ACPI suspend/resume on amd64, which was broken since r208833. We need actual storage for FPU state to save and restore. ------------------------------------------------------------------------ r209198 | kib | 2010-06-15 12:19:33 +0300 (Tue, 15 Jun 2010) | 10 lines Use critical sections instead of disabling local interrupts to ensure the consistency between PCPU fpcurthread and the state of the FPU. Explicitely assert that the calling conventions for fpudrop() are adhered too. In cpu_thread_exit(), add missed critical section entrance. Reviewed by: bde Tested by: pho MFC after: 1 month ------------------------------------------------------------------------ r209204 | kib | 2010-06-15 17:59:35 +0300 (Tue, 15 Jun 2010) | 5 lines Rename CRITSECT_ASSERT to CRITICAL_ASSERT. Suggested by: jhb MFC after: 1 month ------------------------------------------------------------------------ r209208 | kib | 2010-06-15 21:16:04 +0300 (Tue, 15 Jun 2010) | 4 lines Remove two obsoleted comments, add a note about 32bit compatibility. MFC after: 1 month ------------------------------------------------------------------------ r209252 | kib | 2010-06-17 15:35:17 +0300 (Thu, 17 Jun 2010) | 6 lines In the ia32_{get,set}_fpcontext(), use fpu{get,set}userregs instead of fpu{get,set}regs. Noted by: bde MFC after: 1 month ------------------------------------------------------------------------ r209460 | kib | 2010-06-23 13:40:28 +0300 (Wed, 23 Jun 2010) | 8 lines Remove unused i586 optimized bcopy/bzero/etc implementations that utilize FPU registers for copying. Remove the switch table and jumps from bcopy/bzero/... to the actual implementation. As a side-effect, i486-optimized bzero is removed. Reviewed by: bde Tested by: pho (previous version) ------------------------------------------------------------------------ r209461 | kib | 2010-06-23 14:12:58 +0300 (Wed, 23 Jun 2010) | 8 lines Remove the support for int13 FPU exception reporting on i386. It is believed that all 486-class CPUs FreeBSD is capable to run on, either have no FPU and cannot use external coprocessor, or have FPU on the package and can use #MF. Reviewed by: bde Tested by: pho (previous version) ------------------------------------------------------------------------ r209462 | kib | 2010-06-23 14:21:19 +0300 (Wed, 23 Jun 2010) | 8 lines After the FPU use requires #MF working due to INT13 FPU exception handling removal, MFi386 r209198: Use critical sections instead of disabling local interrupts to ensure the consistency between PCPU fpcurthread and the state of FPU. Reviewed by: bde Tested by: pho ------------------------------------------------------------------------ r210514 | jkim | 2010-07-26 22:53:09 +0300 (Mon, 26 Jul 2010) | 6 lines Re-implement FPU suspend/resume for amd64. This removes superfluous uses of critical_enter(9) and critical_exit(9) by fpugetregs() and fpusetregs(). Also, we do not touch PCB flags any more. MFC after: 1 month ------------------------------------------------------------------------ r210517 | jkim | 2010-07-27 00:24:52 +0300 (Tue, 27 Jul 2010) | 4 lines FNSTSW instruction can use AX register as an operand. Obtained from: fenv.h ------------------------------------------------------------------------ r210518 | jkim | 2010-07-27 01:16:36 +0300 (Tue, 27 Jul 2010) | 5 lines Reduce diff against fenv.h: Mark all inline asms as volatile for safety. No object file change after this commit (verified with md5). ------------------------------------------------------------------------ r210519 | jkim | 2010-07-27 01:55:14 +0300 (Tue, 27 Jul 2010) | 2 lines Remove an unused macro since r189418. ------------------------------------------------------------------------ r210520 | jkim | 2010-07-27 02:02:18 +0300 (Tue, 27 Jul 2010) | 2 lines Add missing ldmxcsr() prototype for lint case. ------------------------------------------------------------------------ r210521 | jkim | 2010-07-27 02:20:55 +0300 (Tue, 27 Jul 2010) | 3 lines Simplify fldcw() macro. There is no reason to use pointer here. No object file change after this commit (verified with md5). ------------------------------------------------------------------------ r210614 | jkim | 2010-07-29 19:41:21 +0300 (Thu, 29 Jul 2010) | 2 lines Rename PCB_USER_FPU to PCB_USERFPU not to clash with a macro from fpu.h. ------------------------------------------------------------------------ r210615 | jkim | 2010-07-29 19:49:20 +0300 (Thu, 29 Jul 2010) | 5 lines Fix another fallout from r208833. savectx() is used to save CPU context for crash dump (dumppcb) and kdb (stoppcbs). For both cases, there cannot have a valid pointer in pcb_save. This should restore the previous behaviour. ------------------------------------------------------------------------ r210777 | jkim | 2010-08-02 20:35:00 +0300 (Mon, 02 Aug 2010) | 13 lines - Merge savectx2() with savectx() and struct xpcb with struct pcb. [1] savectx() is only used for panic dump (dumppcb) and kdb (stoppcbs). Thus, saving additional information does not hurt and it may be even beneficial. Unfortunately, struct pcb has grown larger to accommodate more data. Move 512-byte long pcb_user_save to the end of struct pcb while I am here. - savectx() now saves FPU state unconditionally and copy it to the PCB of FPU thread if necessary. This gives panic dump and kdb a chance to take a look at the current FPU state even if the FPU is "supposedly" not used. - Resuming CPU now unconditionally reinitializes FPU. If the saved FPU state was irrelevant, it could be in an unknown state. Suggested by: bde [1] ------------------------------------------------------------------------ r210804 | jkim | 2010-08-03 18:32:08 +0300 (Tue, 03 Aug 2010) | 6 lines savectx() has not been used for fork(2) for about 15 years. [1] Do not clobber FPU thread's PCB as it is more harmful. When we resume CPU, unconditionally reload FPU state. Pointed out by: bde [1] ------------------------------------------------------------------------ r212026 | jkim | 2010-08-31 00:19:42 +0300 (Tue, 31 Aug 2010) | 3 lines Save MSR_FSBASE, MSR_GSBASE and MSR_KGSBASE directly to PCB as we do not use these values in the function. ------------------------------------------------------------------------ r214347 | jhb | 2010-10-25 18:31:13 +0300 (Mon, 25 Oct 2010) | 5 lines Use 'saveintr' instead of 'savecrit' or 'eflags' to hold the state returned by intr_disable(). Requested by: bde ------------------------------------------------------------------------ END K 10 svn:author V 7 delphij K 8 svn:date V 27 2010-11-19T09:59:41.878413Z K 7 svn:log V 86 RELENG_7 does not have IP_BINDANY yet so hide it under ifdef. Reported by: tinderbox END K 10 svn:author V 2 mm K 8 svn:date V 27 2010-11-19T09:59:55.951594Z K 7 svn:log V 102 Remove obsoleted private symbol. Approved by: delphij (mentor) MFC after: together with 5.0.0 update END K 10 svn:author V 3 avg K 8 svn:date V 27 2010-11-19T10:01:30.065873Z K 7 svn:log V 42 MFC r215397: fix misspelling in a comment END K 10 svn:author V 3 kib K 8 svn:date V 27 2010-11-19T10:14:07.829304Z K 7 svn:log V 136 MFC r209686,r209702: Reimplement vm_object_page_clean(), using the fact that vm object memq is ordered by page index. Reviewed by: alc END K 10 svn:author V 5 kevlo K 8 svn:date V 27 2010-11-19T10:15:29.291106Z K 7 svn:log V 56 Close file and directory descriptors MFC after: 3 days END K 10 svn:author V 5 kevlo K 8 svn:date V 27 2010-11-19T10:18:58.801006Z K 7 svn:log V 31 Fix fd leak MFC after: 3 days END K 10 svn:author V 6 jilles K 8 svn:date V 27 2010-11-19T12:56:13.776023Z K 7 svn:log V 721 sh: Add printf builtin. This was removed in 2001 but I think it is appropriate to add it back: * I do not want to encourage people to write fragile and non-portable echo commands by making printf much slower than echo. * Recent versions of Autoconf use it a lot. * Almost no software still wants to support systems that do not have printf(1) at all. * In many other shells printf is already a builtin. Side effect: printf is now always the builtin version (which behaves identically to /usr/bin/printf) and cannot be overridden via PATH (except via the undocumented %builtin mechanism). Code size increases about 5K on i386. Embedded folks might want to replace /usr/bin/printf with a hard link to /usr/bin/alias. END