dragonfly.git
8 years agoMerge branch 'vendor/BINUTILS221'
Sascha Wildner [Wed, 23 Mar 2011 19:23:06 +0000 (20:23 +0100)]
Merge branch 'vendor/BINUTILS221'

8 years agoImport binutils-2.21
Sascha Wildner [Wed, 23 Mar 2011 19:22:22 +0000 (20:22 +0100)]
Import binutils-2.21

8 years agoAdd memoryallocators(9) manpage to describe kernel memory allocators.
Venkatesh Srinivas [Wed, 23 Mar 2011 18:11:30 +0000 (11:11 -0700)]
Add memoryallocators(9) manpage to describe kernel memory allocators.

8 years agokernel - Major bridging functionality added (bug fixes 3)
Matthew Dillon [Wed, 23 Mar 2011 16:36:33 +0000 (09:36 -0700)]
kernel - Major bridging functionality added (bug fixes 3)

* When forwarding packets we do not retransmit the packet out the same
  interface it came in on, but this check was not taking into account
  bonding sets and could bounce a packet out a different interface on the
  same bonding set the packet came in on.

  This could result in loops for things like ARP broadcasts and cause
  intermediate ethernet switches to get confused as to which port a
  particular MAC is on.

* Change src_if == dst_if checks to compare MAC addresses instead, which
  solves the problem.

8 years agomptable: Make interrupt routing information logging consistent with PIR
Sepherosa Ziehau [Wed, 23 Mar 2011 12:41:02 +0000 (20:41 +0800)]
mptable: Make interrupt routing information logging consistent with PIR

8 years agoioapic: Raise MADT I/O APIC enumerator priority
Sepherosa Ziehau [Wed, 23 Mar 2011 12:33:35 +0000 (20:33 +0800)]
ioapic: Raise MADT I/O APIC enumerator priority

8 years agoioapic: Disable imen_dump() in new code
Sepherosa Ziehau [Wed, 23 Mar 2011 12:26:55 +0000 (20:26 +0800)]
ioapic: Disable imen_dump() in new code

8 years agoioapic: Rework I/O APIC APIC ID allocation
Sepherosa Ziehau [Wed, 23 Mar 2011 12:04:15 +0000 (20:04 +0800)]
ioapic: Rework I/O APIC APIC ID allocation

- I/O APIC's ID field in ID register contains only 4bits, so only 16
  I/O APICs should be allowed.
- All I/O APIC's APIC ID's lower 4bits (what we wrote to I/O APIC ID
  register) must be different from each other, this should be done
  even on xAPIC (e.g. Pentium 4), where I/O APIC's APIC IDs are not
  required to be different from what LAPIC's.

8 years agoioapic: Don't assume that BSP's APIC ID is 0
Sepherosa Ziehau [Wed, 23 Mar 2011 10:54:33 +0000 (18:54 +0800)]
ioapic: Don't assume that BSP's APIC ID is 0

8 years agomsdosfs: use size_t for unlen consistently instead of int.
Alexander Polakov [Mon, 21 Mar 2011 23:00:15 +0000 (02:00 +0300)]
msdosfs: use size_t for unlen consistently instead of int.

size_t is different from int on x86-64, which can lead
to weird effects.

Dragonfly-bug: <http://bugs.dragonflybsd.org/issue2027>

8 years agoacpi/x86_64: Properly configure ACPI interrupt model
Sepherosa Ziehau [Tue, 22 Mar 2011 11:10:07 +0000 (19:10 +0800)]
acpi/x86_64: Properly configure ACPI interrupt model

8 years agokernel - Reduce dsched console output
Matthew Dillon [Mon, 21 Mar 2011 21:36:24 +0000 (14:36 -0700)]
kernel - Reduce dsched console output

* Only print out 'No policy for ...' messages if bootverbose is set.

