summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add a facility to dynamically adjust or unconfigure p1003_1b mib.kib2010-06-023-5/+38
| | | | | | | | | Use it to allow to tune sem_nsem_max at runtime, only when sem.ko module is present in kernel. Requested and tested by: amdmi3 Reviewed by: jhb MFC after: 3 days
* Zero struct before reading from ituqs2010-06-021-0/+1
| | | | | | PR: 140384 Found by: clang static analyzer MFC after: 3 weeks
* Recommend disabling LAPIC timer instead whole APIC for fixing C3 state.mav2010-06-021-6/+4
| | | | | PR: docs/147180 Submitted by: Tobias Rehbein
* Fix stuttering sequences and reverse rangesbrian2010-06-026-10/+140
| | | | | PR: 123635 Submitted by: Ulrich Spörlein, uqs at spoerlein dot net
* More commasdes2010-06-012-2/+2
|
* Remove unnecessary pointer type castings, shift operations and dead code.jkim2010-06-011-18/+17
|
* In the case that mmu_booke_enter_locked() is changing the attributes of aalc2010-06-011-1/+1
| | | | | | | | | mapping but not changing the physical page being mapped, the wrong flags were being inspected in order to determine whether or not to flush the instruction cache. The effect of looking at the wrong flags was that the instruction cache was never being flushed. Reviewed by: marcel
* Don't try to call cdevsw d_close() method when devfs_close() is calledjh2010-06-011-0/+7
| | | | | | | because of insmntque1() failure. Found with: stress2 Suggested and reviewed by: kib
* Adjust the manpage after r207329.attilio2010-06-011-12/+69
| | | | | | Sponsored by: Sandvine Incorporated Reviewed by: cpercival, emaste, marcel X-MFC: r207329
* Revert taskqueue(9) related commits until mdf@ is approved and canzml2010-06-012-23/+11
| | | | | | resolve issues. This reverts commits r207439, r208623, r208624
* Rewrite ar9285SetBoardValues() to match what ath9k does and fix out ofrpaulo2010-06-011-89/+42
| | | | | | bounds reads. MFC after: 3 days
* Bring in a couple of fixes from the Linux ath9k related to chip hangs.rpaulo2010-06-018-25/+53
| | | | | | | While there, try to make the register write pattern look like what's done by ath9k. MFC after: 3 days
* Missing commasdes2010-06-0111-11/+11
|
* Fix an off by one in ar9285SetPowerCalTable().rpaulo2010-06-011-1/+1
| | | | | | Found with: Coverity Prevent(tm) CID: 3979 MFC after: 3 days
* Fix resource leaks in ieee80211_ioctl_setchanlist() in case of error.rpaulo2010-06-011-2/+6
| | | | | | Found with: Coverity Prevent(tm) CID: 4115 MFC after: 3 days
* Compare the address of the array, not the array.rpaulo2010-06-011-1/+1
| | | | | | Found with: Coverity Prevent(tm) CID: 3690 MFC after: 3 days
* Don't reference null pointer in hwmp_recv_preq().rpaulo2010-06-011-0/+3
| | | | | | Found with: Coverity Prevent(tm) CID: 3912 MFC after: 3 days
* Properly initialize stack variable sr in setmlme_assoc_adhoc().rpaulo2010-06-011-0/+1
| | | | | | Found with: Coverity Prevent(tm) CID 4365 MFC after: 3 days
* Fix ZIL close when doing zfs rollback or zfs receive on a mounted dataset.mm2010-06-011-11/+41
| | | | | | | | | The fix is a partial import and merge of OpenSolaris onnv revisions 8227:f7d7be9b1f56. and 9292:e112194b5b73 Approved by: pjd, delphij (mentor) Obtained from: OpenSolaris (Bug ID 6798298) MFC after: 3 days
* In pmap_enter_locked(), don't require the vector page to be VPO_BUSY.alc2010-06-011-3/+4
|
* Merge portions of r208645 and supporting code from the i386 pmap:alc2010-06-011-13/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | When I pushed down the page queues lock into pmap_is_modified(), I created an ordering dependence: A pmap operation that clears PG_WRITEABLE and calls vm_page_dirty() must perform the call first. Otherwise, pmap_is_modified() could return FALSE without acquiring the page queues lock because the page is not (currently) writeable, and the caller to pmap_is_modified() might believe that the page's dirty field is clear because it has not seen the effect of the vm_page_dirty() call. When I pushed down the page queues lock into pmap_is_modified(), I overlooked one place where this ordering dependence is violated: pmap_enter(). In a rare situation pmap_enter() can be called to replace a dirty mapping to one page with a mapping to another page. (I say rare because replacements generally occur as a result of a copy-on-write fault, and so the old page is not dirty.) This change delays clearing PG_WRITEABLE until after vm_page_dirty() has been called. Fixing the ordering dependency also makes it easy to introduce a small optimization: When pmap_enter() used to replace a mapping to one page with a mapping to another page, it freed the pv entry for the first mapping and later called the pv entry allocator for the new mapping. Now, pmap_enter() attempts to recycle the old pv entry, saving two calls to the pv entry allocator. There is no point in setting PG_WRITEABLE on unmanaged pages, so don't.
* Fix a KASSERT() that was broken in r208665.alc2010-06-011-1/+2
| | | | Reported by: jmallett
* Allow to use 'jailed' property again.pjd2010-05-311-1/+0
| | | | | Reported by: Eugene Mitrofanov <eugene@imedia.ru> MFC after: 3 days
* Fix a bug where resilver is not started automatically on pool import or load.pjd2010-05-311-0/+6
| | | | | | | | | | | | If disk was missing on pool load or import and on next pool load or import it was present, resilver wasn't started automatically and ZFS reported all disks as ONLINE and healthy. Then, when another disk died, pool became unaccessible, because if it was 2-way mirror or RAIDZ1 two vdevs were out of sync. To fix the problem, start resilver automatically on pool load or import. Obtained from: OpenSolaris MFC after: 3 days
* Fix panic when reading label from provider with non power of 2 sector size.pjd2010-05-311-3/+4
| | | | | Reported by: James R. Van Artsdalen <james-freebsd-fs2@jrv.org> MFC after: 3 days
* g_label: fix possible NULL pointer dereferenceavg2010-05-311-4/+2
| | | | | | | | in case glabel debug level is >= 1 and gp->provider list is empty for some reason Found by: clang static analyzer MFC after: 4 days
* udf_readlink: fix malloc call with uninitialized size parameteravg2010-05-311-1/+1
| | | | | Found by: clang static analyzer MFC after: 4 days
* amdsbwd: fix nonsensical timeout calculationsavg2010-05-311-3/+3
| | | | | | | in case when sub-second interval is being programmed Found by: clang static analyzer MFC after: 4 days
* zfs boot: fix error handling in zfs_readdiravg2010-05-311-0/+2
| | | | | Found by: clang static analyzer MFC after: 4 days
* Eliminate a stale comment.alc2010-05-315-20/+0
|
* Merge portions of r208645 and supporting code from the i386 pmap:alc2010-05-311-34/+45
| | | | | | | | | | | | | | | | | | | | | | | | | When I pushed down the page queues lock into pmap_is_modified(), I created an ordering dependence: A pmap operation that clears PG_WRITEABLE and calls vm_page_dirty() must perform the call first. Otherwise, pmap_is_modified() could return FALSE without acquiring the page queues lock because the page is not (currently) writeable, and the caller to pmap_is_modified() might believe that the page's dirty field is clear because it has not seen the effect of the vm_page_dirty() call. When I pushed down the page queues lock into pmap_is_modified(), I overlooked one place where this ordering dependence is violated: pmap_enter(). In a rare situation pmap_enter() can be called to replace a dirty mapping to one page with a mapping to another page. (I say rare because replacements generally occur as a result of a copy-on-write fault, and so the old page is not dirty.) This change delays clearing PG_WRITEABLE until after vm_page_dirty() has been called. Fixing the ordering dependency also makes it easy to introduce a small optimization: When pmap_enter() used to replace a mapping to one page with a mapping to another page, it freed the pv entry for the first mapping and later called the pv entry allocator for the new mapping. Now, pmap_enter() attempts to recycle the old pv entry, saving two calls to the pv entry allocator.
* Simplify the inner loop of get_pv_entry(): While iterating over the page'salc2010-05-303-8/+8
| | | | | pv list, there is no point in checking whether or not the pv list is empty, wait instead until the loop completes.
* Simplify the inner loop of pmap_collect(): While iterating over the page'salc2010-05-303-14/+8
| | | | | pv list, there is no point in checking whether or not the pv list is empty. Instead, wait until the loop completes.
* sh: Fix a crash if a heredoc was not properly ended and parsing continued.jilles2010-05-302-0/+6
| | | | | | | | | Example (in interactive mode): cat <<EOF && ) The next command typed caused sh to segfault, because the state for the here document was not reset. Like parser_temp, this uses the fact that the parser is not re-entered.
* sh: Change interaction of command substitution and here documents.jilles2010-05-303-4/+113
| | | | | | | | | | | | | | | | | If a command substitution contains a newline token, this no longer starts here documents of outer commands. This way, we follow POSIX's idea of the command substitution being a separate script more closely. It also matches other shells better and is consistent with newline characters in quotes not starting here documents. The extension tested in parser/heredoc3.0 ($(cat <<EOF)\ntext\nEOF\n) continues to be supported. In particular, this change allows things like cat <<EOF && echo `pwd` (a `` command substitution after a here document) which formerly silently used an empty file as the here document, because the EOF of the inner command "pwd" also forced an empty here document.
* devfs(5): Also mention when device nodes on ufs stopped working (6.0),jilles2010-05-301-4/+6
| | | | | | as requested by some people. MFC after: 2 weeks
* Merge various changes from i386/i386/pmap.c:alc2010-05-301-72/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The remaining, unmerged portions of r175404 Retire PMAP_DIAGNOSTIC. Any useful diagnostics that were conditionally compiled under PMAP_DIAGNOSTIC are now KASSERT()s. (Note: The kernel option DIAGNOSTIC still disables inlining of certain pmap functions.) Eliminate dead code from pmap_enter(). This code implemented an assertion. On i386, an equivalent check is already implemented. However, on amd64, a small change is required to implement an equivalent check. Eliminate \n from a nearby panic string. Use KASSERT() to reimplement pmap_copy()'s two assertions. Merge portions of r177659 To date, we have assumed that the TLB will only set the PG_M bit in a PTE if that PTE has the PG_RW bit set. However, this assumption does not hold on recent processors from Intel. For example, consider a PTE that has the PG_RW bit set but the PG_M bit clear. Suppose this PTE is cached in the TLB and later the PG_RW bit is cleared in the PTE, but the corresponding TLB entry is not (yet) invalidated. Historically, upon a write access using this (stale) TLB entry, the TLB would observe that the PG_RW bit had been cleared and initiate a page fault, aborting the setting of the PG_M bit in the PTE. Now, however, P4- and Core2-family processors will set the PG_M bit before observing that the PG_RW bit is clear and initiating a page fault. In other words, the write does not occur but the PG_M bit is still set. The real impact of this difference is not that great. Specifically, we should no longer assert that any PTE with the PG_M bit set must also have the PG_RW bit set, and we should ignore the state of the PG_M bit unless the PG_RW bit is set. r208609 Defer freeing any page table pages in pmap_remove_all() until after the page queues lock is released. This may reduce the amount of time that the page queues lock is held by pmap_remove_all(). r208645 When I pushed down the page queues lock into pmap_is_modified(), I created an ordering dependence: A pmap operation that clears PG_WRITEABLE and calls vm_page_dirty() must perform the call first. Otherwise, pmap_is_modified() could return FALSE without acquiring the page queues lock because the page is not (currently) writeable, and the caller to pmap_is_modified() might believe that the page's dirty field is clear because it has not seen the effect of the vm_page_dirty() call. When I pushed down the page queues lock into pmap_is_modified(), I overlooked one place where this ordering dependence is violated: pmap_enter(). In a rare situation pmap_enter() can be called to replace a dirty mapping to one page with a mapping to another page. (I say rare because replacements generally occur as a result of a copy-on-write fault, and so the old page is not dirty.) This change delays clearing PG_WRITEABLE until after vm_page_dirty() has been called. Fixing the ordering dependency also makes it easy to introduce a small optimization: When pmap_enter() used to replace a mapping to one page with a mapping to another page, it freed the pv entry for the first mapping and later called the pv entry allocator for the new mapping. Now, pmap_enter() attempts to recycle the old pv entry, saving two calls to the pv entry allocator. There is no point in setting PG_WRITEABLE on unmanaged pages, so don't. Update a comment to reflect this. Tidy up the variable declarations at the start of pmap_enter().
* Fix a regression from r200554, which broke fdc(4) attachment to acpi(4).jkim2010-05-301-1/+3
| | | | | | | I removed too many lines and a wrong pointer was accidentally passed down. Tested by: Scott Allendorf (scott-allendorf at uiowa dot edu), kib MFC after: 3 days
* Add file include processing for newsyslog.gordon2010-05-292-19/+116
| | | | | | | | | | | | | Format for the include line in /etc/newsyslog.conf is: <include> /etc/defaults/newsyslog.conf Other notes of interest: Globbing is supported in <include> statements. Properly detect circular include loop dependencies. Reviewed by: gad@ Approved by: wes@ (mentor) MFC after: 2 months
* Convert newsyslog to using queue(3) macros instead of a home rolled version.gordon2010-05-291-113/+71
| | | | | | Reviewed by: gad@ Approved by: wes@ (mentor) MFC after: 2 months
* Clarify devfs manpages slightly.jilles2010-05-292-4/+7
| | | | | | | | | | mount(8): add xref to devfs(5) devfs(5): change example to something more likely to be useful (it is not necessary to mount a devfs on /dev manually, but for chroots/jails it is often needed), mention since when devfs is preferred to device nodes on ufs PR: 146600 MFC after: 2 weeks
* Don't set PG_WRITEABLE in pmap_enter() unless the page is managed.alc2010-05-291-1/+1
|
* When I pushed down the page queues lock into pmap_is_modified(), I createdalc2010-05-293-16/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | an ordering dependence: A pmap operation that clears PG_WRITEABLE and calls vm_page_dirty() must perform the call first. Otherwise, pmap_is_modified() could return FALSE without acquiring the page queues lock because the page is not (currently) writeable, and the caller to pmap_is_modified() might believe that the page's dirty field is clear because it has not seen the effect of the vm_page_dirty() call. When I pushed down the page queues lock into pmap_is_modified(), I overlooked one place where this ordering dependence is violated: pmap_enter(). In a rare situation pmap_enter() can be called to replace a dirty mapping to one page with a mapping to another page. (I say rare because replacements generally occur as a result of a copy-on-write fault, and so the old page is not dirty.) This change delays clearing PG_WRITEABLE until after vm_page_dirty() has been called. Fixing the ordering dependency also makes it easy to introduce a small optimization: When pmap_enter() used to replace a mapping to one page with a mapping to another page, it freed the pv entry for the first mapping and later called the pv entry allocator for the new mapping. Now, pmap_enter() attempts to recycle the old pv entry, saving two calls to the pv entry allocator. There is no point in setting PG_WRITEABLE on unmanaged pages, so don't. Update a comment to reflect this. Tidy up the variable declarations at the start of pmap_enter().
* Due to the way HALDEBUG() is defined, we need to add curly bracketsrpaulo2010-05-291-2/+3
| | | | | | | | when using it as a sole if clause instruction. While there, fix 'const static' typo. Submitted by: Arnaud Lacombe <alc@FreeBSD.org> MFC after: 1 week
* Due to the way HALDEBUG() is defined, we need to add curly brackets whenrpaulo2010-05-291-1/+2
| | | | | | | using it as a sole if clause instruction. Submitted by: Arnaud Lacombe <alc@FreeBSD.org> MFC after: 1 week
* Don't shadow the global variable 'version'.rpaulo2010-05-291-6/+6
| | | | | Submitted by: Arnaud Lacombe <alc@NetBSD.org> MFC after: 1 week
* MFi386: the part of revision 181809nyan2010-05-291-5/+5
| | | | Use SEL_KPL macro.
* MFi386: revision 178471nyan2010-05-291-42/+150
| | | | | | | | | | | | | | - Add an integer argument to idle to indicate how likely we are to wake from idle over the next tick. - Add a new MD routine, cpu_wake_idle() to wakeup idle threads who are suspended in cpu specific states. This function can fail and cause the scheduler to fall back to another mechanism (ipi). - Implement support for mwait in cpu_idle() on i386/amd64 machines that support it. mwait is a higher performance way to synchronize cpus as compared to hlt & ipis. - Allow selecting the idle routine by name via sysctl machdep.idle. This replaces machdep.cpu_idle_hlt. Only idle routines supported by the current machine are permitted.
* Reduce diffs against i386.nyan2010-05-291-11/+17
|
* MFi386: revision 208621nyan2010-05-291-2/+0
| | | | | Defer initializing machine checks for the boot CPU until the local APIC is fully configured.
OpenPOWER on IntegriCloud