Matthew Dillon [Thu, 2 Aug 2007 06:56:05 +0000 (06:56 +0000)]
Breakout a target for preview as well, and use the slip tag for the
release.
Matthew Dillon [Thu, 2 Aug 2007 06:53:14 +0000 (06:53 +0000)]
The distribution installs a Makefile in /usr with easy-to-use targets to
create a pkgsrc distribution and to obtain the DragonFly CVS repository
and checkout/update /usr/src. A make in /usr with no arguments will list
available options.
Sascha Wildner [Thu, 2 Aug 2007 00:21:54 +0000 (00:21 +0000)]
We have <sys/select.h>. Note that in the SYNOPSIS.
Submitted-by: Nicolas Thery <nthery@gmail.com>
Dragonfly-bug: <http://bugs.dragonflybsd.org/issue756>
Sascha Wildner [Thu, 2 Aug 2007 00:04:59 +0000 (00:04 +0000)]
Add keys for 'previous screen' (Shift+PrintScr).
Sascha Wildner [Wed, 1 Aug 2007 22:54:00 +0000 (22:54 +0000)]
s/atacontrol/natacontrol/ in messages.
Peter Avalos [Wed, 1 Aug 2007 22:24:34 +0000 (22:24 +0000)]
Fix for CVE-2007-3798 obtained from the vendor. This is already included
in a newer version of tcpdump.
Sascha Wildner [Wed, 1 Aug 2007 21:56:40 +0000 (21:56 +0000)]
Add MLINK for krateprintf().
Sascha Wildner [Wed, 1 Aug 2007 21:44:07 +0000 (21:44 +0000)]
Add some words about krateprintf().
Sascha Wildner [Wed, 1 Aug 2007 21:39:29 +0000 (21:39 +0000)]
Fix return values.
Sascha Wildner [Wed, 1 Aug 2007 12:35:29 +0000 (12:35 +0000)]
Remove some unused variables.
Sascha Wildner [Wed, 1 Aug 2007 11:46:46 +0000 (11:46 +0000)]
s/device/drive/ (fixes LINT build)
Matthew Dillon [Wed, 1 Aug 2007 08:21:29 +0000 (08:21 +0000)]
The LWP run/sleep state does not always match the actual state of the
thread when the thread is directly descheduled by the kernel. Add some
logic so the state reported to 'ps' is correct.
Matthew Dillon [Tue, 31 Jul 2007 21:47:14 +0000 (21:47 +0000)]
I missed this file. We are running 9.3.4-P1 now, not 9.3.4.
Simon Schubert [Tue, 31 Jul 2007 20:47:14 +0000 (20:47 +0000)]
Reorder initialization sequence of devclasses.
This fixes a panic triggered by the use of the devclass of a driver
during the attachment of this driver.
Reported-by: Wesley Hearn <wesley.hearn@gmail.com>
Reviewed-by: dillon
Matthew Dillon [Tue, 31 Jul 2007 20:04:48 +0000 (20:04 +0000)]
Fix a coding mistake when dequeueing memory disk BIOs.
Reported-by: "km b" <kmb810@gmail.com>
Matthew Dillon [Tue, 31 Jul 2007 18:13:01 +0000 (18:13 +0000)]
Fix vinum. Vinum illegally uses device ops such as dev_dopen(),
dev_dclose(), and dev_dstrategy() without following the restrictions and
requirements for those calls. It does not properly check D_TRACKCLOSE
and does not properly limit DMA.
Access the low level device via the vnode subsystem instead of the device
subsystem. Use new calls to synthesize appropriate vnodes based on the
requested device name and remove all the manual major/minor conversion junk.
When booting with a vinum root vinum will synthesize appropriate vnodes
to access devices. If a root mount already exists vinum will simply
open the device vnode via the filesystem.
Reported-by: "Simon 'corecode' Schubert" <bugs@crater.dragonflybsd.org>,
Chris Turner <c.turner@199technologies.org>
Matthew Dillon [Tue, 31 Jul 2007 01:16:53 +0000 (01:16 +0000)]
Detect the case where rename()ing over a file that has been unlinked but
is still open was reporting an inode hash collision instead of a fatal
error. msdosfs uses the position of the directory entry within the directory
to identify the inode and a new file cannot be created if the removed file
is still held open by a program.
Reported-by: walt <wa1ter@myrealbox.com>
Matthew Dillon [Tue, 31 Jul 2007 01:14:50 +0000 (01:14 +0000)]
vrecycle() is typically called from a VFS's inactive function, which
in turn is called when the sysref reference count transitions from
1->0xc0000000. Fix a test that was causing the vnode to not be immediately
recycled.
msdosfs depended on the recyclement behavior due to rename-over issues -
msdosfs is not allowed to reuse an 'inode' (which is basically the position
of a directory entry in a directory) until the underlying file is entirely
reclaimed.
This also effected ufs somewhat by preventing inodes from being reused as
quickly as they could be, but ufs allocates inodes dynamically and masked
the problem.
Reported-by: walt <wa1ter@myrealbox.com>
Matthew Dillon [Mon, 30 Jul 2007 23:56:29 +0000 (23:56 +0000)]
Allow the compatibility slice (s0) to be specified.
Sascha Wildner [Mon, 30 Jul 2007 22:49:20 +0000 (22:49 +0000)]
Add MLINKS.
Sascha Wildner [Mon, 30 Jul 2007 22:17:23 +0000 (22:17 +0000)]
Don't require dhclient which is 'nostart' now.
Sascha Wildner [Mon, 30 Jul 2007 22:11:34 +0000 (22:11 +0000)]
Use .Ux for UNIX.
Matthew Dillon [Mon, 30 Jul 2007 21:41:30 +0000 (21:41 +0000)]
Rate-limit residual I/O warnings from the VM system that occur when a
filesystem fills up.
Reported-by: Gergo Szakal <bastyaelvtars@gmail.com>
Matthew Dillon [Mon, 30 Jul 2007 21:40:31 +0000 (21:40 +0000)]
Introduce krateprintf(), a rate-controlled kprintf(), and the related
struct krate structure. This takes all the effort out of outputting
rate-limited warnings to the console.
Peter Avalos [Mon, 30 Jul 2007 17:41:23 +0000 (17:41 +0000)]
Spelling corrections.
Simon Schubert [Mon, 30 Jul 2007 16:57:49 +0000 (16:57 +0000)]
Fix linux.ko linking.
Simon Schubert [Mon, 30 Jul 2007 14:52:40 +0000 (14:52 +0000)]
Fix a memory leak when kern_execve() fails fatally.
The callers of execve() are taking care of releasing the argument
buffer for exec. However, there might be situations where exec
ran into a dead end and can't come out again because it already
has destroyed the calling process image. In these cases kern_execve
was calling exit1() to destroy the current process. This however means
that the argument buffers were never freed, thus causing the leak.
In combination with the recent change to using the objcache with a
hard upper allocation limit, this meant that at some point no binaries
could be execed anymore, stalling callers of sys_exec() in objcache_get.
To fix this business, kern_execve() now does not call exit1() on
leathal errors anymore, but instead returns -1 (in contrast to valid
errno values which are >= 0) to indicate that the current process has
to commit suicide after cleaning up used resources.
Matthew Dillon [Mon, 30 Jul 2007 14:44:56 +0000 (14:44 +0000)]
When an inode collision occurs a partially initialized vnode will be
destroyed. Fix several NULL pointer dereferences in msdosfs that could
occur in this case. Loosely taken from the UFS code.
Inode collision checks were added to DragonFly to close race conditions
in both the creation and termination of a vnode that were found in UFS.
Subsequently other filesystems were found to have the same race conditions.
Because the VM cache is based on filesystem objects and not on physical
disk blocks, such collisions could result in multiple buffers associated
with different vnodes referencing the same physical disk block and I/O
reordering would then cause stale data to be written to disk.
Submitted-by: "Nicolas Thery" <nthery@gmail.com>
Matthew Dillon [Mon, 30 Jul 2007 08:02:40 +0000 (08:02 +0000)]
Add infrastructure to locate a disk device by name by scanning the disk
list. Note: This doesn't work with the 'vn' device yet but it does work
with ccd.
Add a VFS with a dummy mount which is capable of synthesizing vnodes for
devices.
Add infrastructure that allows easy opening and closing of a device-backed
vnode.
Sascha Wildner [Mon, 30 Jul 2007 02:09:22 +0000 (02:09 +0000)]
Remove some redundancy and add some markup.
Matthew Dillon [Sun, 29 Jul 2007 23:27:34 +0000 (23:27 +0000)]
Fix missing history->hist adjustments from libreadline->libedit commit.
Peter Avalos [Sun, 29 Jul 2007 22:20:10 +0000 (22:20 +0000)]
Add W{INT,CHAR}_{MIN,MAX} to stdint.h IAW ISO/IEC 9899:1999 7.18.3.
Requested and Reviewed-by: joerg
Sascha Wildner [Sun, 29 Jul 2007 17:27:46 +0000 (17:27 +0000)]
Remove unnecessary .Nm arguments.
Sascha Wildner [Sun, 29 Jul 2007 16:43:05 +0000 (16:43 +0000)]
Use .Nm properly and streamline the wording a bit.
Matthew Dillon [Sat, 28 Jul 2007 23:24:34 +0000 (23:24 +0000)]
Add an ordering field to the interrupt config hook structure and adjust
CAM to place its config last.
Sascha Wildner [Sat, 28 Jul 2007 10:37:22 +0000 (10:37 +0000)]
Fix documentation of -o and document -p.
Hasso Tepper [Fri, 27 Jul 2007 18:07:21 +0000 (18:07 +0000)]
Regenerate usbdevs.h and usbdevs_data.h and fix affected drivers to use new
data.
Hasso Tepper [Fri, 27 Jul 2007 17:49:29 +0000 (17:49 +0000)]
Reduce diff with FreeBSD where it makes sense - add a lot of vendors and
products, fix vendor/product/description strings if better were available,
removed som duplicates etc. Also fix some obvious bugs in progress.
Obtained-from: FreeBSD
Sascha Wildner [Fri, 27 Jul 2007 13:57:18 +0000 (13:57 +0000)]
sched.h, semaphore.h and mqueue.h have been moved from
sys/emulation/posix4 to sys/sys.
Reported-by: corecode
Dragonfly-bug: <http://bugs.dragonflybsd.org/issue746>
Matthew Dillon [Thu, 26 Jul 2007 20:43:02 +0000 (20:43 +0000)]
Include a virtual kernel in the release along with GENERIC.
Matthew Dillon [Wed, 25 Jul 2007 18:21:35 +0000 (18:21 +0000)]
Turn syscall_mpsafe and trap_mpsafe on by default. This causes system calls
that are marked as being MP safe to actually run without the big giant lock.
(NOTE: Our IO and VM paths are still not MP safe and will run with the big
giant lock regardless).
Simon Schubert [Tue, 24 Jul 2007 22:12:17 +0000 (22:12 +0000)]
Merge from vendor branch BIND:
Properly import bind-9.3.4-p1 sources.
Simon Schubert [Tue, 24 Jul 2007 22:12:17 +0000 (22:12 +0000)]
Properly import bind-9.3.4-p1 sources.
Matthew Dillon [Tue, 24 Jul 2007 21:11:26 +0000 (21:11 +0000)]
Merge from vendor branch BIND:
Update to 9.3.4-P1 with key id generation security fix.
Matthew Dillon [Tue, 24 Jul 2007 21:11:26 +0000 (21:11 +0000)]
Update to 9.3.4-P1 with key id generation security fix.
Matthew Dillon [Tue, 24 Jul 2007 20:38:21 +0000 (20:38 +0000)]
Release engineering: Update version information in HEAD to reflect 1.11
Matthew Dillon [Tue, 24 Jul 2007 20:16:37 +0000 (20:16 +0000)]
release engineering: Add a slip tag for 1.10 and add an example cvsup
file for 1.10.
Matthew Dillon [Tue, 24 Jul 2007 19:48:44 +0000 (19:48 +0000)]
Add logic to allow the first hog partition to specify a base offset. This
fixes a partition-too-large error when creating a hog partition with a
non-zero base offset.
Matthew Dillon [Tue, 24 Jul 2007 19:47:15 +0000 (19:47 +0000)]
Bump DragonFly_version and create a subvers-DEVELOPMENT file for HEAD for
1.11. This will be the last rev before 2.0.
Matthew Dillon [Tue, 24 Jul 2007 19:44:18 +0000 (19:44 +0000)]
Minor checkpt usage() patch.
Submitted-by: "Max Herrgaard" <herrgaard@gmail.com>
Sascha Wildner [Tue, 24 Jul 2007 14:02:10 +0000 (14:02 +0000)]
The maximum numbers of CPUs is 31, not 32.
Submitted-by: Max Herrgaard <herrgaard@gmail.com>
Matthew Dillon [Mon, 23 Jul 2007 23:08:02 +0000 (23:08 +0000)]
Synchronize the syslink manual page with the system call.
Matthew Dillon [Mon, 23 Jul 2007 23:04:21 +0000 (23:04 +0000)]
Clarify two usage cases for umtx.2
Matthew Dillon [Mon, 23 Jul 2007 23:03:34 +0000 (23:03 +0000)]
Remove a duplicate SUBDIR +=
Matthew Dillon [Mon, 23 Jul 2007 19:53:34 +0000 (19:53 +0000)]
dssetmask() was being called too early, causing the disk layer to believe
the disk was open when in fact it was not, in certain cases where the
disk open fails.
Matthew Dillon [Mon, 23 Jul 2007 19:45:30 +0000 (19:45 +0000)]
SCSI CD devices do not support raw mode accesses (yet). This fixes
/dev/cd0's minor number.
Matthew Dillon [Mon, 23 Jul 2007 19:26:09 +0000 (19:26 +0000)]
Add assertions for 0-length transfers and panic if one is attempted.
Properly track the open count on the underlying device.
Matthew Dillon [Mon, 23 Jul 2007 19:24:11 +0000 (19:24 +0000)]
Incorporate the device DMA limitations into the request transfer size
limit.
Reported-by: "Max Herrgaard" <herrgaard@gmail.com>
Matthew Dillon [Mon, 23 Jul 2007 19:20:43 +0000 (19:20 +0000)]
When CAM creates the disk layer, set the underlying raw device's
si_iosize_max to MAXPHYS. For now assume that underlying real scsi
devices are not further limited.
Note that NATA's CAM layer will chain I/Os coming from the CAM subsytem
which are too large.
Matthew Dillon [Mon, 23 Jul 2007 19:19:11 +0000 (19:19 +0000)]
Do not loop forever doing 0-sized I/Os if si_iosize_max is 0. Instead
generate a warning and assume MAXPHYS.
Reported-by: "Max Herrgaard" <herrgaard@gmail.com>
Matthew Dillon [Mon, 23 Jul 2007 18:59:51 +0000 (18:59 +0000)]
The disk layer must not inherit the D_TRACKCLOSE flag from the underlying
device as this will confuse the disk layer's tracking of opens and closes.
This bug caused the disk layer to lose track of which slices and partitions
were open when a slice or partition was opened multiple times.
Simon Schubert [Sun, 22 Jul 2007 22:46:09 +0000 (22:46 +0000)]
Make vinum use libedit instead of libreadline.
Submitted-by: pavalos@
Simon Schubert [Sun, 22 Jul 2007 22:01:23 +0000 (22:01 +0000)]
Change comment to reflect that X11BASE moved.
Simon Schubert [Sun, 22 Jul 2007 21:59:36 +0000 (21:59 +0000)]
Pkgsrc defaults to modular Xorg and /usr/pkg nowadays.
Matthew Dillon [Sun, 22 Jul 2007 20:04:00 +0000 (20:04 +0000)]
Properly initialize next_cpu to 0 when '-l map' is used for the default
case, with no starting cpu specified. Only check the string pointer returned
from strtol() when strtol() is actually called.
Matthew Dillon [Sun, 22 Jul 2007 18:53:19 +0000 (18:53 +0000)]
Temporarily hack around an interrupt race against device detach by
giving the interrupt time to clear after removing it. This race will be
fixed generally after the 1.10.0 release.
Sascha Wildner [Sat, 21 Jul 2007 17:45:54 +0000 (17:45 +0000)]
Fix function name.
Matthew Dillon [Fri, 20 Jul 2007 17:21:54 +0000 (17:21 +0000)]
Remove the requirement that calls to vn_strategy() be limited to the
DMA capabilities of the underlying device. In particular this fixes issues
with NATA which does not break up large requests when operating on hardware
with limited DMA capabilities. The old ATA driver did break up requests.
vn_strategy() -> spec_strategy(). spec_strategy(), which converts vnode
strategy calls to device strategy calls, now checks the maximum DMA
capability of the device and breaks up large requests to fit.
Old IDE hardware often can't even transfer a whole 64KB of data and there
are many subsystems in the kernel which assume that >= 64KB can be transfered
in a single I/O. Subsystems include: The pageout code, the buffer clustering
code, AIO, and the swapin/swapout code.
Reported-by: YONETANI Tomokazu <qhwt+dfly@les.ath.cx>
Simon Schubert [Thu, 19 Jul 2007 21:23:10 +0000 (21:23 +0000)]
Add quriks for my motherboard so that the microphone input will work.
Joe Talbott [Thu, 19 Jul 2007 20:18:00 +0000 (20:18 +0000)]
Let the user know if they attempt to start a vkernel with vm.vkernel_enable
set to 0.
Sepherosa Ziehau [Thu, 19 Jul 2007 12:40:35 +0000 (12:40 +0000)]
Make ath(4) and ath_rate(4) depend on wlan(4).
Reported-by: Francis Gudin <fgudin@nerim.net>
Matthew Dillon [Thu, 19 Jul 2007 01:16:39 +0000 (01:16 +0000)]
Be a little more verbose when reporting unmount errors.
Peter Avalos [Thu, 19 Jul 2007 00:23:04 +0000 (00:23 +0000)]
Allocate the full SCB pool at driver attach.
Obtained-from: FreeBSD
Peter Avalos [Wed, 18 Jul 2007 21:48:34 +0000 (21:48 +0000)]
Should use machine/limits.h, not cpu/limits.h.
Sepherosa Ziehau [Wed, 18 Jul 2007 11:55:39 +0000 (11:55 +0000)]
regen
Sepherosa Ziehau [Wed, 18 Jul 2007 11:54:57 +0000 (11:54 +0000)]
More Broadcom 43xx PCI IDs.
Matthew Dillon [Tue, 17 Jul 2007 19:29:48 +0000 (19:29 +0000)]
Update the installer to dfuibe_installer-1.1.7nb1. Add logic to remove
old packages which interfere with the 'check' target's use of pkg_add -n.
Peter Avalos [Mon, 16 Jul 2007 22:20:15 +0000 (22:20 +0000)]
Update for 2.2.5.
Peter Avalos [Mon, 16 Jul 2007 21:52:17 +0000 (21:52 +0000)]
Merge from vendor branch LIBARCHIVE:
Import libarchive-2.2.5 which fixes a forgotten 'break'. Without this,
hardlinks were being returned as symlinks.
Peter Avalos [Mon, 16 Jul 2007 21:52:17 +0000 (21:52 +0000)]
Import libarchive-2.2.5 which fixes a forgotten 'break'. Without this,
hardlinks were being returned as symlinks.
Matthew Dillon [Mon, 16 Jul 2007 21:31:06 +0000 (21:31 +0000)]
Temporarily reenable writing to the label area for backwards compatibility.
Matthew Dillon [Mon, 16 Jul 2007 21:16:49 +0000 (21:16 +0000)]
Rename the new cvsup bootstrap kit so make nrelease knows a new one
is needed and doesn't barf on the slight differences between the new and
old.
Suggested-by: Sascha Wildner <saw@online.de>
Simon Schubert [Mon, 16 Jul 2007 18:25:39 +0000 (18:25 +0000)]
Fix default target architecture.
Submitted-by: Noah Yan <noah.yan@gmail.com>
Sepherosa Ziehau [Mon, 16 Jul 2007 11:21:49 +0000 (11:21 +0000)]
Correct RSSI calculation.
Noticed-by: Hans Petter Selasky <hselasky@c2i.net>
Sascha Wildner [Sat, 14 Jul 2007 21:56:46 +0000 (21:56 +0000)]
Oops, add missing space.
Sascha Wildner [Sat, 14 Jul 2007 21:48:16 +0000 (21:48 +0000)]
Use .Va for sysctls and tunables.
Simon Schubert [Sat, 14 Jul 2007 19:14:29 +0000 (19:14 +0000)]
Retire tac. tail -r does the same thing already.
Pointed-out-by: Emil Mikulic <emil@dmr.ath.cx>
Simon Schubert [Sat, 14 Jul 2007 12:00:37 +0000 (12:00 +0000)]
Hook tac to the build.
Simon Schubert [Sat, 14 Jul 2007 11:56:19 +0000 (11:56 +0000)]
Add tac, a simple sed script to reverse stdin.
This is from the GNU sed manual.
Sepherosa Ziehau [Sat, 14 Jul 2007 08:01:24 +0000 (08:01 +0000)]
busdma(9) fixes for bfe(4):
- Set low address of the top level dma tag to 1Gbytes, due to chipset limit.
- TX/RX rings need to be aligned on 4Kbytes.
- Correct dma map syncing direction.
- In bfe_txeof() and bfe_tx_ring_free(), unload dma map for all TX descs
instead of only for the TX desc holding the mbuf.
- In bfe_start():
o If number of free TX desc is less then 2, set IFF_OACTIVE and leave
o Pass reference of mbuf pointer into bfe_encap(), since the passed in
mbuf may be defragmented, i.e. changed.
- In bfe_encap():
o Assert that caller has make certain there is at least 2 free TX descs.
o Before setting up TX descs, count number of mbufs in the mbuf chain,
and do defragmentation if there are not enough free TX descs.
o After above changes, number of free TX descs will never be less than 2
when setting up TX descs; assert that.
o mbuf chain is always drained after setting up TX descs, nuke the goofy
if (m != NULL)
Obtained-from: FreeBSD (w/ modification)
Tested-by: Jörg Anslik <joerg@anslik.de>
Approved-by: dillon@
Sepherosa Ziehau [Sat, 14 Jul 2007 07:29:30 +0000 (07:29 +0000)]
- When creating dma map, allocate at least one bounce page even if the
max size of the dma tag is less than one page.
- alloc_bounce_pages() returns number of bounce pages that have been
allocated, not error value.
- Increase MAX_BPAGES to 1024 to cooperate with modern devices.
Tested-by: Jörg Anslik <joerg@anslik.de>
Approved-by: dillon@
Sascha Wildner [Sat, 14 Jul 2007 06:58:42 +0000 (06:58 +0000)]
Fix reference.
Matthew Dillon [Fri, 13 Jul 2007 18:55:45 +0000 (18:55 +0000)]
Clean up the ioctl switch and add support for DIOCGPART which is
needed by newfs.
Reported-by: Chris Turner <c.turner@199technologies.org>
Matthew Dillon [Fri, 13 Jul 2007 18:36:32 +0000 (18:36 +0000)]
Reparse device specifications. The slice is no longer optional.
Also handle slice 0 specifications.
Do not try to write-enable the label area. Any vinum headers must
occur outside any reserved label area.
Sascha Wildner [Fri, 13 Jul 2007 08:12:45 +0000 (08:12 +0000)]
pccardd was removed a long time ago.
Sascha Wildner [Fri, 13 Jul 2007 07:36:26 +0000 (07:36 +0000)]
Add some words about rtsold_{enable,flags}.
Matthew Dillon [Fri, 13 Jul 2007 07:04:39 +0000 (07:04 +0000)]
Update to include info on last update.
Matthew Dillon [Fri, 13 Jul 2007 06:59:51 +0000 (06:59 +0000)]
Synchronous libarchive to 2.2.4 from FreeBSD, including fixes related to
FreeBSD Security Advisory FreeBSD-SA-07:05.libarchive.
Matthew Dillon [Fri, 13 Jul 2007 06:59:51 +0000 (06:59 +0000)]
Merge from vendor branch LIBARCHIVE:
Synchronous libarchive to 2.2.4 from FreeBSD, including fixes related to
FreeBSD Security Advisory FreeBSD-SA-07:05.libarchive.
Matthew Dillon [Fri, 13 Jul 2007 06:59:49 +0000 (06:59 +0000)]
Synchronous libarchive to 2.2.4 from FreeBSD, including fixes related to
FreeBSD Security Advisory FreeBSD-SA-07:05.libarchive.