8 years agoioapic: Switch to new code by default
Sepherosa Ziehau [Mon, 21 Mar 2011 16:52:42 +0000 (00:52 +0800)]
ioapic: Switch to new code by default

8 years agoioapic: For limited I/O APIC mixed mode, delivery mode should always be fixed.
Sepherosa Ziehau [Mon, 21 Mar 2011 16:55:51 +0000 (00:55 +0800)]
ioapic: For limited I/O APIC mixed mode, delivery mode should always be fixed.

8 years ago8254: Setup interrupt properly for new I/O APIC code
Sepherosa Ziehau [Mon, 21 Mar 2011 16:06:30 +0000 (00:06 +0800)]
8254: Setup interrupt properly for new I/O APIC code

8 years ago8254: apic_8254_intr does not need to be global variable
Sepherosa Ziehau [Mon, 21 Mar 2011 14:39:16 +0000 (22:39 +0800)]
8254: apic_8254_intr does not need to be global variable

8 years agoemul/linux: Unbreak module building
Sepherosa Ziehau [Mon, 21 Mar 2011 13:58:04 +0000 (21:58 +0800)]
emul/linux: Unbreak module building

8 years agomptable: Verbose debug logging about "fixed interrupt routing"
Sepherosa Ziehau [Mon, 21 Mar 2011 13:41:31 +0000 (21:41 +0800)]
mptable: Verbose debug logging about "fixed interrupt routing"

8 years agoioapic: Don't allow interrupt source overrides to GSI 0 (ExtINT)
Sepherosa Ziehau [Mon, 21 Mar 2011 13:25:07 +0000 (21:25 +0800)]
ioapic: Don't allow interrupt source overrides to GSI 0 (ExtINT)

8 years agobinutils220: Fix a copy/paste error.
Sascha Wildner [Sun, 20 Mar 2011 15:28:32 +0000 (16:28 +0100)]
binutils220: Fix a copy/paste error.

Reported-by: John Marino <john@marino.st>
8 years agobinutils: Install the manpages of both binutils versions.
Sascha Wildner [Sun, 20 Mar 2011 12:57:56 +0000 (13:57 +0100)]
binutils: Install the manpages of both binutils versions.

Previously, 2.20's manpages were just copied over 2.17's.

Now it is like with gcc and friends: Install as ld217.1 and ld220.1,
for example, and use a ld.1 MLINKS for the default binutils.

Reported-by: John Marino <john@marino.st>
8 years agogcc44: Switch the rest of the MLINKS over to gcc44.
Sascha Wildner [Sun, 20 Mar 2011 10:49:48 +0000 (11:49 +0100)]
gcc44: Switch the rest of the MLINKS over to gcc44.

8 years agogcc44: Add a forgotten '+'.
Sascha Wildner [Sun, 20 Mar 2011 10:49:10 +0000 (11:49 +0100)]
gcc44: Add a forgotten '+'.

8 years agomptable: Always clear 'force_pci0' before setting/using it
Sepherosa Ziehau [Sun, 20 Mar 2011 07:56:02 +0000 (15:56 +0800)]
mptable: Always clear 'force_pci0' before setting/using it

8 years agomptable/ioapic: Properly routing PCI interrupts
Sepherosa Ziehau [Sun, 20 Mar 2011 06:40:30 +0000 (14:40 +0800)]
mptable/ioapic: Properly routing PCI interrupts

8 years agoioapic/abi: Mark unused ISA IRQs as reserved
Sepherosa Ziehau [Sun, 20 Mar 2011 04:37:45 +0000 (12:37 +0800)]
ioapic/abi: Mark unused ISA IRQs as reserved

8 years agoioapic: Let callers of pin_setup() to hold imen_spinlock
Sepherosa Ziehau [Sun, 20 Mar 2011 04:15:34 +0000 (12:15 +0800)]
ioapic: Let callers of pin_setup() to hold imen_spinlock

