kib [Fri, 6 Aug 2010 09:42:15 +0000 (09:42 +0000)]
Add new make_dev_p(9) flag MAKEDEV_ETERNAL to inform devfs that created
cdev will never be destroyed. Propagate the flag to devfs vnodes as
VV_ETERNVALDEV. Use the flags to avoid acquiring devmtx and taking a
thread reference on such nodes.
jchandra [Fri, 6 Aug 2010 09:25:42 +0000 (09:25 +0000)]
Fix issue reported by alc :
MIPS doesn't really need to use atomic_cmpset_int() in situations like
this because the software dirty bit emulation in trap.c acquires
the pmap lock. Atomics like this appear to be a carryover from i386
where the hardware-managed TLB might concurrently set the modified bit.
jchandra [Fri, 6 Aug 2010 07:32:33 +0000 (07:32 +0000)]
Fix the issue reported by alc:
pmap_page_wired_mappings() counts the number of pv entries for the
specified page that have the pv entry wired flag set to TRUE.
pmap_enter() correctly initializes this flag. However,
pmap_change_wiring() doesn't update the corresponding pv entry flag,
only the PTE. So, the count returned by pmap_page_wired_mappings()
will sometimes be wrong.
In the short term, the best fix would be to eliminate the pv entry
flag and use only the PTE. That flag is wasting non-trivial memory.
Remove pv_wired flag, and use PTE flag to count the wired mappings.
yongari [Fri, 6 Aug 2010 00:50:16 +0000 (00:50 +0000)]
Reduce Tx interrupt moderation timer from 50ms to 1ms. The default
value resulted in poor performance for UDP packets. With this
change, UDP bulk transfer performance is more than 940Mbps.
pjd [Thu, 5 Aug 2010 19:16:31 +0000 (19:16 +0000)]
Implement configuration reload on SIGHUP. This includes:
- Load added resources.
- Stop and forget removed resources.
- Update modified resources in least intrusive way, ie. don't touch
/dev/hast/<name> unless path to local component or provider name were
modified.
Obtained from: Wheel Systems Sp. z o.o. http://www.wheelsystems.com
MFC after: 1 month
pjd [Thu, 5 Aug 2010 19:08:54 +0000 (19:08 +0000)]
Prepare configuration parsing code to be called multiple times:
- Don't exit on errors if not requested.
- Don't keep configuration in global variable, but allocate memory for
configuration.
- Call yyrestart() before yyparse() so that on error in configuration file
we will start from the begining next time and not from the place we left of.
jkim [Thu, 5 Aug 2010 18:48:30 +0000 (18:48 +0000)]
Implement a simple native VM86 backend for X86BIOS. Now i386 uses native
VM86 calls instead of the real mode emulator as a backend. VM86 has been
proven reliable for very long time and it is actually few times faster than
emulation. Increase maximum number of page table entries per VM86 context
from 3 to 8 pages. It was (ridiculously) low and insufficient for new VM86
backend, which shares one context globally. Slighly rearrange and clean up
the emulator backend to accommodate new code. The only visible change here
is stack size, which is decreased from 64K to 4K bytes to sync. with VM86.
Actually, it seems there is no need for big stack in real mode.
pjd [Thu, 5 Aug 2010 18:26:38 +0000 (18:26 +0000)]
Problem with assertion is that it logs on stderr. Add two macros:
PJDLOG_ASSERT() and PJDLOG_VERIFY() that will check the given condition
and log the problem where appropriate. The difference between those
two is that PJDLOG_VERIFY() always work and PJDLOG_ASSERT() can be
turned off by defining NDEBUG.
pjd [Thu, 5 Aug 2010 17:56:41 +0000 (17:56 +0000)]
Add an argument to the proto_register() function which allows protocol to
declare it is the default and be placed at the end of the queue so it is
checked last.
jhb [Thu, 5 Aug 2010 17:48:37 +0000 (17:48 +0000)]
Change the MPTable and $PIR PCI-PCI bridge drivers to inherit from the
generic PCI-PCI bridge driver and only override specific methods. This
should fix suspend/resume of PCI-PCI bridges using these drivers.
jhb [Thu, 5 Aug 2010 16:10:12 +0000 (16:10 +0000)]
- Retire acpi_pcib_resume(). It is has just been an alias for
bus_generic_resume() since the pci_link(4) driver was added.
- Change the ACPI PCI-PCI bridge driver to inherit most of its methods
from the generic PCI-PCI bridge driver. In particular, this will now
restore PCI config registers for ACPI PCI-PCI bridges.
olli [Thu, 5 Aug 2010 15:53:33 +0000 (15:53 +0000)]
Add a daily script to the periodic framework that reports
changes to the package database, i.e. any packages that
have been added, updated or deleted in the past 24 hours.
The format is intentionally simple and concise.
That information is particularly useful on servers that
are maintained by multiple administrators. When someone
adds, updates or deletes a package, the others will see
it in the daily periodic output.
This script is disabled by default.
PR: conf/113913
Submitted by: olli
Approved by: des (mentor)
MFC after: 3 weeks
neel [Thu, 5 Aug 2010 04:59:54 +0000 (04:59 +0000)]
Fix a race between clock_intr() and tick_ticker() when updating
'counter_upper' and 'counter_lower_last'. The race exists because
interrupts are enabled even though tick_ticker() executes in a
critical section.
Fix a bug in clock_intr() in how it updates the cached values of
'counter_upper' and 'counter_lower_last'. They are updated only
when the COUNT register rolls over. More interestingly it will *never*
update the cached values if 'counter_lower_last' happens to be zero.
Get rid of superfluous critical section in clock_intr(). There is no
reason to do this because clock_intr() executes in hard interrupt
context.
Switch back to using 'tick_ticker()' as the cpu ticker for Sibyte.
ache [Thu, 5 Aug 2010 01:39:25 +0000 (01:39 +0000)]
Comment out IEEE Std 1003.1-2001 conformance proclaimed too early,
see problems described in the comment to:
http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/128933
jchandra [Wed, 4 Aug 2010 14:12:09 +0000 (14:12 +0000)]
Add 3 level page tables for MIPS in n64.
- 32 bit compilation will still use old 2 level page tables
- re-arrange pmap code so that adding another level is easier
- pmap code for 3 level page tables for n64
- update TLB handler to traverse 3 levels in n64
gavin [Wed, 4 Aug 2010 07:49:40 +0000 (07:49 +0000)]
Do not free sc if attach failed, as it was allocated by the bus
infrastructure, not us. This appears to be a leftover from an older
version of the driver.
Submitted by: avg
Tested by: Anton Shterenlikht <mexas bristol.ac.uk>
MFC after: 1 week
X-MFC-Note: To stable/8 and stable/7 only
alc [Wed, 4 Aug 2010 05:09:02 +0000 (05:09 +0000)]
In order for MAXVNODES_MAX to be an "int" on powerpc and sparc, we must
cast PAGE_SIZE to an "int". (Powerpc and sparc, unlike the other
architectures, define PAGE_SIZE as a "long".)
delphij [Wed, 4 Aug 2010 00:25:13 +0000 (00:25 +0000)]
Catch known CPUs before using IA32_TEMPERATURE_TARGET.
This way we would have an opportunity to hide the
Tj(target) value doesn't seem right stuff if we know
it's not working there.
Add temperature value for Core2 Duo Extreme Mobile that
I have access to.
uqs [Tue, 3 Aug 2010 20:56:23 +0000 (20:56 +0000)]
grdc(6): de-obfuscate the timekeeping of now/delay
- 'now' only contains current time readings
- delay is only used as parameter to nanosleep
- prev_sec contains the time_t of the previous loop iteration
uqs [Tue, 3 Aug 2010 16:02:57 +0000 (16:02 +0000)]
grdc(6): Partial backout of r210755
The previous revision was flawed in numerous ways:
- the if condition would depend on garbage stack values
- grdc(6) would loop n times, not n seconds. This only makes
a difference if it takes more than 1 second to recalculate/redraw
the display.
- style(9) violations
The following change adds argument checking and tracks the elapsed time
between loops explicitly and will exit after roughly n seconds.
jkim [Tue, 3 Aug 2010 15:32:08 +0000 (15:32 +0000)]
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.
- Move the file read in the event loop
- Initialize and clean log in all cases
- Preserve global stats value during top refresh
- Fix the rtld/line resolver that ignore '-r' prefix
- Support socket for '-R' (server mode)
- Display the statistics when exiting top mode
One question mark per question; everything else is just exaggerating.
reply() will output a '?', when printing the question along with [yn],
so no need to have another here.
rmacklem [Tue, 3 Aug 2010 01:49:28 +0000 (01:49 +0000)]
Modify the return value for nfscl_mustflush() from boolean_t,
which I mistakenly thought was correct w.r.t. style(9), back
to int and add the checks for != 0. This is just a stylistic
modification.
alc [Mon, 2 Aug 2010 21:33:36 +0000 (21:33 +0000)]
Update the "desiredvnodes" calculation. In particular, make the part of
the calculation that is based on the kernel's heap size more conservative.
Hopefully, this will eliminate the need for MAXVNODES_MAX, but for the
time being set MAXVNODES_MAX to a large value.
jkim [Mon, 2 Aug 2010 18:12:30 +0000 (18:12 +0000)]
Rearrange struct pcb. r177532 (CVS r1.64 of pcb.h) moved pcb_flags to make
better use of cache lines by placing it before pcb_save (now pcb_user_save),
which is moved to the end of pcb since r210777.
jkim [Mon, 2 Aug 2010 17:35:00 +0000 (17:35 +0000)]
- 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.
jhb [Mon, 2 Aug 2010 17:01:23 +0000 (17:01 +0000)]
Tweak the logic to disable CLFLUSH in virtual environments to work around
problems with flushing the local APIC register range so that it checks
vm_guest directly.
changeset: 12692:4341b447c069
user: Ali Bahrami <Ali.Bahrami@Oracle.COM>
date: Thu Jun 24 18:16:42 2010 -0600
summary: 6916796 OSnet mapfiles should use version 2 link-editor syntax
changeset: 12507:501806a754d2
user: Alan Maguire <Alan.Maguire@Sun.COM>
date: Thu May 27 17:29:51 2010 -0400
summary: PSARC 2010/106 DTrace TCP and UDP providers
changeset: 11798:1e7f1f154004
user: Roger A. Faulkner <Roger.Faulkner@Sun.COM>
date: Sun Feb 28 18:42:20 2010 -0800
summary: PSARC 2009/657 delete obsolete system call traps
changeset: 11466:d60272412fb0
user: Roger A. Faulkner <Roger.Faulkner@Sun.COM>
date: Mon Jan 11 17:42:13 2010 -0800
summary: 6915578 MUTEX_HELD() and RW_LOCK_HELD() macros should be available to Posix threads
changeset: 11237:0d23e47ed228
user: Jonathan Haslam <Jonathan.Haslam@Sun.COM>
date: Thu Dec 03 13:39:19 2009 +0000
summary: 6795386 macro arguments and globbing in DTrace probe descriptions don't mix
changeset: 10791:944abfb5b345
user: Jonathan Haslam <Jonathan.Haslam@Sun.COM>
date: Wed Oct 14 11:25:23 2009 +0100
summary: 6886953 large symbols lead to stack exhaustion
changeset: 10326:8e3fbeec2d76
user: Siddheshwar Mahesh <Siddheshwar.Mahesh@Sun.COM>
date: Mon Aug 17 13:26:49 2009 -0500
summary: 6868411 NFS provider generates error on ci_remote on RDMA operations
changeset: 10207:87c40ea3fc4b
user: jmcp <James.McPherson@Sun.COM>
date: Wed Jul 29 16:56:03 2009 -0700
summary: 6864230 hiho, hiho, it'ch chtime for CH to go
changeset: 10044:2643c1cd9e2a
user: Priya Krishnan <Priya.Krishnan@Sun.COM>
date: Mon Jul 06 21:19:41 2009 -0400
summary: 6855027 iscsit.d breaks dtrace in osol based on snv_117
changeset: 9900:1b86d65a4f9e
user: Ali Bahrami <Ali.Bahrami@Sun.COM>
date: Thu Jun 18 13:16:39 2009 -0600
summary: 6851224 elf_getshnum() and elf_getshstrndx() incompatible with 2002 ELF gABI agreement
changeset: 9881:741c9e4e094c
user: Charles Ting <Charles.Ting@Sun.COM>
date: Tue Jun 16 14:51:40 2009 -0400
summary: 6849606 SRP DTrace Probe for xfer-done misses completion of READ transfers
changeset: 9829:e8059fcaee97
user: Charles Ting <Charles.Ting@Sun.COM>
date: Tue Jun 09 10:11:35 2009 -0400
summary: 6804431 Add Dtrace probes to SRPT
changeset: 9812:a2990074321f
user: Priya Krishnan <Priya.Krishnan@Sun.COM>
date: Mon Jun 08 09:49:48 2009 -0400
summary: 6847237 The iscsit.d DTrace translator should include iscsi.d for the definition of iscsiinfo_t
changeset: 6878:360e73ea6b0c
user: brendan
date: Fri Jun 13 19:06:55 2008 -0700
summary: PSARC 2008/302 DTrace IP Provider
changeset: 6554:b5817e112852
user: ahl
date: Mon May 05 14:38:24 2008 -0700
summary: 6677812 race between dtrace activities in non-local zones
----
- ctf tools:
changeset: 12177:800b7f847f1e
user: Surya Prakki <Surya.Prakki@Sun.COM>
date: Sun Apr 18 23:59:57 2010 -0700
summary: 6941452 ctfconvert fails on VLAs with code generated by SS12u1
changeset: 11432:c1c450bf62f2
user: John Levon <john.levon@sun.com>
date: Tue Jan 05 06:57:53 2010 -0800
summary: 6905711 anonymous and empty SOUs crash ctfconvert
changeset: 11227:cd2ac59c39f2
user: Ali Bahrami <Ali.Bahrami@Sun.COM>
date: Wed Dec 02 15:37:55 2009 -0700
summary: 6900241 ld should track SHT_GROUP sections by symbol name, not section name
changeset: 10380:5394a7172e1f
user: Ali Bahrami <Ali.Bahrami@Sun.COM>
date: Tue Aug 25 13:51:43 2009 -0600
summary: 6866605 SUNWonbld ELF analysis tools need overhaul (fix ctfmerge/libc dependency)
changeset: 10207:87c40ea3fc4b
user: jmcp <James.McPherson@Sun.COM>
date: Wed Jul 29 16:56:03 2009 -0700
summary: 6864230 hiho, hiho, it'ch chtime for CH to go
changeset: 10206:51f52702df72
user: John Levon <john.levon@sun.com>
date: Wed Jul 29 14:36:30 2009 -0700
summary: 6854065 CTF tools should error out given 1024+-member structures
changeset: 6936:72189fcd99e4
user: sommerfe
date: Sun Jun 22 09:13:44 2008 -0700
summary: 6716983 left-for-dead ctfmerge worker threads awake to take out maker
----
- dtrace command utility:
changeset: 12507:501806a754d2
user: Alan Maguire <Alan.Maguire@Sun.COM>
date: Thu May 27 17:29:51 2010 -0400
summary: PSARC 2010/106 DTrace TCP and UDP providers
changeset: 11270:47a962fe7b45
user: Frank Van Der Linden <Frank.Vanderlinden@Sun.COM>
date: Mon Dec 07 13:47:36 2009 -0800
summary: 6907170 fix for 6875656 left out updates to DTrace test suite
changeset: 11237:0d23e47ed228
user: Jonathan Haslam <Jonathan.Haslam@Sun.COM>
date: Thu Dec 03 13:39:19 2009 +0000
summary: 6795386 macro arguments and globbing in DTrace probe descriptions don't mix
changeset: 11153:dec430d20576
user: Frank Van Der Linden <Frank.Vanderlinden@Sun.COM>
date: Sun Nov 22 19:22:26 2009 -0800
summary: 6875656 xdt needs to support more XenTrace probes
changeset: 11102:b91faef0c984
user: Gavin Maltby <Gavin.Maltby@Sun.COM>
date: Thu Nov 19 15:28:11 2009 +1100
summary: PSARC/2009/554 door_xcreate - extended door creation interface for private doors
changeset: 10791:944abfb5b345
user: Jonathan Haslam <Jonathan.Haslam@Sun.COM>
date: Wed Oct 14 11:25:23 2009 +0100
summary: 6886953 large symbols lead to stack exhaustion
changeset: 10207:87c40ea3fc4b
user: jmcp <James.McPherson@Sun.COM>
date: Wed Jul 29 16:56:03 2009 -0700
summary: 6864230 hiho, hiho, it'ch chtime for CH to go
changeset: 9531:dc8924ef7839
user: Rafael Vanoni <rafael.vanoni@sun.com>
date: Mon May 04 11:48:15 2009 -0700
summary: 6730130 dtrace missing printf handler for stdev
changeset: 9397:e667d620a75c
user: Jonathan Haslam <Jonathan.Haslam@Sun.COM>
date: Mon Apr 20 07:58:44 2009 +0100
summary: 6806023 cpc provider event name validation needs to be a bit tighter
changeset: 8803:8c01b39012c9
user: Jonathan Haslam <Jonathan.Haslam@Sun.COM>
date: Fri Feb 13 07:13:13 2009 +0000
summary: PSARC 2008/480 DTrace CPC Provider
changeset: 8605:0189cb9c5358
user: Jonathan Haslam <Jonathan.Haslam@Sun.COM>
date: Thu Jan 22 12:09:13 2009 +0000
summary: 6749441 intrstat(1M) shows zeroed values after suspend/resume
changeset: 8337:079ecc003ca6
user: Jonathan Haslam <Jonathan.Haslam@Sun.COM>
date: Thu Dec 11 11:26:47 2008 +0000
summary: 6750659 drti.o crashes app due to corrupt environment
changeset: 8287:771477e4b843
user: John Sonnenschein <John.Sonnenschein@Sun.COM>
date: Fri Dec 05 19:08:38 2008 -0800
summary: PSARC 2005/462 Removal of Perl 5.6.1 from Solaris 11
changeset: 7991:d3b751ef3d85
user: Jonathan Haslam <Jonathan.Haslam@Sun.COM>
date: Mon Nov 03 10:26:23 2008 +0000
summary: 6738982 Representative thread after DTrace stop() action is incorrect
changeset: 7502:da077e5d991e
user: Aruna Ramakrishna <aruna@cs.umn.edu>
date: Sat Sep 06 05:36:02 2008 -0400
summary: 6706947 tcp_trace should be replaced with dtrace probes.
kib [Mon, 2 Aug 2010 10:57:56 +0000 (10:57 +0000)]
Simplify argument parser by using sscanf(); simplify usage() by not
refusing to use stdio.
Reduce nesting level in the sleep loop by returning earlier for negative
timeouts.
Limit the maximum timeout to INT_MAX seconds.