dragonfly.git
13 years agorelease - Branch 2.10 (set up new master for 2.11) v2.11.0
Matthew Dillon [Wed, 20 Apr 2011 02:57:52 +0000 (19:57 -0700)]
release - Branch 2.10 (set up new master for 2.11)

* Edit sys/sys/param.h, sys/conf/newvers.sh

13 years agokernel - Add kqueue support to ulpt for CUPS printing
Matthew Dillon [Wed, 20 Apr 2011 00:26:30 +0000 (17:26 -0700)]
kernel - Add kqueue support to ulpt for CUPS printing

* Adjust the ulpt driver to add kqueue support (reporting always write-ready).
  Otherwise CUPS will stall indefinitely on a usb printer device.

* NOTE: For CUPS operation /dev/ulpt* must be chgrp'd lp and modes 664,
by adding this to your /etc/devfs.conf:

perm ulpt* root:lp 664

(group 'lp' is added by the CUPS package).

13 years agonewfs_hammer: update checks on undosize and fssize minimum
Thomas Nikolajsen [Tue, 19 Apr 2011 22:20:32 +0000 (00:20 +0200)]
newfs_hammer: update checks on undosize and fssize minimum

Unless -f options given undosize must be at least 500MB
and fssize at least 10GB (50GB recommended).

Also fix a few extra spaces.

13 years agohammer.8: improve general description and markup
Thomas Nikolajsen [Tue, 19 Apr 2011 22:18:20 +0000 (00:18 +0200)]
hammer.8: improve general description and markup

13 years agohammer.5: add info on dedup and improve general description and markup
Thomas Nikolajsen [Tue, 19 Apr 2011 22:14:56 +0000 (00:14 +0200)]
hammer.5: add info on dedup and improve general description and markup

13 years agonrelease - index.html: fix stale links
Thomas Nikolajsen [Tue, 19 Apr 2011 22:10:50 +0000 (00:10 +0200)]
nrelease - index.html: fix stale links

13 years agonrelease - update README w/ HAMMER instructions etc
Thomas Nikolajsen [Tue, 19 Apr 2011 22:02:30 +0000 (00:02 +0200)]
nrelease - update README w/ HAMMER instructions etc

 - Add instructions on manual HAMMER install
 - Default USB disk name is 'da8'
 - SILI disks uses 'da' name, default 'da0'
 - EHCI (USB 2.0) is enabled by default

13 years agohammer - Fix version output
Antonio Huete Jimenez [Tue, 19 Apr 2011 18:58:07 +0000 (20:58 +0200)]
hammer - Fix version output

Do not try to display WIP version if there isn't one.

13 years agobitstring.h -- Correct bit_fls and bit_nsearch
Venkatesh Srinivas [Tue, 19 Apr 2011 10:36:43 +0000 (03:36 -0700)]
bitstring.h -- Correct bit_fls and bit_nsearch

bit_nsearch was searching for one-too-many bits and was walking the whole set.

Submitted-by: Luis Useche <useche@gmail.com>
13 years agoacpi: Reduce log verbosity
Sepherosa Ziehau [Tue, 19 Apr 2011 06:26:48 +0000 (14:26 +0800)]
acpi: Reduce log verbosity

13 years agotest from machine bugg
Sepherosa Ziehau [Tue, 19 Apr 2011 06:21:10 +0000 (14:21 +0800)]
test from machine bugg

13 years agoAdd a final newline to the last file that didn't have one.
Sascha Wildner [Sun, 17 Apr 2011 23:24:41 +0000 (01:24 +0200)]
Add a final newline to the last file that didn't have one.

13 years agoeditline(3): Use getpwnam_r() and getpwuid_r() and raise WARNS to 6.
Sascha Wildner [Sun, 17 Apr 2011 22:04:54 +0000 (00:04 +0200)]
editline(3): Use getpwnam_r() and getpwuid_r() and raise WARNS to 6.

13 years agokbdcontrol(1): Raise WARNS to 6 and fix warnings.
Sascha Wildner [Sun, 17 Apr 2011 21:36:29 +0000 (23:36 +0200)]
kbdcontrol(1): Raise WARNS to 6 and fix warnings.

13 years agovknetd(8): Raise WARNS to 6 and fix warnings.
Sascha Wildner [Sun, 17 Apr 2011 21:13:54 +0000 (23:13 +0200)]
vknetd(8): Raise WARNS to 6 and fix warnings.