8 years agobinutils: Offer both readelf(1)'s based on BINUTILSVER's setting.
Sascha Wildner [Sat, 19 Mar 2011 15:57:27 +0000 (16:57 +0100)]
binutils: Offer both readelf(1)'s based on BINUTILSVER's setting.

Reported-by: John Marino <john@marino.st>
8 years agoioapic: Move MachIntrABI switching from ABI finalize to I/O APIC configure
Sepherosa Ziehau [Sat, 19 Mar 2011 11:11:10 +0000 (19:11 +0800)]
ioapic: Move MachIntrABI switching from ABI finalize to I/O APIC configure

8 years agoFix loading of a kernel that was linked with ld 2.20 on x86_64.
Sascha Wildner [Fri, 18 Mar 2011 21:05:22 +0000 (22:05 +0100)]
Fix loading of a kernel that was linked with ld 2.20 on x86_64.

The MAXPAGESIZE changed between binutils 2.17 and 2.20 from 0x100000
to 0x200000 for x86_64. But we have 0x100000 coded into our ldscript
for the kernel.

The real solution would be to specify "CONSTANT (MAXPAGESIZE)" in
the ldscript but unfortunately binutils 2.17 (at least our version;
later snapshots like 2.17.50 or 2.17.90 do) doesn't have support for
this keyword.

We will do that too once we get rid of binutils 2.17. Until then,
set max-page-size to 0x100000 as a workaround when linking on
x86_64.

8 years agoFix buildkernel without -j.
Sascha Wildner [Sat, 19 Mar 2011 08:17:29 +0000 (09:17 +0100)]
Fix buildkernel without -j.

One of the recent commits by sephe caused genassym.c to depend on
bus_if.h and device_if.h (via machintr.h via bus.h).

However, without -j, these headers would not be generated (from
the .m files) before genassym.c was compiled, causing the kernel
build to break.

As a fix, make genassym.c depend on these headers in the Makefile.

The interesting bit is that this is one of the cases where it
breaks without -j but _does_ work with -j 1 (read: one) due to
the different handling of no -j vs. -j 1 in make(1).

8 years agoapic: Initialize LAPIC before programming I/O APIC
Sepherosa Ziehau [Sat, 19 Mar 2011 07:47:20 +0000 (15:47 +0800)]
apic: Initialize LAPIC before programming I/O APIC

On the system without IMCR, I/O APIC is enabled when it is first accessed.
Before I/O APIC is enabled, LAPIC should be initialized.

8 years agolapic: Centralize LAPIC configuration
Sepherosa Ziehau [Sat, 19 Mar 2011 07:28:54 +0000 (15:28 +0800)]
lapic: Centralize LAPIC configuration

8 years agolapic_init: Use 'bsp' function parameter consistently
Sepherosa Ziehau [Sat, 19 Mar 2011 06:56:16 +0000 (14:56 +0800)]
lapic_init: Use 'bsp' function parameter consistently

8 years agolapic: Move LAPIC related vector installation into lapic_init()
Sepherosa Ziehau [Sat, 19 Mar 2011 06:46:36 +0000 (14:46 +0800)]
lapic: Move LAPIC related vector installation into lapic_init()

8 years agolapic: apic_initialize() -> lapic_init()
Sepherosa Ziehau [Sat, 19 Mar 2011 06:34:07 +0000 (14:34 +0800)]
lapic: apic_initialize() -> lapic_init()

8 years agoapic: Centralize IMCR present setting
Sepherosa Ziehau [Sat, 19 Mar 2011 05:19:35 +0000 (13:19 +0800)]
apic: Centralize IMCR present setting

8 years agoclock: Use irq number; More consistent with the above register_int()
Sepherosa Ziehau [Fri, 18 Mar 2011 14:48:00 +0000 (22:48 +0800)]
clock: Use irq number; More consistent with the above register_int()

8 years agokernel: Fix -Wundef in a number of places.
Sascha Wildner [Fri, 18 Mar 2011 19:41:31 +0000 (20:41 +0100)]
kernel: Fix -Wundef in a number of places.

