ƒ²-157204 170 161 195 439 454 285 320 164 254 237 296 185 459 312 118 167 141 187 356 220 163 260 221 450 199 205 337 356 387 229 321 116 159 146 327 164 307 1867 339 188 153 388 847 146 170 125 146 170 118 142 147 111 180 166 186 158 132 126 149 626 142 627 894 166 389 277 221 195 160 206 158 137 541 409 127 176 137 138 631 492 252 242 215 130 218 221 313 235 580 169 590 210 166 103 448 275 513 119 283 107 281 235 135 772 167 396 159 594 571 178 175 346 271 142 133 121 464 481 328 682 312 400 242 809 520 166 176 383 1676 228 164 244 209 121 214 140 215 171 167 288 203 430 322 234 322 1554 401 452 483 132 231 1214 133 211 285 359 353 205 199 314 496 299 223 663 536 877 308 1147 104 329 716 K 10 svn:author V 4 ache K 8 svn:date V 27 2006-03-28T08:29:34.000000Z K 7 svn:log V 68 Remove unneded files from the vendor branch too Pointed by: ru END K 10 svn:author V 3 pjd K 8 svn:date V 27 2006-03-28T08:33:30.000000Z K 7 svn:log V 102 Fix memory leak which occurs when crypto.ko module is unloaded. Discussed with: sam MFC after 3 days END K 10 svn:author V 3 des K 8 svn:date V 27 2006-03-28T09:18:34.000000Z K 7 svn:log V 346 The undocumented and deprecated system call _umtx_op() takes two pointer arguments. The first one is never used (all callers pass in 0); the second is sometimes used to pass in a struct timespec * which is used as a timeout and never modified. Constify that argument so callers can pass a const struct timespec * without jumping through hoops. END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2006-03-28T10:16:38.000000Z K 7 svn:log V 357 Remove manual assignment of m_pkthdr from one mbuf to another in ipsec_copypkt(), as this is already handled by the call to M_MOVE_PKTHDR(), which also knows how to correctly handle MAC m_tags. This corrects a panic when running with MAC and KAME IPSEC. PR: kern/94599 Submitted by: zhouyi zhou Reviewed by: bz MFC after: 3 days END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2006-03-28T12:42:20.000000Z K 7 svn:log V 188 Merge fifo_vnops.c:1.134 from HEAD to RELENG_6: Add a_fdidx to comment prototype for fifo_open(). Submitted by: Kostik Belousov Approved by: re (mux) END K 10 svn:author V 8 dwmalone K 8 svn:date V 27 2006-03-28T12:51:22.000000Z K 7 svn:log V 222 This comment on various IPPORT_ defines was copied from in.h and probably never fully applied to IPv6. Over time it has become more stale, so replace it with something more up to date. Reviewed by: ume MFC after: 1 month END K 10 svn:author V 6 jkoshy K 8 svn:date V 27 2006-03-28T14:09:21.000000Z K 7 svn:log V 69 Forcibly turn off all PMCs at module unload time. MFC after: 1 week END K 10 svn:author V 3 des K 8 svn:date V 27 2006-03-28T14:32:38.000000Z K 7 svn:log V 161 Revert previous commit at davidxu's insistance. Instead, use __DECONST (argh!) and rearrange the prototypes to make it clear that _umtx_op() is not deprecated. END K 10 svn:author V 3 des K 8 svn:date V 27 2006-03-28T14:34:48.000000Z K 7 svn:log V 144 Use wrapper macros for atomic pointer operations in order to perform the correct casts. This should probably be merged to other architectures. END K 10 svn:author V 6 mlaier K 8 svn:date V 27 2006-03-28T15:06:03.000000Z K 7 svn:log V 200 MFC pf_norm.c rev. 1.17: Loopback pf_norm.c rev. 1.106 from OpenBSD: fixup IP checksum when modifying IP header fields PR: kern/93849 Obtained from: OpenBSD Approved by: re (kensmith) END K 10 svn:author V 6 mlaier K 8 svn:date V 27 2006-03-28T15:26:16.000000Z K 7 svn:log V 90 Document authpf's requirement for a mounted fdescfs(5). PR: docs/89635 MFC after: 1 day END K 10 svn:author V 6 cognet K 8 svn:date V 27 2006-03-28T15:30:42.000000Z K 7 svn:log V 363 Don't call audit_logout() if pwd is NULL, as audit_logout() attempts to dereference it. This will happen if we ^D at the Login: prompt without having provided a valid login before. Set pwd to NULL on bad login attempts to prevent audit_logout() from being called for a user which didn't actually log on. Reported by: Jerome Magnin jethro at docisland dot org END K 10 svn:author V 4 ceri K 8 svn:date V 27 2006-03-28T15:52:12.000000Z K 7 svn:log V 218 MFC revision 1.71: The rpc.pcnfsd server was in the base for a little over seven minutes back in 1994. Change the example entry to point at the port, as per the entries for uucpd et al. Approved by: re (kensmith) END K 10 svn:author V 6 jkoshy K 8 svn:date V 27 2006-03-28T16:20:29.000000Z K 7 svn:log V 23 Remove unused symbols. END K 10 svn:author V 3 des K 8 svn:date V 27 2006-03-28T16:41:06.000000Z K 7 svn:log V 75 Add a bunch of missing pthread functions, and move out-of-order functions. END K 10 svn:author V 3 des K 8 svn:date V 27 2006-03-28T18:26:47.000000Z K 7 svn:log V 49 Use C99's varadic macro syntax instead of gcc's. END K 10 svn:author V 3 des K 8 svn:date V 27 2006-03-28T18:28:07.000000Z K 7 svn:log V 95 Don't use dbg if it isn't defined (such as when this file is used by code outside of rtld-elf) END K 10 svn:author V 5 simon K 8 svn:date V 27 2006-03-28T18:28:33.000000Z K 7 svn:log V 261 Remove redundant ike rc.d script, since we do not have an IPsec IKE daemon in the base system and all the IKE daemons in the Ports Collection has their own rc.d script. OK'ed by: dougb Discussed on: freebsd-rc MFC after: 1 month Approved by: cperciva (mentor) END K 10 svn:author V 3 pjd K 8 svn:date V 27 2006-03-28T18:34:36.000000Z K 7 svn:log V 127 Preserve previous behaviour of kern.geom.raid3.n{64,16,4}k tunables were 0 means unlimited. Reported by: ru MFC after: 3 days END K 10 svn:author V 3 des K 8 svn:date V 27 2006-03-28T18:48:49.000000Z K 7 svn:log V 71 Add semaphore functions, and remove some dupes from the #if 0 section. END K 10 svn:author V 6 marius K 8 svn:date V 27 2006-03-28T19:19:37.000000Z K 7 svn:log V 164 Sync with the other archs and declare the memory location referenced by the address argument of the bus_space_write_multi_*() familiy as const. Prodded by: damien END K 10 svn:author V 6 marius K 8 svn:date V 27 2006-03-28T19:46:48.000000Z K 7 svn:log V 125 Add convenience macros for the full register set and use them to replace magic constants in clkbrd.c Info from: OpenSolaris END K 10 svn:author V 6 marius K 8 svn:date V 27 2006-03-28T20:25:46.000000Z K 7 svn:log V 354 - Move the check for too high HZ values from tick_init() to tick_start() as we have to call tick_init() before cninit() in order to provide the low-level console drivers with a working DELAY() which in turn means we cannot use panic() in tick_init(). - s,to high, too high, in the panic string Inspired by: kmacy's sun4v changes MFC after: 3 days END K 10 svn:author V 6 marius K 8 svn:date V 27 2006-03-28T20:28:31.000000Z K 7 svn:log V 103 - Add a comment describing why tick_init() is called before cninit(). - Fix a typo in another comment. END K 10 svn:author V 8 deischen K 8 svn:date V 27 2006-03-28T21:07:59.000000Z K 7 svn:log V 107 Use the correct type for and argument. Recent changes to namespace.h exposed this bug. Reported by: kris END K 10 svn:author V 3 jhb K 8 svn:date V 27 2006-03-28T21:20:12.000000Z K 7 svn:log V 244 Use the read_cycle_count() function recently added for cpu_ticks() for get_cyclecount() as that results in a saner value and makes schedgraph much happier on Alpha. (schedgraph doesn't handle the fact that the counters are out of sync though) END K 10 svn:author V 3 jhb K 8 svn:date V 27 2006-03-28T21:22:08.000000Z K 7 svn:log V 263 Change vn_open() to honor the MPSAFE flag in the passed in nameidata object and use that instead of testing fdidx against -1 to determine if it should release Giant if Giant was locked due to the requested file residing on a non-MPSAFE VFS. Discussed with: jeff END K 10 svn:author V 3 jhb K 8 svn:date V 27 2006-03-28T21:25:11.000000Z K 7 svn:log V 294 - Conditionally acquire Giant in mdstart_vnode(), mdcreate_vnode(), and mddestroy() only if the file is from a non-MPSAFE VFS. - No longer unconditionally hold Giant in the md kthread for vnode-backed kthreads. - Improve the handling of the thread exit race when destroying an md device. END K 10 svn:author V 3 jhb K 8 svn:date V 27 2006-03-28T21:26:59.000000Z K 7 svn:log V 136 Conditionalize locking of Giant for VFS in acct(2). We already conditionally acquired Giant in the other parts of the accounting code. END K 10 svn:author V 3 jhb K 8 svn:date V 27 2006-03-28T21:30:22.000000Z K 7 svn:log V 228 - Conditionalize Giant around VFS operations for ALQ, ktrace, and generating a coredump as the result of a signal. - Fix a bug where we could leak a Giant lock if vn_start_write() failed in coredump(). Reported by: jmg (2) END K 10 svn:author V 3 des K 8 svn:date V 27 2006-03-28T21:46:55.000000Z K 7 svn:log V 24 Fix prototype mismatch. END K 10 svn:author V 3 des K 8 svn:date V 27 2006-03-28T21:50:12.000000Z K 7 svn:log V 67 Fix prototype mismatch and use of un-namespaced pthread functions. END K 10 svn:author V 6 jasone K 8 svn:date V 27 2006-03-28T22:16:04.000000Z K 7 svn:log V 51 Add malloc_usable_size(3). Discussed with: arch@ END K 10 svn:author V 6 scottl K 8 svn:date V 27 2006-03-28T23:59:07.000000Z K 7 svn:log V 231 Fix 64-bit DMA. The problem was an incorrect flag check. Thanks to Paul Saab for helping to track this down. Fix a error with 32bit DMA size calculation that seemed to be harmless. Add a few micro-optimizations while I'm here. END K 10 svn:author V 7 cvs2svn K 8 svn:date V 27 2006-03-28T23:59:08.000000Z K 7 svn:log V 68 This commit was manufactured by cvs2svn to create branch 'RELENG_6'. END K 10 svn:author V 6 marius K 8 svn:date V 27 2006-03-29T00:08:48.000000Z K 7 svn:log V 211 Add convenience macros for the bits in ASI_ESTATE_ERROR_EN_REG (used for ECC handling) and the additional uses of the ASIs 0x77 and 0x7f as well as their bits (used for a CPU bug workaround). MFC after: 3 days END K 10 svn:author V 6 marius K 8 svn:date V 27 2006-03-29T00:14:08.000000Z K 7 svn:log V 1770 - We only lock the local per-CPU page in the local dTLB, so accessing the foreign per-CPU pages in cpu_ipi_send() in order to get the module IDs of the other CPUs can cause a page fault. If this happens when doing a TLB shootdown while dealing with another page fault this causes a panic due to the recursive page fault. As I don't spot other code that assumes or requires that accessing foreign per-CPU pages must not page fault solve this by adding a statically allocated (and therefore locked in the kernel pages) array which establishes a FreeBSD CPU ID -> module ID relation and use that in cpu_ipi_selected() (instead of statically allocating the per-CPU pages which would just waste memory on say a dual CPU machine as sun4u theoretically supports up to 128 CPUs or wasting dTLB slots for the foreign per-CPU pages). [1] - Fix a potential race in cpu_ipi_send(); as we don't serialize the access to cpu_ipi_selected() between MI and MD use (only MI-MI and MD-MD) we might catch the NACK bit caused by sending another IPI. Solve this by checking the NACK bit in the contents of the interrupt dispatch status reg read while interrupts were still turned off instead of reading that reg anew after interrupts were turned on again. This is also what the CPU docs suggest to do. - Add a workaround for the SpitFire erratum #54 bug (affecting interrupt dispatch). While public info regarding what this CPU bug actually causes is not available testing shows that with the workaround in place it's less likely to get a "couldn't send ipi" panic, it doesn't solve these panics entirely though. [2] Reported by: kris [1] Some clue from: kmacy [1] Info from: Linux, OpenSolaris [2] Additional testing by: kris MFC after: 3 days END K 10 svn:author V 3 ume K 8 svn:date V 27 2006-03-29T03:38:58.000000Z K 7 svn:log V 246 MFC: - When res_send() fails, we should reserve an error code. - When res_nquerydomain() returns SERVFAIL, we should try next domain. src/lib/libc/net/getaddrinfo.c: 1.75, 1.76 src/lib/libc/resolv/res_query.c: 1.3 Approved by: re (hrs) END K 10 svn:author V 8 deischen K 8 svn:date V 27 2006-03-29T04:20:53.000000Z K 7 svn:log V 91 Account for recent changes in namespace.h. Use _pthread_create instead of pthread_create. END K 10 svn:author V 3 des K 8 svn:date V 27 2006-03-29T05:38:19.000000Z K 7 svn:log V 61 Bring libpthread up to WARNS level 2. Reviewed by: deischen END K 10 svn:author V 3 njl K 8 svn:date V 27 2006-03-29T06:30:47.000000Z K 7 svn:log V 295 Add reset register support. This is the only method to reboot some new systems (blade servers). On most systems, this is implemented as an IO write to the SMI port and the BIOS generates the actual reset. PR: kern/94939 Submitted by: dodell@ixsystems.com Reviewed by: jhb MFC after: 3 weeks END K 10 svn:author V 3 njl K 8 svn:date V 27 2006-03-29T06:41:56.000000Z K 7 svn:log V 754 Add a blacklist for bad IO ports that AML should never touch. It seems some systems were designed so that AML writes to various resources shared with OS drivers, including the RTC, PIC, PCI, etc. These writes could collide with writes by the OS and should never be performed. For now, we print a message if such an access occurs, but do not block it. To block the access, the tunable "debug.acpi.block_bad_io" can be set to 1. In the future, we will flip the switch and this will become the default. Information about this problem was found in Microsoft KB 283649. They block IO accesses if the BIOS indicates via _OSI that it is Windows 2001 or higher. They always block accesses to the PIC, cascaded PIC, and ELCRs, no matter how old the BIOS. END K 10 svn:author V 8 gshapiro K 8 svn:date V 27 2006-03-29T07:34:35.000000Z K 7 svn:log V 49 MFC: sendmail 8.13.6 Approved by: re (kensmith) END K 10 svn:author V 8 gshapiro K 8 svn:date V 27 2006-03-29T07:34:59.000000Z K 7 svn:log V 73 MFC: Add new libsm file from sendmail 8.13.6 Approved by: re (kensmith) END K 10 svn:author V 6 scottl K 8 svn:date V 27 2006-03-29T07:35:39.000000Z K 7 svn:log V 30 Add a manual page for mfi(4). END K 10 svn:author V 8 gshapiro K 8 svn:date V 27 2006-03-29T07:40:50.000000Z K 7 svn:log V 49 MFC: sendmail 8.13.6 Approved by: re (kensmith) END K 10 svn:author V 8 gshapiro K 8 svn:date V 27 2006-03-29T07:41:16.000000Z K 7 svn:log V 73 MFC: Add new libsm file from sendmail 8.13.6 Approved by: re (kensmith) END K 10 svn:author V 8 gshapiro K 8 svn:date V 27 2006-03-29T07:43:06.000000Z K 7 svn:log V 21 MFC: sendmail 8.13.6 END K 10 svn:author V 8 gshapiro K 8 svn:date V 27 2006-03-29T07:43:23.000000Z K 7 svn:log V 45 MFC: Add new libsm file from sendmail 8.13.6 END K 10 svn:author V 8 gshapiro K 8 svn:date V 27 2006-03-29T07:48:45.000000Z K 7 svn:log V 50 Add sendmail 8.13.4 -> 8.13.6 release note entry. END K 10 svn:author V 8 gshapiro K 8 svn:date V 27 2006-03-29T07:50:58.000000Z K 7 svn:log V 14 Spaces to tab END K 10 svn:author V 8 gshapiro K 8 svn:date V 27 2006-03-29T07:56:10.000000Z K 7 svn:log V 83 MFC: Add sendmail 8.13.4 -> 8.13.6 release note entry. Approved by: re (kensmith) END K 10 svn:author V 7 cvs2svn K 8 svn:date V 27 2006-03-29T07:56:11.000000Z K 7 svn:log V 70 This commit was manufactured by cvs2svn to create branch 'RELENG_6_1'. END K 10 svn:author V 8 gshapiro K 8 svn:date V 27 2006-03-29T07:57:00.000000Z K 7 svn:log V 89 MFC: Update sendmail 8.13.4 -> 8.13.6 in release note entry. Approved by: re (kensmith) END K 10 svn:author V 8 gshapiro K 8 svn:date V 27 2006-03-29T07:58:06.000000Z K 7 svn:log V 61 MFC: Update sendmail 8.13.4 -> 8.13.6 in release note entry. END K 10 svn:author V 6 scottl K 8 svn:date V 27 2006-03-29T09:57:22.000000Z K 7 svn:log V 37 Hook the MFI driver up to the build. END K 10 svn:author V 6 scottl K 8 svn:date V 27 2006-03-29T10:02:26.000000Z K 7 svn:log V 31 Teach sysinstall about mfi(4). END K 10 svn:author V 3 des K 8 svn:date V 27 2006-03-29T12:29:01.000000Z K 7 svn:log V 57 *thwack*! all the world's not i386. Pointy hat to: des END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2006-03-29T12:42:43.000000Z K 7 svn:log V 529 Merge ip_ip.c:1.43,1.44 from HEAD to RELENG_6: When the kernel is compiled with options IPXIP, run the network stack with Giant, as there is current unsafety in the IPX tunneled over IP code. There have been no reports of trouble, but there probably would be if anyone were running this code at high speed on SMP systems. Include kernel.h to get NET_NEEDS_GIANT() definition, which for some reason compiled fine here. I may be running with other include file changes locally. Approved by: re (kensmith) END K 10 svn:author V 8 deischen K 8 svn:date V 27 2006-03-29T14:08:45.000000Z K 7 svn:log V 45 Add symbol versioning. Reviewed by: davidxu END K 10 svn:author V 3 cel K 8 svn:date V 27 2006-03-29T17:48:10.000000Z K 7 svn:log V 534 Fix a bug in NFSv3 READDIRPLUS reply processing The client's READDIRPLUS logic skips the attributes and filehandle of the ".." entry. If the server doesn't send attributes but does send a filehandle for "..", the client's logic doesn't account for the extra "value follows" field that indicates whether the filehandle is present, causing the remaining entries in the reply to be ignored. This is an MFC of 1.264 in the CURRENT branch. Sponsored by: Network Appliance, Inc. Reviewed by: rick, mohans Approved by: re, silby END K 10 svn:author V 3 cel K 8 svn:date V 27 2006-03-29T18:11:32.000000Z K 7 svn:log V 801 Fix a bug in NFSv3 READDIRPLUS reply processing The client's READDIRPLUS logic skips the attributes and filehandle of the ".." entry. If the server doesn't send attributes but does send a filehandle for "..", the client's logic doesn't account for the extra "value Fix a bug in NFSv3 READDIRPLUS reply processing The client's READDIRPLUS logic skips the attributes and filehandle of the ".." entry. If the server doesn't send attributes but does send a filehandle for "..", the client's logic doesn't account for the extra "value follows" field that indicates whether the filehandle is present, causing the remaining entries in the reply to be ignored. This is an MFC of 1.264 in the CURRENT branch. Sponsored by: Network Appliance, Inc. Reviewed by: rick, mohans Approved by: re, silby END K 10 svn:author V 7 cvs2svn K 8 svn:date V 27 2006-03-29T18:11:33.000000Z K 7 svn:log V 70 This commit was manufactured by cvs2svn to create branch 'RELENG_6_1'. END K 10 svn:author V 3 jmg K 8 svn:date V 27 2006-03-29T18:15:30.000000Z K 7 svn:log V 296 hold the list lock over the f_event and KNOTE_ACTIVATE calls... This closes a race where data could come in before we clear the INFLUX flag, and get skipped over by knote (and hence never be activated, though it should of been)... Found by: glebius & co. Reviewed by: glebius MFC after: 3 days END K 10 svn:author V 3 jhb K 8 svn:date V 27 2006-03-29T18:17:03.000000Z K 7 svn:log V 184 Move the PC_TO_I() and KCOUNT() macros so they aren't GUPROF specific since they operate on fields of struct gmonparam which is not GUPROF specific. Approved by: bde Reported by: alc END K 10 svn:author V 3 njl K 8 svn:date V 27 2006-03-29T18:47:59.000000Z K 7 svn:log V 128 Fix printf arg on 64-bit arch by casting to an int. The IO port is never more than a couple digits anyway. Pointy hat to: njl END K 10 svn:author V 8 brueffer K 8 svn:date V 27 2006-03-29T20:53:42.000000Z K 7 svn:log V 98 Mention that amr(4) supports older MegaRAID hardware and clean up the last vestiges of example.4. END K 10 svn:author V 8 brueffer K 8 svn:date V 27 2006-03-29T21:02:35.000000Z K 7 svn:log V 63 Mention that MegaRAID SAS controllers are supported by mfi(4). END K 10 svn:author V 3 suz K 8 svn:date V 27 2006-03-29T21:05:11.000000Z K 7 svn:log V 113 MFC Rev 1.64 fixed a memory leak when net.inet6.icmp6.nd6_maxqueuelen is greater than 1 Approved by: re(hrs) END K 10 svn:author V 3 suz K 8 svn:date V 27 2006-03-29T21:06:50.000000Z K 7 svn:log V 66 MFC Rev 1.15 fixed a potential memory leak Approved by: re(hrs) END K 10 svn:author V 8 brueffer K 8 svn:date V 27 2006-03-29T21:10:45.000000Z K 7 svn:log V 40 Autogenerate hardware notes for mfi(4). END K 10 svn:author V 3 jhb K 8 svn:date V 27 2006-03-29T23:24:55.000000Z K 7 svn:log V 448 Always explicitly panic in propogate_priority() if we try to propogate a lock's priority to a sleeping thread. When we panic, dump a stack trace of the thread that is asleep if DDB is compiled into the kernel just before calling panic(). This is much more informative and useful for debugging than the current behavior of getting a page fault and not having an easy way of determining which thread caused the original problem. MFC after: 1 week END K 10 svn:author V 3 jmg K 8 svn:date V 27 2006-03-30T02:27:25.000000Z K 7 svn:log V 316 document the tty files that uart(4) provides like sio(4) and pty(4) both do.. This copies only part of the FILES section from sio(4).... We might want to make tty(4) document the files provided, and have each of these document the characters that it uses... Pointed out by: Yasholomew Yashinski MFC after: 3 days END K 10 svn:author V 6 marcel K 8 svn:date V 27 2006-03-30T03:26:52.000000Z K 7 svn:log V 32 Don't open if we're going away. END K 10 svn:author V 3 imp K 8 svn:date V 27 2006-03-30T04:12:28.000000Z K 7 svn:log V 84 Add a mask of valid socket events While I'm hear, fix define to be define. END K 10 svn:author V 3 brd K 8 svn:date V 27 2006-03-30T04:13:19.000000Z K 7 svn:log V 45 MFC 1.39 Fix a typo Approved by: re@, ceri@ END K 10 svn:author V 3 brd K 8 svn:date V 27 2006-03-30T04:15:40.000000Z K 7 svn:log V 46 MFC 1.39 Fix a typo. Approved by: re@, ceri@ END K 10 svn:author V 3 imp K 8 svn:date V 27 2006-03-30T04:25:45.000000Z K 7 svn:log V 538 On some laptops, under very high loads, the socket event register read in the ISR doesn't read the actual socket event register, but instead reads garbage (usually 0xffffffff, but other times other things). This totally violates the PCI spec, but happens rarely enough that a workaround is in order. This adds one test when we have a real interrupt to service (which is very rare), and doesn't affect the usualy 'nothing to see here' case at all. Problem reported by many, but sam@ gave me this workaround after diagnosing the problem. END K 10 svn:author V 8 deischen K 8 svn:date V 27 2006-03-30T04:37:08.000000Z K 7 svn:log V 394 Add __collate_load_error and __collate_range_cmp to the list of FBSDprivate locale symbols. These functions are needed by libcompat. Add _cleanup to the list of stdio FBSDprivate symbols. Some third party applications use this. This will be removed and replaced by fcloseall() once libc version is bumped. Add _res to the list of resolv symbols. Found by: portbuilder runs (thanks Kris!) END K 10 svn:author V 6 marcel K 8 svn:date V 27 2006-03-30T05:29:57.000000Z K 7 svn:log V 156 In afd_describe(), don't initialize sizestring. On ia64, gcc(1) will generate code that calls memset, which we don't have in the kernel. MFC after: 3 days END K 10 svn:author V 5 ariff K 8 svn:date V 27 2006-03-30T06:17:03.000000Z K 7 svn:log V 147 Remove paranoid thread hijacking check. It cause wierd behaviour (dangling channel - process association) especially in threaded or fork()ed apps. END K 10 svn:author V 2 ps K 8 svn:date V 27 2006-03-30T07:42:32.000000Z K 7 svn:log V 123 Properly support for FreeBSD 4 32bit System V shared memory. Submitted by: peter Obtained from: Yahoo! MFC after: 3 weeks END K 10 svn:author V 2 ps K 8 svn:date V 27 2006-03-30T07:43:01.000000Z K 7 svn:log V 39 regen for 32bit System V shared memory END K 10 svn:author V 6 mlaier K 8 svn:date V 27 2006-03-30T08:14:55.000000Z K 7 svn:log V 122 MFC authpf.8 rev. 1.2 Document authpf's requirement for a mounted fdescfs(5). PR: docs/89635 Approved by: re (hrs) END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2006-03-30T08:18:27.000000Z K 7 svn:log V 124 Add IFF_NEEDSGIANT to kernel PPP support. I have no idea why this wasn't here, but it should have been. MFC after: 3 days END K 10 svn:author V 7 trhodes K 8 svn:date V 27 2006-03-30T09:04:12.000000Z K 7 svn:log V 216 Fix a bug where, for 6-byte sequences, the top 6 bits get compared to 111111 rather than the top 7 bits being compared against 1111110 causing illegal bytes fe and ff being treated the same as legal bytes fc and fd. END K 10 svn:author V 3 pjd K 8 svn:date V 27 2006-03-30T12:15:41.000000Z K 7 svn:log V 142 - 'ndisks' variable is not boolean, so compare it with a value. - Keep conditions order consistent with the comment above. MFC after: 3 days END K 10 svn:author V 2 ru K 8 svn:date V 27 2006-03-30T13:50:48.000000Z K 7 svn:log V 488 Rebuild gensnmptree(1) on 700014 systems too. While 700014 corresponds to post January 26 systems where gensnmptree(1) code was already fixed, there was a timeframe between February 14 and February 27 when usr.sbin/bsnmpd/ including gensnmptree was disconnected from build, so if you upgraded in this timeframe, you ended up with the 700014 system but still with a buggy gensnmptree binary. This also means not being able to buildworld now. Reported by: jhb Attention: harti, keramida END K 10 svn:author V 2 le K 8 svn:date V 27 2006-03-30T14:01:25.000000Z K 7 svn:log V 78 Protect from creating striped and RAID5 plexes with unequally sized subdisks. END K 10 svn:author V 3 pjd K 8 svn:date V 27 2006-03-30T14:41:13.000000Z K 7 svn:log V 497 md_hash field in g_eli_metadata structure is not 4 byte aligned, which case panic on sparc64. The problem is in MD5(9) implementation. The Encode() function takes 'unsigned char *output' as its first argument, which is then assigned to 'u_int32_t *op'. If the 'output' argument is not 4 byte aligned (and in geli(8) case it is not), sparc64 machine will panic. I don't know how to fix MD5(9) in a clean way, so I'm implementing a work-around in geli(8). Reported by: brueffer MFC after: 3 days END K 10 svn:author V 3 hrs K 8 svn:date V 27 2006-03-30T15:31:36.000000Z K 7 svn:log V 117 Document 06:13.sendmail, 06:12.opie, 06:11.ipsec, and 06:10.nfs. Submitted by: delphij Approved by: re (implicitly) END K 10 svn:author V 7 cvs2svn K 8 svn:date V 27 2006-03-30T15:31:37.000000Z K 7 svn:log V 70 This commit was manufactured by cvs2svn to create branch 'RELENG_6_1'. END K 10 svn:author V 3 jhb K 8 svn:date V 27 2006-03-30T15:48:06.000000Z K 7 svn:log V 11 Style fix. END K 10 svn:author V 4 csjp K 8 svn:date V 27 2006-03-30T16:46:56.000000Z K 7 svn:log V 354 MFC 1.144 tty_pty.c Allow root to open jail PTYs from the host environment. This un-breaks using utilities like watch(8) (or other programs which use snp(4)) to monitor behavior within prisons from the host environment. This regression was introduced when we changed the ioctl(SNPSTTY) to use a file descriptor instead of a dev_t Approved by: re (hrs) END K 10 svn:author V 6 marcel K 8 svn:date V 27 2006-03-30T17:24:42.000000Z K 7 svn:log V 179 o Don't make the SER_INT_* defines visible to userland. They are related to internals, not user-visible state. o Add a typedef for serdev_intr_t and protect it with !LOCORE. END K 10 svn:author V 6 marcel K 8 svn:date V 27 2006-03-30T18:33:22.000000Z K 7 svn:log V 417 Add scc(4), a driver for serial communications controllers. These controllers typically have multiple channels and support a number of serial communications protocols. The scc(4) driver is itself an umbrella driver that delegates the control over each channel and mode to a subordinate driver (like uart(4)). The scc(4) driver supports the Siemens SAB 82532 and the Zilog Z8530 and replaces puc(4) for these devices. END K 10 svn:author V 6 marcel K 8 svn:date V 27 2006-03-30T18:37:03.000000Z K 7 svn:log V 24 Add support for scc(4). END K 10 svn:author V 6 marcel K 8 svn:date V 27 2006-03-30T18:39:24.000000Z K 7 svn:log V 187 o Add scc(4) to the build. o Add the scc(4) manpage to the build. o Update the uart(4) manpage to account for scc(4). o Update the uart(4) module build to include support for scc(4). END K 10 svn:author V 6 marcel K 8 svn:date V 27 2006-03-30T18:40:25.000000Z K 7 svn:log V 12 Add scc(4). END K 10 svn:author V 6 marcel K 8 svn:date V 27 2006-03-30T18:43:03.000000Z K 7 svn:log V 185 When we attach to either a SAB82532 or a Z8530, print a notice saying that scc(4) should be configured into the kernel. This helps people to migrate away from puc(4) for these devices. END K 10 svn:author V 3 pjd K 8 svn:date V 27 2006-03-30T18:45:50.000000Z K 7 svn:log V 142 Fix a panic on sparc64 related to inproper aligment - we cannot assume, that 'unsigned char *' argument is 4 byte aligned. MFC after: 3 days END K 10 svn:author V 3 pjd K 8 svn:date V 27 2006-03-30T18:50:00.000000Z K 7 svn:log V 43 Revert previous change, as I fixed MD5(9). END K 10 svn:author V 2 bz K 8 svn:date V 27 2006-03-30T18:57:04.000000Z K 7 svn:log V 680 Fix more stack corruptions on amd64. Vararg functions have a different calling convention than regular functions on amd64. Casting a varag function to a regular one to match the function pointer declaration will hide the varargs from the caller and we will end up with an incorrectly setup stack. Entirely remove the varargs from these functions and change the functions to match the declaration of the function pointers. Remove the now unnecessary casts. Also change static struct ipprotosw[] to two independent protosw/ip6protosw definitions to remove an unnecessary cast. PR: amd64/95008 Submitted and tested by: Mats Palmgren Reviewed by: rwatson MFC after: 3 days END K 10 svn:author V 6 scottl K 8 svn:date V 27 2006-03-30T19:22:45.000000Z K 7 svn:log V 72 Revert to using acpi_max_threads instead of the hardcoded value of '3'. END K 10 svn:author V 3 ume K 8 svn:date V 27 2006-03-30T20:15:53.000000Z K 7 svn:log V 303 Expose res_update and friends again. At least, ports/mail/spamilter uses them. Now, we have res_nupdate and res_nmkupdate as well, but they are still based on our old resolver for binary backward compatibility. So, they don't provide new features such as TSIG support. Reported by: pointyhat via kris END K 10 svn:author V 7 cvs2svn K 8 svn:date V 27 2006-03-30T20:15:54.000000Z K 7 svn:log V 63 This commit was manufactured by cvs2svn to create branch 'ISC'. END K 10 svn:author V 6 jasone K 8 svn:date V 27 2006-03-30T20:25:52.000000Z K 7 svn:log V 498 Optimize runtime performance, primary using the following techniques: * Avoid choosing an arena until it's certain that an arena is needed for allocation. * Convert division/multiplication to bitshifting where possible. * Avoid accessing TLS variables in single-threaded code. * Reduce the amount of pointer dereferencing. * Move lock acquisition in critical paths to only protect the the code that requires synchronization, and completely remove locking where possible. END K 10 svn:author V 4 csjp K 8 svn:date V 27 2006-03-30T21:04:52.000000Z K 7 svn:log V 477 Currently, if writing out a log entry fails, we unlink that log entry from our internal list of logfiles. So if writev(2) fails for potentially transient errors like ENOSPC, syslogd requires a restart, even if the filesystem has purged. This change allows syslogd to ignore ENOSPC space errors, so that when the filesystem is cleaned up, syslogd will automatically start logging again without requiring the reset. This makes syslogd(8) a bit more reliable. MFC after: 1 week END K 10 svn:author V 6 marcel K 8 svn:date V 27 2006-03-30T21:39:36.000000Z K 7 svn:log V 83 Include the sbus attachment of scc(1) when either fhc(4) or sbus(4) is configured. END K 10 svn:author V 3 sam K 8 svn:date V 27 2006-03-30T22:59:12.000000Z K 7 svn:log V 83 MFC: 1.36: honor tunable when starting up task q threads Approved by: re (scottl) END K 10 svn:author V 3 sam K 8 svn:date V 27 2006-03-30T23:06:59.000000Z K 7 svn:log V 253 fixup error handling in taskqueue_start_threads: check for kthread_create failing, print a message when we fail for some reason as most callers do not check the return value (e.g. 'cuz they're called from SYSINIT) Reviewed by: scottl MFC after: 1 week END K 10 svn:author V 3 jmg K 8 svn:date V 27 2006-03-31T00:37:42.000000Z K 7 svn:log V 178 remove these vestiges of gdbserver.. It hasn't built in a long time, and now really belongs in gdb, not binutils.. Plus, these don't resemble what the new gdbserver looks like. END K 10 svn:author V 6 marcel K 8 svn:date V 27 2006-03-31T01:39:50.000000Z K 7 svn:log V 47 Add a dummy implementation of bus_space_map(). END K 10 svn:author V 6 marcel K 8 svn:date V 27 2006-03-31T01:42:55.000000Z K 7 svn:log V 38 Allow uart(4) to be built on PowerPC. END K 10 svn:author V 6 marcel K 8 svn:date V 27 2006-03-31T01:50:23.000000Z K 7 svn:log V 26 Build uart(4) on PowerPC. END K 10 svn:author V 4 jeff K 8 svn:date V 27 2006-03-31T02:56:30.000000Z K 7 svn:log V 370 - Add the B_NEEDSGIANT flag which is only set if the vnode that owns a buf requires Giant. It is set in bgetvp and cleared in brelvp. - Create QUEUE_DIRTY_GIANT for dirty buffers that require giant. - In the buf daemon, only grab giant when processing QUEUE_DIRTY_GIANT and only if we think there are buffers in that queue. Sponsored by: Isilon Systems, Inc. END K 10 svn:author V 4 jeff K 8 svn:date V 27 2006-03-31T02:59:23.000000Z K 7 svn:log V 387 - LK_RETRY means nothing when passed to VOP_LOCK. Call vn_lock instead. - Move the vn_lock of the dvp until after we've unbusied the filesystem to avoid a LOR with the mount point lock. - In the v_mountedhere while loop we acquire a new instance of giant each time through without releasing the first. This would cause us to leak Giant. Sponsored by: Isilon Systems, Inc. END K 10 svn:author V 4 jeff K 8 svn:date V 27 2006-03-31T03:49:16.000000Z K 7 svn:log V 234 - Define mnt_startzero and mnt_endzero as a range that excludes mnt_mtx and mnt_lock so that the mountpoint can be explicitly zeroed on creation. Discussed with: tegge Tested by: kris Sponsored by: Isilon Systems, Inc. END K 10 svn:author V 4 jeff K 8 svn:date V 27 2006-03-31T03:49:51.000000Z K 7 svn:log V 588 - Allocate mounts from a uma zone that uses UMA_ZONE_NOFREE to prevent mount memory from being reclaimed. This resolves a number of race conditions described in vfs_default.c and introduced with the VFS_LOCK_GIANT macros. - Let the mtx and lock remain valid after the mount structure has been freed by using init and fini calls. Technically fini will never be called but is included for completeness. - Consistently use lockmgr directly rather than lockmgr to lock and vfs_unbusy to unlock. Discussed with: tegge Tested by: kris Sponsored by: Isilon Systems, Inc. END K 10 svn:author V 4 jeff K 8 svn:date V 27 2006-03-31T03:52:24.000000Z K 7 svn:log V 218 - GETWRITEMOUNT now returns a referenced mountpoint to prevent its identity from changing. This is possible now that mounts are not freed. Discussed with: tegge Tested by: kris Sponsored by: Isilon Systems, Inc. END K 10 svn:author V 4 jeff K 8 svn:date V 27 2006-03-31T03:53:25.000000Z K 7 svn:log V 306 - Hold a reference from the time vfs_busy starts until vfs_unbusy is called. - vfs_getvfs has to return a reference to prevent the returned mountpoint from changing identities. - Release references acquired via vfs_getvfs. Discussed with: tegge Tested by: kris Sponsored by: Isilon Systems, Inc. END K 10 svn:author V 4 jeff K 8 svn:date V 27 2006-03-31T03:54:20.000000Z K 7 svn:log V 148 - Release the references acquired by VOP_GETWRITEMOUNT and vfs_getvfs(). Discussed with: tegge Tested by: kris Sponsored by: Isilon Systems, Inc. END K 10 svn:author V 4 kris K 8 svn:date V 27 2006-03-31T07:13:09.000000Z K 7 svn:log V 715 MFC r1.137: Fix a bug in the NFS/TCP retransmission path. The bug was that earlier, if a request was retransmitted, we would do subsequent retransmits every 10 msecs. This can cause data corruption under moderate loads by reordering operations as seen by the client NFS attribute cache, and on the server side when the retransmission occurs after the original request has left the duplicate cache, since the operation will be committed for a second time. Further work on retransmission handling is needed (e.g. they are still being done sent too often since they are scaled by HZ, and the size of the dup cache is too small and easily overwhelmed on busy servers). Submitted by: mohans Approved by: re (mux) END K 10 svn:author V 4 kris K 8 svn:date V 27 2006-03-31T07:39:24.000000Z K 7 svn:log V 426 MFC r1.89: - LK_RETRY means nothing when passed to VOP_LOCK. Call vn_lock instead. - Move the vn_lock of the dvp until after we've unbusied the filesystem to avoid a LOR with the mount point lock. - In the v_mountedhere while loop we acquire a new instance of giant each time through without releasing the first. This would cause us to leak Giant. Sponsored by: Isilon Systems, Inc. Approved by: re (scottl) END K 10 svn:author V 7 cvs2svn K 8 svn:date V 27 2006-03-31T07:39:25.000000Z K 7 svn:log V 70 This commit was manufactured by cvs2svn to create branch 'RELENG_6_1'. END K 10 svn:author V 3 sos K 8 svn:date V 27 2006-03-31T08:09:05.000000Z K 7 svn:log V 84 Make the ATAPI sense data accessible when using the ioctl interface MFC candidate. END K 10 svn:author V 5 ariff K 8 svn:date V 27 2006-03-31T10:27:47.000000Z K 7 svn:log V 288 - Increase snddev refcount earlier while accessing through sysctl interface to avoid possible device unregister race (impossible to reproduce, yet possible). - Extra sanity check to ensure proper parent channel is being selected. - Reset parent channel once all of its children gone. END K 10 svn:author V 5 ariff K 8 svn:date V 27 2006-03-31T10:36:36.000000Z K 7 svn:log V 1580 MEGA Fixes / Cleanup -------------------- - Seal the fate of long standing memory leak (4 years, 7 months) during pcm_unregister(). While destroying cdevs, scan / detect possible children and free its SLIST placeholder properly. - Optimize channel allocation / numbering even further. Do brute cyclic checking only if the channel numbering screwed. - Mega vchan create/destroy cleanup: o Implement pcm_setvchans() so everybody can use it freely instead of implementing their own, be it through sysctl or channel auto allocation. o Increase vchan creation/destruction resiliency: + it's possible to increase/decrease total vchans even during busy playback/recording. Busy channel will be left alone, untouched. Abusive test sample: # play whatever... # while : ; do sysctl hw.snd.pcm0.vchans=1 sysctl hw.snd.pcm0.vchans=10 sysctl hw.snd.pcm0.vchans=100 sysctl hw.snd.pcm0.vchans=200 done # Play something else, leave above loop running frantically. + Seal another 4 years old bug where it is possible to destroy (virtual) channel even when its cdevs being referenced by other process. The "First Come First Served" nature of dsp_clone() is the main culprit of this issue, and usually manifest itself as dangling channel <-> process association. Ensure that all of its cdevs are free from being referenced before destroying it (through ORPHAN_CDEVT() macross). All these fixes (including previous fixes) will be MFCed, later. END K 10 svn:author V 6 julian K 8 svn:date V 27 2006-03-31T12:40:09.000000Z K 7 svn:log V 132 I can't believe that no-one noticed that I broke ipfw table del for over a month! put {} around if clause with multiple statements END K 10 svn:author V 7 glebius K 8 svn:date V 27 2006-03-31T12:44:51.000000Z K 7 svn:log V 68 Sync bsnmpd with HEAD. Approved by: re (scottl) Approved by: harti END K 10 svn:author V 7 glebius K 8 svn:date V 27 2006-03-31T12:47:50.000000Z K 7 svn:log V 147 MFC 1.4, 1.5, 1.6: - Do not point at bar.com. - Document how change polling interval for HC interface, counters. Approved by: re (scottl) END K 10 svn:author V 6 julian K 8 svn:date V 27 2006-03-31T12:54:17.000000Z K 7 svn:log V 113 Amazing.. two screwups in one commit. I'm piling on thise pointy hats on top of each other. At least they nest.. END K 10 svn:author V 2 ru K 8 svn:date V 27 2006-03-31T14:10:35.000000Z K 7 svn:log V 30 Sort bootstrap-tools entries. END K 10 svn:author V 6 marcel K 8 svn:date V 27 2006-03-31T17:39:49.000000Z K 7 svn:log V 118 Add a DRIVER_MODULE declaration for fhc(4) as this attachement is also used for the FHC bus. Pointed out by: marius@ END K 10 svn:author V 4 emax K 8 svn:date V 27 2006-03-31T19:03:37.000000Z K 7 svn:log V 47 Add kbdmux(4) to GENERIC Requested by: scottl END K 10 svn:author V 6 scottl K 8 svn:date V 27 2006-03-31T21:36:17.000000Z K 7 svn:log V 119 Remove the USB keyboard hack now that KBDMUX is enabled by default. Allow it to be disabled if Safe Mode is selected. END K 10 svn:author V 6 marcel K 8 svn:date V 27 2006-03-31T21:55:53.000000Z K 7 svn:log V 76 Fix cut-n-paste braino in previous commit: s/puc/scc/g Pointy hat: marcel@ END K 10 svn:author V 4 emax K 8 svn:date V 27 2006-03-31T23:04:48.000000Z K 7 svn:log V 74 Add kbdmux(4) to GENERIC on amd64 Requested by: scottl Tested by: scottl END K 10 svn:author V 4 jeff K 8 svn:date V 27 2006-03-31T23:37:29.000000Z K 7 svn:log V 194 - Add a bogus vhold/vdrop around vgone() in devfs_revoke. Without this the vnode is never recycled. It is bogus because the reference really should be associated with the devfs dirent. END K 10 svn:author V 4 jeff K 8 svn:date V 27 2006-03-31T23:38:15.000000Z K 7 svn:log V 109 - When there are dangling vnodes at unmount print them before we panic. Sponsored by: Isilon Systems, Inc. END K 10 svn:author V 6 marius K 8 svn:date V 27 2006-03-31T23:38:29.000000Z K 7 svn:log V 334 MFC: 1.21 - Move the check for too high HZ values from tick_init() to tick_start() as we have to call tick_init() before cninit() in order to provide the low-level console drivers with a working DELAY() which in turn means we cannot use panic() in tick_init(). - s,to high, too high, in the panic string Approved by: re (mux) END K 10 svn:author V 4 jeff K 8 svn:date V 27 2006-03-31T23:39:26.000000Z K 7 svn:log V 228 - Add an assert to vgone. It is illegal to call vgone without a reference to the vnode. Without a reference the vnode will never be vdestroy'd and the memory will never be reclaimed. Sponsored by: Isilon Systems, Inc. END K 10 svn:author V 6 marius K 8 svn:date V 27 2006-03-31T23:40:05.000000Z K 7 svn:log V 138 MFC: 1.128 - Add a comment describing why tick_init() is called before cninit(). - Fix a typo in another comment. Approved by: re (mux) END K 10 svn:author V 6 marius K 8 svn:date V 27 2006-03-31T23:40:42.000000Z K 7 svn:log V 226 MFC: 1.10 Add convenience macros for the bits in ASI_ESTATE_ERROR_EN_REG (used for ECC handling) and the additional uses of the ASIs 0x77 and 0x7f as well as their bits (used for a CPU bug workaround). Approved by: re (mux) END K 10 svn:author V 6 marius K 8 svn:date V 27 2006-03-31T23:48:12.000000Z K 7 svn:log V 1457 MFC: 1.32 - We only lock the local per-CPU page in the local dTLB, so accessing the foreign per-CPU pages in cpu_ipi_send() in order to get the module IDs of the other CPUs can cause a page fault. If this happens when doing a TLB shootdown while dealing with another page fault this causes a panic due to the recursive page fault. As I don't spot other code that assumes or requires that accessing foreign per-CPU pages must not page fault solve this by adding a statically allocated (and therefore locked as part of the kernel pages) array which establishes a FreeBSD CPU ID -> module ID relation and use that in cpu_ipi_selected(). - Fix a potential race in cpu_ipi_send(); as we don't serialize the access to cpu_ipi_selected() between MI and MD use (only MI-MI and MD-MD) we might catch the NACK bit caused by sending another IPI. Solve this by checking the NACK bit in the contents of the interrupt dispatch status reg read while interrupts were still turned off instead of reading that reg anew after interrupts were turned on again. This is also what the CPU docs suggest to do. - Add a workaround for the SpitFire erratum #54 bug (affecting interrupt dispatch). While public info regarding what this CPU bug actually causes is not available testing shows that with the workaround in place it's less likely to get a "couldn't send ipi" panic, it doesn't solve these panics entirely though. Approved by: re (mux) END K 10 svn:author V 4 jeff K 8 svn:date V 27 2006-04-01T01:15:23.000000Z K 7 svn:log V 307 - Busy the filesystem in nfs_statfs to prevent us from creating a new vnode after vflush() has succeeded. This would cause a dangling vnode panic at unmount time otherwise. Other filesystems may have this problem via their VFS_VGET() routines. Found by: kris Sponsored by: Isilon Systems, Inc. END K 10 svn:author V 8 deischen K 8 svn:date V 27 2006-04-01T02:56:09.000000Z K 7 svn:log V 354 Add __gdtoa to the list of FreeBSD private symbols. Unfortunately, this is used by some 3rd party applications when {e,f,g}cvt() are not found. POSIX defines the xcvt() funtions but says they are deprecated in favor or sprintf(). We'll import these functions from OpenBSD and remove __gdtoa() from the exported interfaces when libc version is bumped. END K 10 svn:author V 6 marcel K 8 svn:date V 27 2006-04-01T04:51:56.000000Z K 7 svn:log V 387 Add a MacIO bus attachment. The Z8530 as present in the Mac needs a different register shift and is fed by a different clock than we use for UltraSPARC hardware. To deal with this, the regshft and rclk fields in the class structure are removed and bus frontends now pass the right regshft and rclk to the probe function where they're put in the BAS and passed in to subordinate drivers. END K 10 svn:author V 6 marcel K 8 svn:date V 27 2006-04-01T04:53:08.000000Z K 7 svn:log V 37 Add the MacIO attachment for scc(4). END K 10 svn:author V 6 marcel K 8 svn:date V 27 2006-04-01T04:54:47.000000Z K 7 svn:log V 135 Build the scc(4) module with EBus and SBus attachments for sparc64 only and build the scc(4) module with MacIO attachment for powerpc. END K 10 svn:author V 6 mjacob K 8 svn:date V 27 2006-04-01T07:12:18.000000Z K 7 svn:log V 1117 Fix some of the previus changes 'better'. There's something strange going on with async events. They seem to be be treated differently for different Fusion implementations. Some will really tell you when it's okay to free the request that started them. Some won't. Very disconcerting. This is particularily bad when the chip (FC in this case) tells you in the reply that it's not a continuation reply, which means you can free the request that its associated with. However, if you do that, I've found that additional async event replies come back for that message context after you freed it. Very Bad Things Happen. Put in a reply register debounce. Warn about out of range context indices. Use more MPILIB defines where possible. Replace bzero with memset. Add tons more KASSERTS. Do a *lot* more request free list auditting and serial number usages. Get rid of the warning about the short IOC Facts Reply. Go back to 16 bits of context index. Do a lot more target state auditting as well. Make a tag out of not only the ioindex but the request index as well and worry less about keeping a full serial number. END K 10 svn:author V 8 brueffer K 8 svn:date V 27 2006-04-01T09:55:37.000000Z K 7 svn:log V 36 Mention the module in the synopsis. END K 10 svn:author V 8 brueffer K 8 svn:date V 27 2006-04-01T10:10:36.000000Z K 7 svn:log V 113 Add a standard boilerplate to the SYNOPSIS section that mentions how to load a kernel module. MFC after: 3 days END K 10 svn:author V 8 brueffer K 8 svn:date V 27 2006-04-01T10:37:35.000000Z K 7 svn:log V 187 Convert the SYNOPSIS section to look like the ones used in other driver manpages. Don't mention the include file, it's not important for the operation of this driver. MFC after: 3 days END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2006-04-01T10:43:02.000000Z K 7 svn:log V 262 Add a somewhat sizable comment documenting the semantics of various kernel socket calls relating to the creation and destruction of sockets. This will eventually form the foundation of socket(9), but is currently in too much flux to do so. MFC after: 3 months END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2006-04-01T10:45:52.000000Z K 7 svn:log V 256 Assert so->so_pcb is NULL in sodealloc() -- the protocol state should not be present at this point. We will eventually remove this assert because the socket layer should never look at so_pcb, but for now it's a useful debugging tool. MFC after: 3 months END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2006-04-01T10:54:51.000000Z K 7 svn:log V 108 Add a comment describing SS_PROTOREF in detail. This will eventually be in socket(9). MFC after: 3 months END K 10 svn:author V 8 brueffer K 8 svn:date V 27 2006-04-01T10:55:00.000000Z K 7 svn:log V 101 Convert the SYNOPSIS section to look like the ones used in other driver manpages. MFC after: 3 days END K 10 svn:author V 8 brueffer K 8 svn:date V 27 2006-04-01T10:56:36.000000Z K 7 svn:log V 216 Convert the SYNOPSIS section to look like the ones used in other driver manpages, mention module support. Also add the crypto and cryptodev devices as the drivers are kind of useless without them. MFC after: 3 days END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2006-04-01T11:09:54.000000Z K 7 svn:log V 399 Mark fgetsock() and fputsock() as depcrecated: callers should rely on the file descriptor reference, rather than paying additional lock operations to acquire a socket reference from the file descriptor. This will also help to ensure that file descriptor based socket requests are not delivered to a socket after close. Most consumers have already been converted to this model. MFC after: 3 months END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2006-04-01T11:14:56.000000Z K 7 svn:log V 202 Add comment to accept1() that it should use getsock() instead of fgetsock() to avoid additional mutex operations, and also to avoid use of soref/sorele which are now not preferred. MFC after: 3 months END K 10 svn:author V 8 brueffer K 8 svn:date V 27 2006-04-01T11:21:00.000000Z K 7 svn:log V 125 Convert the SYNOPSIS section to look like the ones used in other driver manpages, mention module support. MFC after: 3 days END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2006-04-01T15:15:05.000000Z K 7 svn:log V 566 Change protocol switch pru_abort() API so that it returns void rather than an int, as an error here is not meaningful. Modify soabort() to unconditionally free the socket on the return of pru_abort(), and modify most protocols to no longer conditionally free the socket, since the caller will do this. This commit likely leaves parts of netinet and netinet6 in a situation where they may panic or leak memory, as they have not are not fully updated by this commit. This will be corrected shortly in followup commits to these components. MFC after: 3 months END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2006-04-01T15:16:14.000000Z K 7 svn:log V 439 Merge ipsec.c:1.44 from HEAD to RELENG_6: Remove manual assignment of m_pkthdr from one mbuf to another in ipsec_copypkt(), as this is already handled by the call to M_MOVE_PKTHDR(), which also knows how to correctly handle MAC m_tags. This corrects a panic when running with MAC and KAME IPSEC. PR: kern/94599 Submitted by: zhouyi zhou Reviewed by: bz, gnn Approved by: re (mux) END K 10 svn:author V 2 bz K 8 svn:date V 27 2006-04-01T15:22:44.000000Z K 7 svn:log V 785 MFC: rev. 1.3 src/sys/netipsec/xform.h, rev. 1.12 src/sys/netipsec/xform_ipip.c Fix more stack corruptions on amd64. Vararg functions have a different calling convention than regular functions on amd64. Casting a varag function to a regular one to match the function pointer declaration will hide the varargs from the caller and we will end up with an incorrectly setup stack. Entirely remove the varargs from these functions and change the functions to match the declaration of the function pointers. Remove the now unnecessary casts. Also change static struct ipprotosw[] to two independent protosw/ip6protosw definitions to remove an unnecessary cast. PR: amd64/95008 Submitted and tested by: Mats Palmgren Reviewed by: rwatson Approved by: re (mux) END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2006-04-01T15:25:01.000000Z K 7 svn:log V 211 Annotate uses of fgetsock() with indications that they should rely on their existing file descriptor references to sockets, rather than use fgetsock() to retrieve a direct socket reference. MFC after: 3 months END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2006-04-01T15:42:02.000000Z K 7 svn:log V 1049 Chance protocol switch method pru_detach() so that it returns void rather than an error. Detaches do not "fail", they other occur or the protocol flags SS_PROTOREF to take ownership of the socket. soclose() no longer looks at so_pcb to see if it's NULL, relying entirely on the protocol to decide whether it's time to free the socket or not using SS_PROTOREF. so_pcb is now entirely owned and managed by the protocol code. Likewise, no longer test so_pcb in other socket functions, such as soreceive(), which have no business digging into protocol internals. Protocol detach routines no longer try to free the socket on detach, this is performed in the socket code if the protocol permits it. In rts_detach(), no longer test for rp != NULL in detach, and likewise in other protocols that don't permit a NULL so_pcb, reduce the incidence of testing for it during detach. netinet and netinet6 are not fully updated to this change, which will be in an upcoming commit. In their current state they may leak memory or panic. MFC after: 3 months END K 10 svn:author V 3 ume K 8 svn:date V 27 2006-04-01T15:53:39.000000Z K 7 svn:log V 12 fix indent. END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2006-04-01T15:55:44.000000Z K 7 svn:log V 232 In raw and raw-derived socket types, maintain and enforce invariant that the so_pcb pointer on the socket is always non-NULL. This eliminates countless unnecessary error checks, replacing them with assertions. MFC after: 3 months END K 10 svn:author V 7 rwatson K 8 svn:date V 27 2006-04-01T16:04:42.000000Z K 7 svn:log V 619 Break out in_pcbdetach() into two functions: - in_pcbdetach(), which removes the link between an inpcb and its socket. - in_pcbfree(), which frees a detached pcb. Unlike the previous in_pcbdetach(), neither of these functions will attempt to conditionally free the socket, as they are responsible only for managing in_pcb memory. Mirror these changes into in6_pcbdetach() by breaking it into in6_pcbdetach() and in6_pcbfree(). While here, eliminate undesired checks for NULL inpcb pointers in sockets, as we will now have as an invariant that sockets will always have valid so_pcb pointers. MFC after: 3 months END