13 years agoinstaller/LiveCD: Do no longer set kern.emergency_intr_enable to 1.
Sascha Wildner [Sun, 17 Apr 2011 11:50:00 +0000 (13:50 +0200)]
installer/LiveCD: Do no longer set kern.emergency_intr_enable to 1.

In-discussion-with: sephe

13 years agoacpi/pcib: If bus does not present, give other bus drivers chance
Sepherosa Ziehau [Sun, 17 Apr 2011 10:58:26 +0000 (18:58 +0800)]
acpi/pcib: If bus does not present, give other bus drivers chance

- Call acpi_DeviceIsPresent() during probing, so that if bus does not
  present other bus drivers could have chance to take over the bus.
- In acpi_pcib_attach(), assert that bus is present, since the presence
  of the bus is checked during probing.

Reported-by: swildner@
13 years agoioapic/abi; Reduce log verbosity
Sepherosa Ziehau [Sun, 17 Apr 2011 08:56:31 +0000 (16:56 +0800)]
ioapic/abi; Reduce log verbosity

13 years agoacpi: FACS is already loaded, don't load it manually again
Sepherosa Ziehau [Sun, 17 Apr 2011 08:24:53 +0000 (16:24 +0800)]
acpi: FACS is already loaded, don't load it manually again

13 years agoacpi: Enable ACPI reset by default
Sepherosa Ziehau [Sun, 17 Apr 2011 08:08:37 +0000 (16:08 +0800)]
acpi: Enable ACPI reset by default

- Enable ACPI reset if FADT has this feature bit set
- During ACPI reset, use AcpiReset() instead of rolling our own

Obtained-from: FreeBSD (r213755 jkim@freebsd.org)

13 years agoacpi/pstate: Add tunable to allow BIOS whacking start/max FID/VID
Sepherosa Ziehau [Sun, 17 Apr 2011 07:21:55 +0000 (15:21 +0800)]
acpi/pstate: Add tunable to allow BIOS whacking start/max FID/VID

This tunable is set to 1 (stringent check) by default.

DragonFly-issue: http://bugs.dragonflybsd.org/issue2025

13 years agopowerd: Wait hw.acpi.cpu.px_dom* sysctl to be created by kernel
Sepherosa Ziehau [Sun, 17 Apr 2011 07:00:54 +0000 (15:00 +0800)]
powerd: Wait hw.acpi.cpu.px_dom* sysctl to be created by kernel

Since hw.acpi.cpu.px_dom* creation is queued into ACPI taskqueue
and ACPI taskqueue is shared across various ACPI modules, any delay
in other modules may cause hw.acpi.cpu.px_dom* to be created at
quite a later time (e.g. cmbat module's task could take quite a lot
of time).

13 years agoacpi: Enable GPE for button and lid, if they have _PRW object
Sepherosa Ziehau [Sun, 17 Apr 2011 05:00:17 +0000 (13:00 +0800)]
acpi: Enable GPE for button and lid, if they have _PRW object

For devices which has _PRW object, AcpiSetupGpeForWake() will be called,
however, AcpiSetupGpeForWake() will disable GPE, which causes devices
like button and lid to stop function if they have _PRW object.  So for
button and lid, we explicitly enable GPE if they have _PRW object.

Reported-by: y0netan1@
13 years agoacpi: Skip \_SB_ and \_TZ_ only for devices.
Sepherosa Ziehau [Sun, 17 Apr 2011 04:39:19 +0000 (12:39 +0800)]
acpi: Skip \_SB_ and \_TZ_ only for devices.

Obtained-from: FreeBSD (r214765 jkim@freebsd.org)

  Adjust a comment to clarify why \_SB_ and \_TZ_ are defined as device
  type in ACPICA.  Reshuffle the code a bit to make sure this kludge only
  applies to these two specical cases and to make it cleaner.

13 years agoacpi: Restore old AcpiWalkNamespace semantic
Sepherosa Ziehau [Sun, 17 Apr 2011 04:12:17 +0000 (12:12 +0800)]
acpi: Restore old AcpiWalkNamespace semantic

Noticed-by: y0netan1@
13 years agoSh: Add test for getting length of string in double-quotes.
Peter Avalos [Sat, 16 Apr 2011 21:51:32 +0000 (11:51 -1000)]
Sh: Add test for getting length of string in double-quotes.