8 years agoHook some forgotten Citrus tools into the build.
Sascha Wildner [Fri, 18 Mar 2011 17:49:27 +0000 (18:49 +0100)]
Hook some forgotten Citrus tools into the build.

8 years agoioapic/abi: Log interrupt trigger mode changes
Sepherosa Ziehau [Fri, 18 Mar 2011 14:23:48 +0000 (22:23 +0800)]
ioapic/abi: Log interrupt trigger mode changes

It is mainly used to locate missing bus_config_intr call

8 years agoicu/abi: Fix typo
Sepherosa Ziehau [Fri, 18 Mar 2011 14:08:44 +0000 (22:08 +0800)]
icu/abi: Fix typo

8 years agomptable/pci: Configure interrupts after routing
Sepherosa Ziehau [Fri, 18 Mar 2011 09:52:52 +0000 (17:52 +0800)]
mptable/pci: Configure interrupts after routing

8 years agonexus: Implement bus_config_intr bus method
Sepherosa Ziehau [Fri, 18 Mar 2011 09:52:29 +0000 (17:52 +0800)]
nexus: Implement bus_config_intr bus method

8 years agomachintr: Add intr_config interface
Sepherosa Ziehau [Fri, 18 Mar 2011 09:05:44 +0000 (17:05 +0800)]
machintr: Add intr_config interface

This interface is used to change pre-configured interrupt's trigger
mode and polarity.

8 years agoioapic: Properly setup I/O APIC pin according to the saved information
Sepherosa Ziehau [Fri, 18 Mar 2011 07:17:39 +0000 (15:17 +0800)]
ioapic: Properly setup I/O APIC pin according to the saved information

8 years agoioapic/abi: Save IRQ to GSI mapping
Sepherosa Ziehau [Fri, 18 Mar 2011 05:59:50 +0000 (13:59 +0800)]
ioapic/abi: Save IRQ to GSI mapping

8 years agoioapic/abi: Save interrupt polarity
Sepherosa Ziehau [Fri, 18 Mar 2011 05:25:12 +0000 (13:25 +0800)]
ioapic/abi: Save interrupt polarity

8 years agoioapic: During initmap, only GSIs should be configured.
Sepherosa Ziehau [Thu, 17 Mar 2011 11:28:22 +0000 (19:28 +0800)]
ioapic: During initmap, only GSIs should be configured.

8 years agopowernow.4: Fix some bugs (typo, missing sysctl, style).
Sascha Wildner [Thu, 17 Mar 2011 17:39:42 +0000 (18:39 +0100)]
powernow.4: Fix some bugs (typo, missing sysctl, style).

While doing this, fix the est(4)'s manual page in a similar manner.

Reported-by: Max Herrgard <herrgard@gmail.com>
8 years agoioapic: Setup I/O APIC according to the saved information. Stage 1/2
Sepherosa Ziehau [Thu, 17 Mar 2011 10:55:41 +0000 (18:55 +0800)]
ioapic: Setup I/O APIC according to the saved information.  Stage 1/2

8 years agoioapic: Save interrupt source override information
Sepherosa Ziehau [Thu, 17 Mar 2011 07:48:53 +0000 (15:48 +0800)]
ioapic: Save interrupt source override information

8 years agoioapic: Save I/O APIC information for later configuration
Sepherosa Ziehau [Thu, 17 Mar 2011 06:45:45 +0000 (14:45 +0800)]
ioapic: Save I/O APIC information for later configuration

8 years agomptable: Get pin count of I/O APIC and calculate GSI base accordingly
Sepherosa Ziehau [Thu, 17 Mar 2011 05:37:43 +0000 (13:37 +0800)]
mptable: Get pin count of I/O APIC and calculate GSI base accordingly

8 years agokernel: In the x86_64 kernel, add a missing include to trap.c.
Sascha Wildner [Thu, 17 Mar 2011 06:07:04 +0000 (07:07 +0100)]
kernel: In the x86_64 kernel, add a missing include to trap.c.

Some bits of code in trap() regarding the handling of T_NMI were not
compiled in due to NISA not being defined.

While I'm here, put some more code in "#if NISA > 0", like it is for
i386.

8 years agokernel: Fix x86_64 building without 'options DDB'.
Sascha Wildner [Thu, 17 Mar 2011 01:50:41 +0000 (02:50 +0100)]
kernel: Fix x86_64 building without 'options DDB'.

8 years agokernel: Improve #ifdef a bit.
Sascha Wildner [Thu, 17 Mar 2011 01:20:49 +0000 (02:20 +0100)]
kernel: Improve #ifdef a bit.

8 years agokernel: Fix building without 'options P1003_1B'.
Sascha Wildner [Wed, 16 Mar 2011 22:05:05 +0000 (23:05 +0100)]
kernel: Fix building without 'options P1003_1B'.

8 years agokernel: Fix building without 'options INVARIANTS'.
Sascha Wildner [Wed, 16 Mar 2011 22:03:39 +0000 (23:03 +0100)]
kernel: Fix building without 'options INVARIANTS'.

8 years agokernel: Fix building without 'options INET'.
Sascha Wildner [Wed, 16 Mar 2011 22:01:46 +0000 (23:01 +0100)]
kernel: Fix building without 'options INET'.

8 years agoacpi/pstate: Adjust FID/VID verification for AMD 0Fh family CPUs
Sepherosa Ziehau [Wed, 16 Mar 2011 13:28:16 +0000 (21:28 +0800)]
acpi/pstate: Adjust FID/VID verification for AMD 0Fh family CPUs

- If min/max are same, then there is only one P-State, which does
  not make sense to have the P-State sysctl tree.
- If the first and last P-State entres do not match max/min, then
  just log a warning message.
- The original FID/VID checks should only be applied to intermediate
  P-States.
- Correct FID check against min FID.

8 years agoacpi/pstate: Fix error logging messages
Sepherosa Ziehau [Wed, 16 Mar 2011 12:13:42 +0000 (20:13 +0800)]
acpi/pstate: Fix error logging messages

8 years agokernel -- Remove mplock2.h header from files not using the mplock.
Venkatesh Srinivas [Wed, 16 Mar 2011 00:52:57 +0000 (17:52 -0700)]
kernel -- Remove mplock2.h header from files not using the mplock.

8 years agokernel -- Mark MQUEUE filterops MPSAFE.
Venkatesh Srinivas [Wed, 16 Mar 2011 00:44:00 +0000 (17:44 -0700)]
kernel -- Mark MQUEUE filterops MPSAFE.

MQ filterops use lockmgr locks to synchronize; don't need MPLOCK.

8 years agokernel -- Remove MPlock in sys_pselect().
Venkatesh Srinivas [Wed, 16 Mar 2011 00:42:51 +0000 (17:42 -0700)]
kernel -- Remove MPlock in sys_pselect().

Signal mask is synchronized by per-process token, not MPLOCK.

8 years agokernel - Remove no longer needed MCLSHIFT kernel option.
Joe Talbott [Tue, 15 Mar 2011 15:14:40 +0000 (11:14 -0400)]
kernel - Remove no longer needed MCLSHIFT kernel option.

8 years agobsd-family-tree: Sync with FreeBSD.
Sascha Wildner [Tue, 15 Mar 2011 02:50:10 +0000 (03:50 +0100)]
bsd-family-tree: Sync with FreeBSD.

8 years agoSync zoneinfo database with tzdata2011d from elsie.nci.nih.gov
Sascha Wildner [Tue, 15 Mar 2011 02:29:17 +0000 (03:29 +0100)]
Sync zoneinfo database with tzdata2011d from elsie.nci.nih.gov