13 years agosh: Add test for obscure and ambiguous ${#?}.
Peter Avalos [Sat, 16 Apr 2011 21:48:06 +0000 (11:48 -1000)]
sh: Add test for obscure and ambiguous ${#?}.

Obtained-from: FreeBSD

13 years agosh: Add test for expanding of quoted positional parameters in case.
Peter Avalos [Sat, 16 Apr 2011 21:46:25 +0000 (11:46 -1000)]
sh: Add test for expanding of quoted positional parameters in case.

13 years agosh: Add some tests for ${#parameter}.
Peter Avalos [Sat, 16 Apr 2011 21:40:50 +0000 (11:40 -1000)]
sh: Add some tests for ${#parameter}.

Obtained-from: FreeBSD

13 years agosh: Add some tests for omitting whitespace.
Peter Avalos [Sat, 16 Apr 2011 21:36:09 +0000 (11:36 -1000)]
sh: Add some tests for omitting whitespace.

Obtained-from: FreeBSD

13 years agosh: Split off some special behavior into separate regress tests.
Peter Avalos [Sat, 16 Apr 2011 21:33:04 +0000 (11:33 -1000)]
sh: Split off some special behavior into separate regress tests.

Obtained-from: FreeBSD

13 years agosh(1): Describe subshell environment, command substitution better
Peter Avalos [Sat, 16 Apr 2011 21:21:02 +0000 (11:21 -1000)]
sh(1): Describe subshell environment, command substitution better

POSIX does not require the shell to fork for a subshell environment, and
we use that possibility in various ways (command substitutions with a
single command and most subshells that are the final command of a shell
process).  Therefore do not tie subshells to forking in the man page.

Also, fix some sentences with excessive semicolons.

Obtained-from:  FreeBSD

13 years agosh: Fix some parameter expansion variants ${#...}.
Peter Avalos [Sat, 16 Apr 2011 21:17:03 +0000 (11:17 -1000)]
sh: Fix some parameter expansion variants ${#...}.

These already worked: $# ${#} ${##} ${#-} ${#?}
These now work as well: ${#+word} ${#-word} ${##word} ${#%word}

There is an ambiguity in the standard with ${#?}: it could be the length of
$? or it could be $# giving an error in the (impossible) case that it is not
set. We continue to use the former interpretation as it seems more useful.

Obtained-from:  FreeBSD

13 years agosh: Reduce diffs to FreeBSD in the arith code.
Peter Avalos [Sat, 16 Apr 2011 21:10:07 +0000 (11:10 -1000)]
sh:  Reduce diffs to FreeBSD in the arith code.

Obtained-from:   FreeBSD

13 years agoctags(1): Raise WARNS to 6 and fix warnings.
Sascha Wildner [Sat, 16 Apr 2011 20:29:19 +0000 (22:29 +0200)]
ctags(1): Raise WARNS to 6 and fix warnings.

13 years agotalk(1): Raise WARNS to 6 and fix warnings.
Sascha Wildner [Sat, 16 Apr 2011 20:22:24 +0000 (22:22 +0200)]
talk(1): Raise WARNS to 6 and fix warnings.

13 years agousbhidctl(1): Raise WARNS to 6 and fix warnings.
Sascha Wildner [Sat, 16 Apr 2011 20:22:08 +0000 (22:22 +0200)]
usbhidctl(1): Raise WARNS to 6 and fix warnings.

13 years agoacpi/ec: Bring in more GPE fixes from FreeBSD head (acpi_ec.c r216965)
Sepherosa Ziehau [Sat, 16 Apr 2011 16:58:34 +0000 (00:58 +0800)]
acpi/ec: Bring in more GPE fixes from FreeBSD head (acpi_ec.c r216965)

13 years agoacpi: Sync ec with FreeBSD 8
Sepherosa Ziehau [Sat, 16 Apr 2011 15:12:05 +0000 (23:12 +0800)]
acpi: Sync ec with FreeBSD 8

13 years agomount/umount: Small whitespace fix in the usage().
Sascha Wildner [Sat, 16 Apr 2011 08:54:07 +0000 (10:54 +0200)]
mount/umount: Small whitespace fix in the usage().

13 years agomount, umount: Implement the '-F' option to specify an alternate fstab file.
YONETANI Tomokazu [Sat, 16 Apr 2011 08:02:49 +0000 (17:02 +0900)]
mount, umount: Implement the '-F' option to specify an alternate fstab file.

This also fixes jail_${jail}_fstab option in /etc/rc.d/jail .

Taken-from: FreeBSD (r113220 by mdodd@freebsd.org)

13 years agokernel - Fix apparent timing race in early usb keyboard polling code
Matthew Dillon [Fri, 15 Apr 2011 17:58:32 +0000 (10:58 -0700)]
kernel - Fix apparent timing race in early usb keyboard polling code

* Fix an apparent timing race where a USB command does not complete
  prior to the poll issued with the command.  Perform another poll
  in a loop to deal with it.

* Problem appears to occur w/ohci's early poll prior to ehci attachment.

Reported-by: Antonio Huete Jimenez <ahuete.devel@gmail.com>
13 years agoasf(8): Fix module path.
Sascha Wildner [Fri, 15 Apr 2011 15:39:40 +0000 (17:39 +0200)]
asf(8): Fix module path.

13 years agokernel - Fix hold race and catch bad vm_object terminations
Matthew Dillon [Fri, 15 Apr 2011 15:32:56 +0000 (08:32 -0700)]
kernel - Fix hold race and catch bad vm_object terminations

* vm_object_hold_wait() currently also needs the vm_token to safely
  test rb_memq.

* Add code to complain if a VM object's rb_memq is not empty when
  the object is being terminated.

13 years agokernel - MFC an IPSEC security fix related to nested compressed frames
Matthew Dillon [Fri, 15 Apr 2011 15:31:12 +0000 (08:31 -0700)]
kernel - MFC an IPSEC security fix related to nested compressed frames

* MFC an IPSEC security fix realted to nested compresesd frames

* Note that this code path is disabled and non-working in DFly anyway,
  at least atm.

Taken-from: FreeBSD

13 years agovkernel64 - Start work on kld support
Matthew Dillon [Fri, 15 Apr 2011 15:29:55 +0000 (08:29 -0700)]
vkernel64 - Start work on kld support

* This is a non-working commit but it progresses the issue a bit.

13 years agokernel - remove extra tsleep_interlock() calo
Matthew Dillon [Fri, 15 Apr 2011 15:27:19 +0000 (08:27 -0700)]
kernel - remove extra tsleep_interlock() calo

* Remove an extra tsleep_interlock() call that slipped into the
  tsleep() code.

13 years agokernel - Change ccb state with lock held
Matthew Dillon [Fri, 15 Apr 2011 15:24:55 +0000 (08:24 -0700)]
kernel - Change ccb state with lock held

* When putting a CCB back into the ap_ccb_free list do not
  change the state until after ap_ccb_lock has been acquired.

13 years agonrelease - Add targets to Makefile.usr
Matthew Dillon [Fri, 15 Apr 2011 15:20:44 +0000 (08:20 -0700)]
nrelease - Add targets to Makefile.usr

* Add src-create-repo and pkgsrc-create-repo targets, which create
  only the repo and do not attempt to checkout the source.

* Add pkgsrc-2011Q1 to the list of branches.

13 years agotests - Adjustments to memcpy/memzero test
Matthew Dillon [Fri, 15 Apr 2011 15:19:37 +0000 (08:19 -0700)]
tests - Adjustments to memcpy/memzero test

* Remove assembly from these tests so they compile on x86-64.

* Clean up some timing reporting issues.

13 years agonrelease - Adjust source inclusion, cleanups
Matthew Dillon [Fri, 15 Apr 2011 15:16:46 +0000 (08:16 -0700)]
nrelease - Adjust source inclusion, cleanups

* When including sources only include the git repo, do not also include
  the broken-out source.

* Add more slop to the size calculation for the usb image

* tmpfs entries in /etc/fstab should specify 'dummy' as the device,
  not 'tmpfs'.

* Add /usr/obj as a tmpfs mount.

* misc cleanups.

13 years agosppp(4): Fix two x86_64 warnings.
Sascha Wildner [Fri, 15 Apr 2011 13:45:56 +0000 (15:45 +0200)]
sppp(4): Fix two x86_64 warnings.

Submitted-by: Edward O'Callaghan <eocallaghan@auroraux.org>
13 years agoMore fixes for snapshot building.
Sascha Wildner [Fri, 15 Apr 2011 12:40:46 +0000 (14:40 +0200)]
More fixes for snapshot building.

13 years agopf(4): Fix two x86_64 warnings.
Sascha Wildner [Fri, 15 Apr 2011 12:31:05 +0000 (14:31 +0200)]
pf(4): Fix two x86_64 warnings.

Submitted-by: Edward O'Callaghan <eocallaghan@auroraux.org>
13 years agoFix snapshot building, part 2.
Sascha Wildner [Fri, 15 Apr 2011 09:11:24 +0000 (11:11 +0200)]
Fix snapshot building, part 2.

13 years agokeylogout(1): Fix a warning and raise WARNS to 6.
Sascha Wildner [Fri, 15 Apr 2011 08:31:27 +0000 (10:31 +0200)]
keylogout(1): Fix a warning and raise WARNS to 6.

13 years agoMerge branch 'master' of git://crater.dragonflybsd.org/dragonfly
Joe Talbott [Fri, 15 Apr 2011 01:28:28 +0000 (21:28 -0400)]
Merge branch 'master' of git://crater.dragonflybsd.org/dragonfly

13 years agoloader.conf.5 - Add note about 'boot_verbose'.
Joe Talbott [Fri, 15 Apr 2011 01:25:22 +0000 (21:25 -0400)]
loader.conf.5 - Add note about 'boot_verbose'.

* Since this option is helpful with debugging I consider it useful
  enough to be in the man page.

13 years agoacpi: Partly revert 40ad81aa20e2ba47db1f04204a60ffd06b513150
Sepherosa Ziehau [Thu, 14 Apr 2011 12:09:08 +0000 (20:09 +0800)]
acpi: Partly revert 40ad81aa20e2ba47db1f04204a60ffd06b513150

The difference between the original version and the current version
is that we test whether SCI could be shared or not, before falling
back to share PCI interrupt with SCI

13 years agoacpi: Detect SCI interrupt mode, if user does not specified one.
Sepherosa Ziehau [Thu, 14 Apr 2011 11:24:39 +0000 (19:24 +0800)]
acpi: Detect SCI interrupt mode, if user does not specified one.

13 years agomd5(1): Fix typo.
Sascha Wildner [Thu, 14 Apr 2011 07:37:09 +0000 (09:37 +0200)]
md5(1): Fix typo.

Reported-by: Maurizio Lombardi <m.lombardi85@gmail.com>
Dragonfly-bug: <http://bugs.dragonflybsd.org/issue2043>

13 years agosystimer: Fix statclock() intr% counting for i8254 interrupt cputimer
Sepherosa Ziehau [Thu, 14 Apr 2011 05:10:55 +0000 (13:10 +0800)]
systimer: Fix statclock() intr% counting for i8254 interrupt cputimer

If i8254 is used as interrupt cputimer, it will send IPIs to APs to get
statclock() called.  In order to detect fast interrupt, statclock()
tests gd_intr_nesting_level to see whether it should bump intr% or not,
however, during IPI processing, gd_intr_nesting_level is bumped up, which
tricks statclock() to believe that intr% should be incremented.  This
usually leads to 100% interrupt time on APs reported by utilities like
systat(1).  To solve this problem:

- Pass in_ipi to systimer functions to indicate whether the functions are
  called during IPI processing or not.
- In statclock(): if it is called during IPI processing, using
  (gd_intr_nesting_level - 1) to test whether intr% should be incremented
  or not.

Additional cleanup:
- Make systimer_init_*() interface stricter, by using "systimer_func_t"
  instead of "void *"

13 years agotest - Add random seek/read program
Matthew Dillon [Wed, 13 Apr 2011 16:33:25 +0000 (09:33 -0700)]
test - Add random seek/read program

* Add program which reads a random 512 byte block in a device or file
  with 32 concurrent accessors and displays the results.

* make /tmp/rr1 from /usr/src/test/sysperf

13 years agoelcr: Initialize variable before calling TUNABLE_INT_FETCH()
Sepherosa Ziehau [Wed, 13 Apr 2011 13:28:14 +0000 (21:28 +0800)]
elcr: Initialize variable before calling TUNABLE_INT_FETCH()

If the tunable is not defined, the variable will not be initailized at all,
which causes random ELCR probing failure.

13 years agoidentcpu: Fix some comment whitespace.
Sascha Wildner [Wed, 13 Apr 2011 09:24:51 +0000 (11:24 +0200)]
identcpu: Fix some comment whitespace.

13 years agoidentcpu: Add some Features2 strings.
Sascha Wildner [Wed, 13 Apr 2011 09:13:09 +0000 (11:13 +0200)]
identcpu: Add some Features2 strings.

13 years agoacpi: Properly configure SCI and correctly share it during PCI interrupt routing
Sepherosa Ziehau [Wed, 13 Apr 2011 08:21:02 +0000 (16:21 +0800)]
acpi: Properly configure SCI and correctly share it during PCI interrupt routing

13 years agoioapic: Allow interrupt mode reconfigure
Sepherosa Ziehau [Wed, 13 Apr 2011 07:38:59 +0000 (15:38 +0800)]
ioapic: Allow interrupt mode reconfigure

The prevention of interrupt mode change should be based on whether
the IRQ is enabled or not.

13 years agoFix snapshot building (hopefully).
Sascha Wildner [Wed, 13 Apr 2011 08:08:27 +0000 (10:08 +0200)]
Fix snapshot building (hopefully).

Since pkgsrc making USE_DESTDIR active by default snapshot building was
broken since it would try to build a package for the bootstrap and failed:

=> Creating binary package /usr/pkgsrc/packages/All/bootstrap-mk-files-20090807nb2.tgz
pkg_create: Package building is not supported in bootstrap mode

Until this is fixed in pkgsrc, set USE_DESTDIR to "no" to fix snapshot
building.

13 years agoacpi: Add functions to configure SCI and return SCI information
Sepherosa Ziehau [Wed, 13 Apr 2011 07:16:59 +0000 (15:16 +0800)]
acpi: Add functions to configure SCI and return SCI information

13 years agokernel - Fix mbuf overflow issue w/ iwn.
Matthew Dillon [Wed, 13 Apr 2011 07:06:12 +0000 (00:06 -0700)]
kernel - Fix mbuf overflow issue w/ iwn.

* Give iwn the same MJUMPAGESIZE treatment as wpi.

* Fixed a mbuf overflow panic.

Reported-by: Peter Avalos <peter@theshell.com>
13 years agoicu: Configure interrupt trigger mode using ELCR if possible
Sepherosa Ziehau [Wed, 13 Apr 2011 05:33:31 +0000 (13:33 +0800)]
icu: Configure interrupt trigger mode using ELCR if possible

13 years agokernel - Add quad intel gige PCIe ethernet adapter pci ids
Matthew Dillon [Wed, 13 Apr 2011 03:42:44 +0000 (20:42 -0700)]
kernel - Add quad intel gige PCIe ethernet adapter pci ids

* Add E1000_DEV_ID_82576_QUAD_COPPER_ET2, probes igbX.

Taken-from: FreeBSD

13 years agoelcr: File relocate
Sepherosa Ziehau [Wed, 13 Apr 2011 02:58:43 +0000 (10:58 +0800)]
elcr: File relocate

13 years agoMakefile_upgrade.inc: Fix a few typos.
Sascha Wildner [Tue, 12 Apr 2011 23:15:47 +0000 (01:15 +0200)]
Makefile_upgrade.inc: Fix a few typos.

13 years agoacpi/fadt: Hide SCI IRQ logging under bootverbose
Sepherosa Ziehau [Tue, 12 Apr 2011 12:02:18 +0000 (20:02 +0800)]
acpi/fadt: Hide SCI IRQ logging under bootverbose

13 years agoRename the memoryallocators(9) manual page to memory(9).
Sascha Wildner [Tue, 12 Apr 2011 12:04:17 +0000 (14:04 +0200)]
Rename the memoryallocators(9) manual page to memory(9).

Analogous to memory(3) for userland.

While here, do some minor cleanup on it and link back to it from the
individual allocator manual pages.

13 years agoacpi/sdt/fadt: Build as standard files
Sepherosa Ziehau [Tue, 12 Apr 2011 11:29:49 +0000 (19:29 +0800)]
acpi/sdt/fadt: Build as standard files

13 years agotcp_connect: Rearrange tcp_lport_extension run logic, no functional change
Sepherosa Ziehau [Tue, 12 Apr 2011 09:07:30 +0000 (17:07 +0800)]
tcp_connect: Rearrange tcp_lport_extension run logic, no functional change

13 years agotcp_connect: Calculate local address if it is not done yet
Sepherosa Ziehau [Tue, 12 Apr 2011 08:57:41 +0000 (16:57 +0800)]
tcp_connect: Calculate local address if it is not done yet

13 years agoc99(1): DragonFly has librt, so do not discard -lrt.
Sascha Wildner [Tue, 12 Apr 2011 08:48:15 +0000 (10:48 +0200)]
c99(1): DragonFly has librt, so do not discard -lrt.

13 years agotcp: Create seperate local port spaces for laddr/faddr/fport triple
Sepherosa Ziehau [Tue, 12 Apr 2011 08:27:46 +0000 (16:27 +0800)]
tcp: Create seperate local port spaces for laddr/faddr/fport triple

TCP local ports could easily get depleted under stress due to
TIME_WAIT state.  Since TIME_WAIT state is used to protect
laddr/lport/faddr/fport, we actually just need to make sure that
lport is not duplicated for each laddr/faddr/fport triple intead of
making sure that lport is not duplicated globally.

Add sysctl net.inet.tcp.lportext to enable seperate local port spaces
for laddr/faddr/fport triple; it is disabled by default.

13 years agotcp: Make sure that netmsg's so is same as inp->inp_socket
Sepherosa Ziehau [Tue, 12 Apr 2011 06:16:19 +0000 (14:16 +0800)]
tcp: Make sure that netmsg's so is same as inp->inp_socket

13 years ago<aio.h>: Add aio_fsync() prototype.
Sascha Wildner [Mon, 11 Apr 2011 22:30:15 +0000 (00:30 +0200)]
<aio.h>: Add aio_fsync() prototype.

13 years agoHAMMER VFS - Fix degenerate stall condition in flusher during unmount
Matthew Dillon [Mon, 11 Apr 2011 17:07:37 +0000 (10:07 -0700)]
HAMMER VFS - Fix degenerate stall condition in flusher during unmount

* Fix a case where the flusher can stall during an unmount.

* Rework the flusher sequence numbers to always allocate a sequence number
  when a flush is requested, remove the flusher.act field, and rejigger the
  code a bit.

* This also cleans up an edge case when a full sync is inserted (when taking
  snapshots, filesystem sync, etc), by inserting several sequence numbers to
  completely flush the UNDO/REDO FIFO before moving on to the next active
  flush group.

Reported-by: Sepherosa Ziehau <sepherosa@gmail.com>, Francois Tigeot <ftigeot@wolfpond.org>, numerous others.
13 years agoacpi: Typo in error logging message
Sepherosa Ziehau [Mon, 11 Apr 2011 09:13:33 +0000 (17:13 +0800)]
acpi: Typo in error logging message

13 years agoplatform: Setup bootverbose earlier
Sepherosa Ziehau [Mon, 11 Apr 2011 09:05:57 +0000 (17:05 +0800)]
platform: Setup bootverbose earlier

13 years agobufcache(9): Remove obsolete reference to namei.
Venkatesh Srinivas [Mon, 11 Apr 2011 03:54:53 +0000 (20:54 -0700)]
bufcache(9): Remove obsolete reference to namei.

13 years agoiwn(4) - Fix locking in iwn_ioctl().
Joe Talbott [Mon, 11 Apr 2011 03:21:59 +0000 (23:21 -0400)]
iwn(4) - Fix locking in iwn_ioctl().

iwn_ioctl() is already locked so call the non-locking
versions iwn_init_locked() and iwn_stop_locked().

13 years agokernel - Fix degenerate condition for ahci/cam disks without tags
Matthew Dillon [Sun, 10 Apr 2011 16:00:52 +0000 (09:00 -0700)]
kernel - Fix degenerate condition for ahci/cam disks without tags

* Fix a calculation that resolve to a value of at least 1, but
  was resolving to a value of 0 for USB sticks and other disk
  devices which do not negotiate NCQ.

Reported-by: Matthias Rampke <matthias@rampke.de>, swildner, others
13 years agoHAMMER VFS - Implement async I/O for double-buffer strategy case
Matthew Dillon [Sun, 10 Apr 2011 15:46:04 +0000 (08:46 -0700)]
HAMMER VFS - Implement async I/O for double-buffer strategy case

* When vfs.hammer.double_buffer is enabled the HAMMER strategy code
  was running synchronously.  This creates numerous problems including
  extra stalls when read-ahead is issued.

* Use the new breadcb() function to allow nominal double_buffer strategy
  operations to run asynchronously.  Essentially the original buffer and
  CRC is recorded in the device bio and the copyback is made in the
  callback.

* This improves performance vfs.hammer.double_buffer is enabled.

13 years agokernel - Add breadcb() function - async I/O w/completion callback
Matthew Dillon [Sun, 10 Apr 2011 15:43:12 +0000 (08:43 -0700)]
kernel - Add breadcb() function - async I/O w/completion callback

* Add breadcb().  This function performs an asynchronous read for the
  requested buffer and issues the specified callback on completion.
  If the buffer is already B_CACHE the callback is made synchronously
  and BIO_DONE is pre-set on the bio so the callback function can
  determine if I/O occured or not (and whether it must bpdone() the buf).

* This function works differently from and is more flexible than the
  previously removed breada(), and will be used by HAMMER.

13 years agointrcnt: Fix long standing interrupt name/count array mismatch
Sepherosa Ziehau [Sun, 10 Apr 2011 11:18:17 +0000 (19:18 +0800)]
intrcnt: Fix long standing interrupt name/count array mismatch

hw.intrnames always returns all interrupts' name, while hw.intrcnt
only returns count of interrupts that get installed.  This
mismatching cause utilities like vmstat(8) to report wrong interrupt
counts.

Keep the old symantic of hw.intrcnt and add hw.intrcnt_all, which
returns count of all interrupts.  Let vmstat(8) and systat(1) use
hw.intrcnt_all.

13 years agorc.d/sshd: Create /etc/ssh/ssh_host_ecdsa_key if it doesn't exist.
Peter Avalos [Sun, 10 Apr 2011 07:35:21 +0000 (21:35 -1000)]
rc.d/sshd: Create /etc/ssh/ssh_host_ecdsa_key if it doesn't exist.

13 years agokernel - Fix CAM tag reservation for AHCI and SILI driver
Matthew Dillon [Sun, 10 Apr 2011 02:56:24 +0000 (19:56 -0700)]
kernel - Fix CAM tag reservation for AHCI and SILI driver

* These drivers were adjusting the number of available tags upward
  using the wrong CAM call, which resulted in CAM not actually queueing
  multiple tags.  Use the correct call.

* With the issue fix and verified up to a combined 31 read and write
  requests can now be queued in parallel to a SATA drive via the AHCI
  driver.  It does appear to make a difference.

13 years agokernel - Limit tags allocated to reads or writes for CAM/scsi/ahci disks
Matthew Dillon [Sun, 10 Apr 2011 02:52:29 +0000 (19:52 -0700)]
kernel - Limit tags allocated to reads or writes for CAM/scsi/ahci disks

* Limit the number of tags which can be taken up read or write requests.
  If all tags are taken up by one type of request then the other type
  of request can become starved.

* This is particularly important because drives usually cache writes and
  return an immediate completion, so even if the system is reading heavily
  enough to eat a lot of tags we always want a few left in reserve to
  drain those writes in the drive's write cache.

* A similar situation can occur when flushing a lot of write data, which
  is almost guaranteed to fill up not only available tags but also the
  drive's write cache.  When the drive's write cache becomes full then
  write requests begin to stall (no longer return instantly), causing
  reads to become starved.

* When no tags are available give reads priority over writes for
  the moment.  This needs to be fixed.

13 years agokernel - Adjust AHCI to properly report SATA-III support
Matthew Dillon [Sun, 10 Apr 2011 00:42:01 +0000 (17:42 -0700)]
kernel - Adjust AHCI to properly report SATA-III support

* This is primarily so 6gbit/sec links and support is properly reported.
  The links already negotiated 6gbit/sec correctly.

13 years agogcc44, crtstuff: Provide -fPIE support
John Marino [Sat, 9 Apr 2011 13:14:25 +0000 (15:14 +0200)]
gcc44, crtstuff: Provide -fPIE support

Properly support Position Independent Executables (PIE) generation by
linking PIE binaries with specially-built Scrt1.o instead of crt1.o.
The latter is built without the -fPIC flag.

For the i386 version, gcc-2 code was first purged, and then the new
assembly was placed in a separate file.  All data extracted by the
assembler stub as explicit parameters.  The hidden _start1 symbol is used
as an interface between the assembly and C code.

The CFLAGS -fkeep-inline-functions was removed as it was legacy FreeBSD
code that has been long since removed.  The CFLAGS -elf was removed as
all DragonFly targets are elf.  The LDFLAGS -elf was removed because it
was getting interpreted as "-entry=lf" by ld.  LDFLAGS weren't even used
before this commit so it's always been completely extraneous.

For x86_64, the no-omit-frame-pointer flag was added during the build of
crt1.o.  For the builtin gcc function __builtin_frame_address to work, all
call frames need to save the frame pointer.  In particular, this is
important for the upper frame that should terminate the chain.

13 years agomandoc(1): For now, don't install the mandoc.3 manual page.
Sascha Wildner [Sat, 9 Apr 2011 22:13:43 +0000 (00:13 +0200)]
mandoc(1): For now, don't install the mandoc.3 manual page.

I'll split it into libmandoc and the mandoc utility after the release.

13 years agomandoc(1): Adjust Makefile for 1.11.1.
Sascha Wildner [Sat, 9 Apr 2011 21:56:08 +0000 (23:56 +0200)]
mandoc(1): Adjust Makefile for 1.11.1.