australasia:    8.22 -> 8.23
etcetera:       8.2  -> 8.3
europe:         8.27 -> 8.28
northamerica:   8.41 -> 8.42

* australasia: Samoa's DST will end on April 2, instead of April 3, as
    previously assumed. Thanks to Raymond Hughes for information on the
    change.

* etcetera: Remove obsolete material on angle brackets in the TZ
    environment variable.

* europe: Due to a nationwide exam on March 27, Turkey will change into
    summer time zone one day later.

* northamerica: Cuba will start DST on March 20, one week later than
    previously assumed. Thanks to Steffen Thorsen for the first report
    of the change.

8 years agoUPGRADING: Say that a full build is actually a must for gcc41 -> gcc44.
Sascha Wildner [Mon, 14 Mar 2011 17:01:49 +0000 (18:01 +0100)]
UPGRADING: Say that a full build is actually a must for gcc41 -> gcc44.

In order for the fix for silencing the inline warnings to be picked
up, a new cross-compiler must be built (which will later be used for
compiling the kernel where the fix is needed). This won't work with
quickworld since quickworld skips the cross-tools step.

Reported-by: tuxillo
8 years agoioapic: Add tunable hw.ioapic_use_old
Sepherosa Ziehau [Mon, 14 Mar 2011 13:57:14 +0000 (21:57 +0800)]
ioapic: Add tunable hw.ioapic_use_old

Mainly to ease following new I/O APIC related code testing.

8 years agoioapic: Remove unused TUNABLE_INT
Sepherosa Ziehau [Mon, 14 Mar 2011 13:23:12 +0000 (21:23 +0800)]
ioapic: Remove unused TUNABLE_INT

Since apic_io_enable will be needed very early during boot,
its value is fetched explicitly by calling TUNABLE_FETCH_INT()

8 years agombuf - Factor common code out of m_getjcl() and m_getcl().
Joe Talbott [Wed, 9 Mar 2011 15:01:47 +0000 (10:01 -0500)]
mbuf - Factor common code out of m_getjcl() and m_getcl().

8 years agombuf - Fix m_getjcl()'s size argument's type.
Joe Talbott [Tue, 8 Mar 2011 19:31:11 +0000 (14:31 -0500)]
mbuf - Fix m_getjcl()'s size argument's type.

Use size_t in both the declaration and definition of m_getjcl().

Reported-By: Thomas Nikolajsen <thomas.nikolajsen@mail.dk>
8 years agowpi(4) - Use MJUMPAGESIZE mbuf clusters.
Joe Talbott [Fri, 4 Mar 2011 12:31:05 +0000 (07:31 -0500)]
wpi(4) - Use MJUMPAGESIZE mbuf clusters.

Based-On: FreeBSD

8 years agombuf - Add MJUMPAGESIZE mbuf cluster support.
Joe Talbott [Fri, 4 Mar 2011 12:28:29 +0000 (07:28 -0500)]
mbuf - Add MJUMPAGESIZE mbuf cluster support.

This is needed by Intel WiFi chipsets which require larger than usual
clusters.

Revert MCLSHIFT back to 11 to reduce mbuf cluster space usage and make
non-Intel Wifi NICs work without needing to adjust MCLSHIFT.

8 years agoMerge branch 'master' of git://crater.dragonflybsd.org/dragonfly
Joe Talbott [Mon, 14 Mar 2011 10:34:43 +0000 (06:34 -0400)]
Merge branch 'master' of git://crater.dragonflybsd.org/dragonfly

8 years agogcc44: Prevent __stack_chk_fail_local references from being hidden.
Sascha Wildner [Mon, 14 Mar 2011 00:13:37 +0000 (01:13 +0100)]
gcc44: Prevent __stack_chk_fail_local references from being hidden.

Dragonfly-bug: <http://bugs.dragonflybsd.org/issue2024>

8 years agoAdd missing wcsdup() prototype to <wchar.h>.
Sascha Wildner [Thu, 10 Mar 2011 21:56:22 +0000 (22:56 +0100)]
Add missing wcsdup() prototype to <wchar.h>.

This allows C++ programs to access this function at all.

Reported-by: Pierre Abbat <phma@phma.optus.nu>
8 years agokernel - missing PRELE() in ptrace(PT_DETACH).
YONETANI Tomokazu [Thu, 10 Mar 2011 10:31:04 +0000 (19:31 +0900)]
kernel - missing PRELE() in ptrace(PT_DETACH).

8 years agoamd(8): Fix a warning from the days when NULL was 0.
Sascha Wildner [Thu, 10 Mar 2011 03:21:26 +0000 (04:21 +0100)]
amd(8): Fix a warning from the days when NULL was 0.

8 years agoFix compilation with gcc44 and -fstack-protector.
Sascha Wildner [Thu, 10 Mar 2011 01:34:18 +0000 (02:34 +0100)]
Fix compilation with gcc44 and -fstack-protector.

Reported-by: various people
8 years agoioapic: Function renaming
Sepherosa Ziehau [Wed, 9 Mar 2011 14:22:25 +0000 (22:22 +0800)]
ioapic: Function renaming

8 years agolapic: Record the max LAPIC APIC ID
Sepherosa Ziehau [Wed, 9 Mar 2011 13:07:28 +0000 (21:07 +0800)]
lapic: Record the max LAPIC APIC ID

8 years agokernel - Add vm.cache_vmspaces boot-time tunable
Matthew Dillon [Wed, 9 Mar 2011 02:19:56 +0000 (18:19 -0800)]
kernel - Add vm.cache_vmspaces boot-time tunable

* Add vm.cache_vmspaces boot-time tunable, defaulting to 32 objects.
  This controls how many free vmspace+pmap structures can be maintained
  in the objcache.

* Change the sysref API a bit.  mag_capacity becomes nom_cache.

Related-to: IRC conversion thesjg & vsrinivas

8 years agokernel - Add lwkt.cache_threads boot-time tunable
Matthew Dillon [Wed, 9 Mar 2011 02:01:08 +0000 (18:01 -0800)]
kernel - Add lwkt.cache_threads boot-time tunable

* Add lwkt.cache_threads boot-time tunable.  This has to be set in
  /boot/loader.conf and controls how large a thread+kstack cache the
  kernel should maintain.

* Increase the default thread+kstack cache from 6 to 32 threads.

* Change the objcache_create*() API a little.  Instead of passing a
  mag_capacity field pass a nom_cache (nominal free objects to keep cached)
  field.

* Change the mag_capacity calculation to take into account small caches
  (the exec args cache) and remove the too-small-for-ncpus warning.

Related-to: IRC conversion thesjg & vsrinivas

8 years agokernel - Add kern.zone_cache sysctl
Matthew Dillon [Wed, 9 Mar 2011 01:14:32 +0000 (17:14 -0800)]
kernel - Add kern.zone_cache sysctl

* Add a sysctl to adjust how many empty zones each cpu caches for the
  slab allocator.  sysctl kern.zone_cache.

* Increase the default from 2 to 32 zones.

Related-to: IRC conversion thesjg & vsrinivas

8 years agoMerge branch 'master' of git://crater.dragonflybsd.org/dragonfly
Joe Talbott [Tue, 8 Mar 2011 19:41:45 +0000 (14:41 -0500)]
Merge branch 'master' of git://crater.dragonflybsd.org/dragonfly

8 years agokernel - Fix null pointer panic related to setproctitle()
Matthew Dillon [Tue, 8 Mar 2011 00:57:47 +0000 (16:57 -0800)]
kernel - Fix null pointer panic related to setproctitle()

* Fix a missing NULL check when setproctitle() is called for a
  program whos args were previously too large to fit in the
  per-process p_args cache.

Reported-by: John Marino <dragonflybsd@marino.st>
8 years agokernel - Fix ktrace -C and -d
Matthew Dillon [Mon, 7 Mar 2011 20:10:04 +0000 (12:10 -0800)]
kernel - Fix ktrace -C and -d

* Fix a system lockup when ktrace -C / -d is used (bug introduced with
  recent MP work).

8 years agoSync zoneinfo database with tzdata2011c from elsie.nci.nih.gov
Sascha Wildner [Mon, 7 Mar 2011 15:08:41 +0000 (16:08 +0100)]
Sync zoneinfo database with tzdata2011c from elsie.nci.nih.gov

leapseconds:    8.10 -> 8.11
northamerica:   8.40 -> 8.41
southamerica:   8.44 -> 8.45
zone.tab:       8.40 -> 8.41

* leapseconds: Update notice from IERS (no leap second at the end of
    June 2011).

* northamerica: Replace Juneau (Alaska) with Juneau, Sitka and
    Metlakatla.

* southamerica: Delay the end of the Chilean DST in 2011 until the
    first Sunday in April.

* zone.tab:  Replace Juneau (Alaska) with Juneau, Sitka and
    Metlakatla.

8 years agomdocml: Remove old files outside contrib/
Sascha Wildner [Mon, 7 Mar 2011 05:22:43 +0000 (06:22 +0100)]
mdocml: Remove old files outside contrib/

8 years agomdocml: Switch to using the files in contrib/mdocml
Sascha Wildner [Mon, 7 Mar 2011 05:21:41 +0000 (06:21 +0100)]
mdocml: Switch to using the files in contrib/mdocml

8 years agoMerge remote branch 'crater/vendor/MDOCML' into HEAD
Sascha Wildner [Mon, 7 Mar 2011 06:01:39 +0000 (07:01 +0100)]
Merge remote branch 'crater/vendor/MDOCML' into HEAD

8 years agomdocml: Add README.DRAGONFLY
Sascha Wildner [Mon, 7 Mar 2011 05:20:41 +0000 (06:20 +0100)]
mdocml: Add README.DRAGONFLY

8 years agoImport mdocml-1.10.9
Sascha Wildner [Mon, 7 Mar 2011 04:57:19 +0000 (05:57 +0100)]
Import mdocml-1.10.9

8 years agoinstall - Makefile.usr to use 2010Q4 on master
Matthew Dillon [Sun, 6 Mar 2011 18:36:43 +0000 (10:36 -0800)]
install - Makefile.usr to use 2010Q4 on master

* Use pkgsrc-2010Q4 on master for Makefile.usr

Submitted-by: Max Herrgard <herrgard@gmail.com>
8 years agokernel - Make sure thread is released before migrating
Matthew Dillon [Sun, 6 Mar 2011 18:24:49 +0000 (10:24 -0800)]
kernel - Make sure thread is released before migrating

* Make sure the current thread is in a released state before migrating it
  to another cpu.  Doing the release inside the lwkt_switch(), after we
  send the IPI, can result in a livelock.

Reported-by: Peter Avalos <peter@theshell.com>
8 years agoinstall - Add the src-create-shallow directive to Makefile.usr
Matthew Dillon [Sun, 6 Mar 2011 17:19:11 +0000 (09:19 -0800)]
install - Add the src-create-shallow directive to Makefile.usr

* Add the src-create-shallow directive to Makefile.usr

Submitted-by: John Marino <dragon@marino.st>
8 years agoMerge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly
Venkatesh Srinivas [Sun, 6 Mar 2011 13:20:31 +0000 (05:20 -0800)]
Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly

8 years agokernel -- file desc malloc zone overflow handling.
Venkatesh Srinivas [Sun, 6 Mar 2011 13:18:24 +0000 (05:18 -0800)]
kernel -- file desc malloc zone overflow handling.

Allow null return from mallocs for file descriptor arrays. Fork and exec
will ENOMEM when we cannot allocate FD arrays.

This is only a partial solution to bug 2019.