13 years agoTo create a disklabel, the vn0s0 device is now used instead of the raw
Sascha Wildner [Thu, 14 Jun 2007 21:02:57 +0000 (21:02 +0000)]
To create a disklabel, the vn0s0 device is now used instead of the raw
device vn0.

Submitted-by: Nuno Antunes <nuno.antunes@gmail.com>
13 years agoWhen getnewvnode() is called the vnode's v_type defaults to VNON. Syncer
Matthew Dillon [Thu, 14 Jun 2007 02:55:27 +0000 (02:55 +0000)]
When getnewvnode() is called the vnode's v_type defaults to VNON.  Syncer
vnodes are also set to VNON and any vnode that is accessed without locking
whos v_type is VNON is probably in the middle of being initialized.  For
this reason the mountlist scan and vflush code typically ignores such

If a read error occurs while initializing a vnode, in particular if a hash
collision occurs or an I/O error occurs reading the inode, the vnode's
v_type was being left set to VNON.  Explicitly set it to VBAD for msdosfs
and ufs (other FS's probably need the same treatment) so the flush and
reclaim code can reuse the vnode.

This fixes 'dangling vnode' panics on unmount for filesystems which incur
I/O errors, such as when one pulls a USB memory stick out while it is
still mounted.

13 years agoxpt_bus_deregister() never returns 0, don't test for it.
Matthew Dillon [Thu, 14 Jun 2007 01:10:25 +0000 (01:10 +0000)]
xpt_bus_deregister() never returns 0, don't test for it.

Assert that the sim is attached if a backend sim function is called,
because cam_sim_free() now replaces the functions when the sim is

13 years agoDo not destroy the device queue, it is needed by the peripheral code
Matthew Dillon [Thu, 14 Jun 2007 01:09:30 +0000 (01:09 +0000)]
Do not destroy the device queue, it is needed by the peripheral code
(e.g. scsi/scsi_da.c, etc) even if the backend hardware has disappeared.
When cam_sim_free() is called, set up a dummy poll and action callback
and make the action callback generate an I/O error.

This allows things like filesystem mounts of USB memory sticks to start
returning I/O errors instead of blocking forever if the stick is pulled.

13 years agoExpand the diskslice->ds_openmask from 8 bits to 256 bits to cover all
Matthew Dillon [Wed, 13 Jun 2007 20:58:38 +0000 (20:58 +0000)]
Expand the diskslice->ds_openmask from 8 bits to 256 bits to cover all
possible partitions.  Partitions from 'i' on, and the whole-disk partition,
were not being properly tracked, resulting in multiple device opens and
device closes to the underlying device.

In particular, this caused USB memory sticks to connect to the CAM driver
with ever-increasing DA#n unit numbers because CAMs reference counting got
seriously corrupted.

Reported-by: "Simon 'corecode' Schubert" <corecode@fs.ei.tum.de>
13 years agodev_dopen() can be called multiple times with only one dev_dclose() when
Matthew Dillon [Wed, 13 Jun 2007 20:53:39 +0000 (20:53 +0000)]
dev_dopen() can be called multiple times with only one dev_dclose() when
D_TRACKCLOSE is not specified.  Make sure multiple opens only reference
the CAM peripheral once and complain if dev_dclose() is called more then

This also prevents bugs in higher layers from propogating to lower ones.

13 years agoRefuse to poll a detached sim.
Matthew Dillon [Wed, 13 Jun 2007 20:45:24 +0000 (20:45 +0000)]
Refuse to poll a detached sim.

13 years agoDont poll PS/2 mouse interrupts, it can cause the mouse to get jumpy.
Matthew Dillon [Wed, 13 Jun 2007 17:15:25 +0000 (17:15 +0000)]
Dont poll PS/2 mouse interrupts, it can cause the mouse to get jumpy.
Also, the keyboard/mouse code is full of DELAY()s and pretty nasty
in general.

13 years agoFix typo.
Sascha Wildner [Wed, 13 Jun 2007 14:27:41 +0000 (14:27 +0000)]
Fix typo.

Reported-by: Robin Carey <robin_carey5@yahoo.co.uk>
13 years agoUse correct variable types when copying files.
Simon Schubert [Tue, 12 Jun 2007 20:56:16 +0000 (20:56 +0000)]
Use correct variable types when copying files.

Reported/Reviewed-by:  Trevor Kendall

13 years agoFix rewrite error which appeared in rev 1.3.
Hasso Tepper [Tue, 12 Jun 2007 12:50:22 +0000 (12:50 +0000)]
Fix rewrite error which appeared in rev 1.3.

13 years agoRemove some non-existant variables and clean up the manpage a bit.
Sascha Wildner [Sun, 10 Jun 2007 18:57:59 +0000 (18:57 +0000)]
Remove some non-existant variables and clean up the manpage a bit.

13 years agoSwitch xorg to modular, so that it fits with the prebuilt packages.
Simon Schubert [Sun, 10 Jun 2007 09:32:36 +0000 (09:32 +0000)]
Switch xorg to modular, so that it fits with the prebuilt packages.

13 years agoMove initialization of a vnode's various red-black trees to the CTOR function
Matthew Dillon [Sat, 9 Jun 2007 19:46:02 +0000 (19:46 +0000)]
Move initialization of a vnode's various red-black trees to the CTOR function
rather then reinitializing the trees on reuse.

Add assertions that the trees are empty on reuse and that the vnode is not
on the syncer work list.

13 years agoThis patch allows umct (USB<->RS232 adapter) to write to devices that do
Matthew Dillon [Sat, 9 Jun 2007 18:56:23 +0000 (18:56 +0000)]
This patch allows umct (USB<->RS232 adapter) to write to devices that do
not assert CTS.  The code in linux which this patch was adapted from
was taken from what we believe was a reverse engineered windows driver which
always added two additional requests whenever changing the baud rate.  The
function of the requests is unknown, other then the effect of making such
devices work.

Submitted-by: Joe Talbott <josepht@cstone.net>
Obtained-from: Linux (roughly)

13 years agoSwitch LINT to building NATA.
Sascha Wildner [Sat, 9 Jun 2007 18:21:18 +0000 (18:21 +0000)]
Switch LINT to building NATA.

13 years agoAdd 'nataraid' and 'natausb'.
Sascha Wildner [Sat, 9 Jun 2007 17:56:27 +0000 (17:56 +0000)]
Add 'nataraid' and 'natausb'.

13 years agoRemove the temporary NATA kernel build config file. Change GENERIC to
Matthew Dillon [Sat, 9 Jun 2007 03:13:02 +0000 (03:13 +0000)]
Remove the temporary NATA kernel build config file.  Change GENERIC to
compile NATA by default.  Remove the NATA kernel build from nrelease (so
its just back to GENERIC).

13 years agoCreate an upgrade target for MAKEDEV. This target will attempt to
Matthew Dillon [Sat, 9 Jun 2007 03:09:38 +0000 (03:09 +0000)]
Create an upgrade target for MAKEDEV.  This target will attempt to
update existing mass storage character devices in /dev, but generally
is meant to do any adjustments required when upgrading from an earlier
version of DragonFly to a later version.

Adjust 'make upgrade' to use 'MAKEDEV upgrade' instead of 'MAKEDEV all'.

13 years ago* Perform some minor cleanup in the manual page and bump the date for
Sascha Wildner [Fri, 8 Jun 2007 18:46:32 +0000 (18:46 +0000)]
* Perform some minor cleanup in the manual page and bump the date for
  the new option.

* Add -l to usage().

13 years agoComment out line about UDF specific mount options -- none were listed
Jeremy C. Reed [Fri, 8 Jun 2007 18:45:46 +0000 (18:45 +0000)]
Comment out line about UDF specific mount options -- none were listed
and none available.

Also add line about being readonly (as seen in source).

This is for my bug Issue688.

13 years agoChange the -a option to be a bit friendlier. Have it print sorted,
Matthew Dillon [Fri, 8 Jun 2007 18:33:15 +0000 (18:33 +0000)]
Change the -a option to be a bit friendlier.  Have it print sorted,
human-readable output with relative time stamps.  All print options will
be used except -f (file & line).

13 years agoAdd a new option to ktrdump (-l) which causes it to loop awaiting new data
Matthew Dillon [Fri, 8 Jun 2007 18:24:22 +0000 (18:24 +0000)]
Add a new option to ktrdump (-l) which causes it to loop awaiting new data
and then display it as it comes in.  Cleanup ktrdump considerably.  By
Aggelos Economopoulos.

Additional work by Matt:  Clean it up even more, document the code, and make
the new looping feature work with -s.

Submitted-by: Aggelos Economopoulos <aoiko@cc.ece.ntua.gr>
With-additional-work-by: dillon
13 years agoIf PCI_MAP_FIXUP is defined, following fixes will be applied:
Sepherosa Ziehau [Fri, 8 Jun 2007 13:52:09 +0000 (13:52 +0000)]
If PCI_MAP_FIXUP is defined, following fixes will be applied:
- For PCI/PCI bridge, adjust requested IO port/memory's start/range according
  to bridge's base/limit register value.
- For Host/PCI bridge, if requested IO port/memory's starts from 0 and range
  is ~0,
  o  If the request is for IO port, the start address is set to 0x1000.
  o  If the request is for IO memory, the start address is set to tunable
     hw.pci.host_mem_start, which is 0x80000000 by default.

This unbreaks cardbus bridge support, if PCI_MAP_FIXUP is defined.

My laptop's cardbus bridge is on the PCI bus mastered by a PCI/PCI bridge,
while swildner@'s laptop's cardbus bridge is on the PCI bus mastered by
Host/PCI bridge.

Tested-by: swildner@ and me
Obtained-from: FreeBSD (imp@freebsd.org)

# It seems BIOS does not set cardbus bridge's BAR for most of the system,
# so in the original code, the resource_list_alloc() in pci_alloc_resource()
# will return NULL for cardbus bridge's IO memory allocation request; cardbus
# bridge's code actually depends on that to reallocate IO memory using
# hw.cbb.start_memory as start address.
# Before this commit, if PCI_MAP_FIXUP is defined, cardbus bridge's invalid
# IO memory request will be delivered to various PCI bridge code, which does
# not validate/fixup the request and returns "successful" result bindly.

13 years agoDocument that bge(4) supports polling now.
Sascha Wildner [Fri, 8 Jun 2007 07:39:20 +0000 (07:39 +0000)]
Document that bge(4) supports polling now.

13 years agoIncrease the tsleep/wakeup hash table size and augment the KTR logging a bit.
Matthew Dillon [Fri, 8 Jun 2007 02:02:27 +0000 (02:02 +0000)]
Increase the tsleep/wakeup hash table size and augment the KTR logging a bit.

13 years agoFormalize the object sleep/wakeup code when waiting on a dead VM object and
Matthew Dillon [Fri, 8 Jun 2007 02:00:47 +0000 (02:00 +0000)]
Formalize the object sleep/wakeup code when waiting on a dead VM object and
remove spurious calls to wakeup().

13 years agoRemove the last source of SMP TLB invalidations in the critical code path
Matthew Dillon [Fri, 8 Jun 2007 00:57:04 +0000 (00:57 +0000)]
Remove the last source of SMP TLB invalidations in the critical code path
for fork/exec/exit/wait sequences.  The pmap page directory is now left
cached in kernel memory until the pmap is destroyed via the objcache
dtor function for VM spaces (vmspace_dtor() -> pmap_puninit()).

This improves fork/exec performance and significantly reduces the IPI
messaging load and other cross-cpu interactions.

13 years agoRemove unused variables after last commit.
Matthew Dillon [Thu, 7 Jun 2007 23:45:52 +0000 (23:45 +0000)]
Remove unused variables after last commit.

13 years agoGet rid of some broken _KERNEL_VIRTUAL hacks.
Matthew Dillon [Thu, 7 Jun 2007 23:45:02 +0000 (23:45 +0000)]
Get rid of some broken _KERNEL_VIRTUAL hacks.

13 years agoEntirely remove exec_map from the kernel. Use the new vm_fault_object_page()
Matthew Dillon [Thu, 7 Jun 2007 23:14:29 +0000 (23:14 +0000)]
Entirely remove exec_map from the kernel.  Use the new vm_fault_object_page()
for the data/bss special case in the elf loader, and use the objcache to
cache arguments for exec.

This in turn removes nearly all of the SMP page invalidation IPIs that
occur during fork/exec/exit/wait sequences by virtue of not needing to
map and unmap so much KVM.

13 years agoImplement vm_fault_object_page(). This function returns a held VM page
Matthew Dillon [Thu, 7 Jun 2007 23:00:39 +0000 (23:00 +0000)]
Implement vm_fault_object_page().  This function returns a held VM page
for the specified offset in the specified object and does all I/O necessary
to validate the page (as if it had been faulted in).

This function allows us to bypass the vm_map*() code when all we want is
the VM page.

13 years agoGet rid of disklabel faking/processing.
Simon Schubert [Thu, 7 Jun 2007 22:58:38 +0000 (22:58 +0000)]
Get rid of disklabel faking/processing.

13 years agoTry hard to restore the termios state on exit/reboot.
Simon Schubert [Thu, 7 Jun 2007 22:58:22 +0000 (22:58 +0000)]
Try hard to restore the termios state on exit/reboot.

tcsetattr() can be interrupted by spurious SIGIO from the kqueue, so
try setting the state until it succeeds.  Add an EVENTHANDLER so that
the tty state will be restored for a possible kernel reboot.

13 years agoFix module loading for vkernel.
Simon Schubert [Thu, 7 Jun 2007 22:58:11 +0000 (22:58 +0000)]
Fix module loading for vkernel.

Some symbols in the vkernel are actually provided by libs the
kernel binary is linked to, which can not be resolved by the
internal kernel linker.  Fall back on using dlsym() if no
symbol could be found by the kernel linker.  This actually means
that the kernel needs to be linked dynamically.

13 years agoDon't loose count when adding too many plexes to a volume.
Simon Schubert [Thu, 7 Jun 2007 22:58:00 +0000 (22:58 +0000)]
Don't loose count when adding too many plexes to a volume.

13 years agoUse MAXPARTITIONS instead of hardcoded value.
Simon Schubert [Thu, 7 Jun 2007 22:57:49 +0000 (22:57 +0000)]
Use MAXPARTITIONS instead of hardcoded value.

13 years agoAdd KTR logging for SMP page table syncing ops.
Matthew Dillon [Thu, 7 Jun 2007 20:35:54 +0000 (20:35 +0000)]
Add KTR logging for SMP page table syncing ops.

13 years agoUse the slab cache for PAGE_SIZE and PAGE_SIZE*2 sized allocations. This
Matthew Dillon [Thu, 7 Jun 2007 20:34:14 +0000 (20:34 +0000)]
Use the slab cache for PAGE_SIZE and PAGE_SIZE*2 sized allocations.  This
reduces the number of SMP page invals the ELF loader and mmio have to do
for operations that occur on a single cpu.

13 years agoAdd polling support to BGE.
Matthew Dillon [Thu, 7 Jun 2007 20:30:20 +0000 (20:30 +0000)]
Add polling support to BGE.

13 years agoWhen compiling a kernel with all ktr logging (KTR_ALL), do not auto-enable
Matthew Dillon [Thu, 7 Jun 2007 18:03:15 +0000 (18:03 +0000)]
When compiling a kernel with all ktr logging (KTR_ALL), do not auto-enable
the KTRs on boot because logging everything is counter productive.  Instead,
let userland enable particular KTRs via sysctl.

13 years agoAdd a field to the keyboard abstraction structure that allows the USB
Matthew Dillon [Wed, 6 Jun 2007 18:49:28 +0000 (18:49 +0000)]
Add a field to the keyboard abstraction structure that allows the USB
keyboard controller to save and restore the translation state.  This
allows you to disconnect and reconnect a USB keyboard and not get
gibberish when you type.

Reported-by: Petr Janda <elekktretterr@exemail.com.au>
13 years agobridge_enqueue() does not use bridge(4)'s softc, so don't pretend that the
Sepherosa Ziehau [Wed, 6 Jun 2007 13:10:39 +0000 (13:10 +0000)]
bridge_enqueue() does not use bridge(4)'s softc, so don't pretend that the
parameter is needed.

13 years agoUpdate FreeBSD ID tags.
Sascha Wildner [Tue, 5 Jun 2007 18:30:40 +0000 (18:30 +0000)]
Update FreeBSD ID tags.

13 years agoDon't let ether_input() to do the bridging work, i.e. change input iface,
Sepherosa Ziehau [Tue, 5 Jun 2007 13:41:39 +0000 (13:41 +0000)]
Don't let ether_input() to do the bridging work, i.e. change input iface,
since it breaks following things:
o  IFF_MONITOR support.
o  Assumption that ether_input() is called with input iface's serializer
o  Per interface input packets and bytes statistics.

Let the bridge(4) handle the input iface change, which is centralized
at the end of bridge_input() after leaving bridge(4) iface's serializer.
We call ifnet.if_input() when handling iface change, instead of skipping
the "upper" half of ifnet.if_input() as we did originally; the assumption
that "upper" half of ifnet.if_input() does nothing according to input iface
does not sounds good.  M_PROTO1 mbuf flag is used to prevent infinite loop;
we may need to create a meaningful alias macro for it.

Other changes:
- Delay bridge_lookup_member_if() call until it is really necessary.
- Update ipackets for bridge(4) iface, if mcast/bcast packet is received
  and is going to be delivered to bridge(4) iface.
- Use IF_LLADDR() macro to get bridge(4) iface's MAC address.
- Nuke never reached code.
- Minor style changes.

13 years agoAdd some words about -v.
Sascha Wildner [Mon, 4 Jun 2007 21:04:27 +0000 (21:04 +0000)]
Add some words about -v.

Submitted-by: y0netan1
13 years agoDo any crash dump operation before the shutdown_post_sync event handler
Matthew Dillon [Mon, 4 Jun 2007 17:22:02 +0000 (17:22 +0000)]
Do any crash dump operation before the shutdown_post_sync event handler
is invoked.  Move numerous legacy device shutdown event handlers from
shutdown_final to shutdown_post_sync.  Note that newer devices uses
the device_shutdown DEVMETHOD.

13 years agoAdd the cvsup manpage to the ISO, dammit.
Sascha Wildner [Mon, 4 Jun 2007 01:47:41 +0000 (01:47 +0000)]
Add the cvsup manpage to the ISO, dammit.

13 years agoReadjust some comments.
Sascha Wildner [Mon, 4 Jun 2007 01:08:02 +0000 (01:08 +0000)]
Readjust some comments.

13 years agoReplace the remaining NG_*LEN constants with NG_*SIZ constants for real.
Sascha Wildner [Mon, 4 Jun 2007 00:40:32 +0000 (00:40 +0000)]
Replace the remaining NG_*LEN constants with NG_*SIZ constants for real.

Submitted-by: Nuno Antunes <nuno.antunes@gmail.com>
13 years agoReplace the remaining *LEN constants with *SIZ constants.
Sascha Wildner [Sun, 3 Jun 2007 23:41:25 +0000 (23:41 +0000)]
Replace the remaining *LEN constants with *SIZ constants.

Reported-by: walt <wa1ter@myrealbox.com>
Submitted-by: Nuno Antunes <nuno.antunes@gmail.com>
13 years agoUpdate for libarchive 2.2.3.
Peter Avalos [Sun, 3 Jun 2007 21:29:07 +0000 (21:29 +0000)]
Update for libarchive 2.2.3.

13 years agoMerge from vendor branch LIBARCHIVE:
Peter Avalos [Sun, 3 Jun 2007 21:26:40 +0000 (21:26 +0000)]
Merge from vendor branch LIBARCHIVE:
Import libarchive 2.2.3 fixing a few memory leaks and other fixes.

13 years agoImport libarchive 2.2.3 fixing a few memory leaks and other fixes.
Peter Avalos [Sun, 3 Jun 2007 21:26:40 +0000 (21:26 +0000)]
Import libarchive 2.2.3 fixing a few memory leaks and other fixes.

13 years agoCatch up a bit with FreeBSD netgraph by replacing *LEN constants with
Matthew Dillon [Sun, 3 Jun 2007 20:51:13 +0000 (20:51 +0000)]
Catch up a bit with FreeBSD netgraph by replacing *LEN constants with
*SIZ constants which already account space for trailing '\0's.

Submitted-by: "Nuno Antunes" <nuno.antunes@gmail.com>
Obtained from: FreeBSD (sorta).

13 years agoGC old sendmail version.
Peter Avalos [Sun, 3 Jun 2007 17:22:57 +0000 (17:22 +0000)]
GC old sendmail version.

13 years agoCorrect conditional to correctly treat segments which end on a boundary.
Simon Schubert [Sun, 3 Jun 2007 13:02:24 +0000 (13:02 +0000)]
Correct conditional to correctly treat segments which end on a boundary.

13 years agoGo to bed before the sun comes up.
Matthew Dillon [Sun, 3 Jun 2007 11:52:45 +0000 (11:52 +0000)]
Go to bed before the sun comes up.

13 years agoPart 1/2: Add a sanity check to the NATA interrupt code to assert that
Matthew Dillon [Sun, 3 Jun 2007 11:52:09 +0000 (11:52 +0000)]
Part 1/2: Add a sanity check to the NATA interrupt code to assert that
the command has actually been issued.

13 years agoSet the IDE DMA start bit as a separate I/O write from the DMA port
Matthew Dillon [Sun, 3 Jun 2007 11:49:54 +0000 (11:49 +0000)]
Set the IDE DMA start bit as a separate I/O write from the DMA port
direction setting.  It's just a whole lot safer not to mix the two in
a single write.

13 years agovmstat -iv: include IRQ number before the interrupt name, unless
YONETANI Tomokazu [Sun, 3 Jun 2007 11:49:30 +0000 (11:49 +0000)]
vmstat -iv: include IRQ number before the interrupt name, unless
it begins with "irq", in which case the name contains the number.

13 years agoImplement boundary and maximum segment size handling in bus_dmamap_load().
Matthew Dillon [Sun, 3 Jun 2007 11:47:10 +0000 (11:47 +0000)]
Implement boundary and maximum segment size handling in bus_dmamap_load().
This fixes NATA's UDMA device support.  The UDMA dma controller is limited
to a transfer size of 65536 bytes and address incrementation might not
carry over to bit 16.

13 years agobridge_{input,output_serialized}() only need to be static; they are actually
Sepherosa Ziehau [Sun, 3 Jun 2007 11:25:58 +0000 (11:25 +0000)]
bridge_{input,output_serialized}() only need to be static; they are actually
declared as static functions.

13 years agoM_NOWAIT can only be used in a driver where a failed memory allocation is
Matthew Dillon [Sun, 3 Jun 2007 04:48:29 +0000 (04:48 +0000)]
M_NOWAIT can only be used in a driver where a failed memory allocation is
recoverable, such as in a network driver.  FreeBSD seems to have a looser
definition but in DragonFly M_NOWAIT really means M_NOWAIT ... any blocking
at all, including waiting on the BGL or getting the kernel_map lock,
will result in a failure NULL.

Change all M_NOWAIT's to either M_WAITOK or M_INTWAIT.

13 years agoAdd a timings line for UDMA6 in two places. The drivers in question may or
Matthew Dillon [Sun, 3 Jun 2007 04:27:56 +0000 (04:27 +0000)]
Add a timings line for UDMA6 in two places.  The drivers in question may or
may not support it, but the array still needs to be large enough for all
possible elements.

Revamp the programming of register 0x48, 0x54, and 0x40 for the Intel
chipset support, and document the hell out of the whole thing.

Register 0x54 covers both primary and secondary controllers and master and
slave devices and was being fully programmed for each sub-device, causing
some sub devices to become misprogrammed.  Change it so only the elements
related to the sub-device are programmed.  It is unclear how much of a
difference this makes for the parts in question but at least it's documented

Fix logic that was causing UDMA66 devices on intel controllers to operate
at UDMA33 speeds (does anyone even have UDMA66 devices any more?).

Add support for the SB600 - from "Thomas E. Spanjaard"

13 years agoGC old less version.
Peter Avalos [Sun, 3 Jun 2007 04:24:35 +0000 (04:24 +0000)]
GC old less version.

13 years agoUpgrade to less version 403.
Peter Avalos [Sun, 3 Jun 2007 04:23:45 +0000 (04:23 +0000)]
Upgrade to less version 403.

These are the differences between version 394 and version 403:

-Allow decimal point in number for % (percent) command.
-Allow decimal point in number for -j option (fraction of screen height).
-Make n command fetch previous pattern from history file on first search.
-Don't rewrite history file if it has not changed.
-Don't move to bottom of screen on first page.
-Don't output extraneous newlines, so copy & pasting lines from the output
works better.
-The -c option has been made identical with the -C option.
-Allow "/dev/null" as synomym for "-" in LESSHISTFILE to indicate that no
history file should be used.
-Better compatibility with POSIX more specification.
-Make -f work for directories.
-Make "t" cmd traverse tags in the correct order.
-Allow a few binary characters in the input file before warning that the
file is binary.
-Don't warn that file is binary if it merely contains ANSI color sequences
and -R is in effect.
-Update Unicode character tables.
-Fix bug when filename contains certain shell metacharacters such as "$".
-Fix bug when resizing the window while waiting for input from a pipe.

13 years agoAdd our READMEs.
Peter Avalos [Sun, 3 Jun 2007 04:20:21 +0000 (04:20 +0000)]
Add our READMEs.

13 years agoMerge from vendor branch LESS:
Peter Avalos [Sun, 3 Jun 2007 04:18:02 +0000 (04:18 +0000)]
Merge from vendor branch LESS:
Import of less-403.

13 years agoImport of less-403.
Peter Avalos [Sun, 3 Jun 2007 04:18:02 +0000 (04:18 +0000)]
Import of less-403.

13 years agoUse exec and fix handling of filenames containing whitespace.
Peter Avalos [Sun, 3 Jun 2007 03:59:53 +0000 (03:59 +0000)]
Use exec and fix handling of filenames containing whitespace.

Obtained-from:  FreeBSD

13 years agoUpdate MAKEDEV for acd* and cd* devices, the kernel now manages the
Matthew Dillon [Sun, 3 Jun 2007 03:44:17 +0000 (03:44 +0000)]
Update MAKEDEV for acd* and cd* devices, the kernel now manages the
disk layer for these devices.  Users have to regenerate their acd and cd

Create e.g. /dev/cd0 and /dev/acd0 as special raw access devices and
create e.g. /dev/cd0s0 and /dev/acd0s0 for label access.   This fixes
burncd on acd0 by allowing it to bypass the disk management layer entirely,
including bypassing the disk size checks in dscheck().

Implement the disk layer for NATA CD devices so it matches the ATA driver.

Tell CAM to create a compatibility 'a' slice for CDs (it wasn't before).

13 years agoNuke some obsolete named(8) related variables which were removed from the
Sascha Wildner [Sat, 2 Jun 2007 23:53:26 +0000 (23:53 +0000)]
Nuke some obsolete named(8) related variables which were removed from the
system when we upgraded to BIND9 in 2004.

13 years agoSynchronize to FreeBSD 1.35 - just adds a #define for ATA_SMART_CMD.
Matthew Dillon [Sat, 2 Jun 2007 19:17:01 +0000 (19:17 +0000)]
Synchronize to FreeBSD 1.35 - just adds a #define for ATA_SMART_CMD.

13 years agoBring in 1.343 from FreeBSD. FreeBSD commit message:
Matthew Dillon [Sat, 2 Jun 2007 18:48:40 +0000 (18:48 +0000)]
Bring in 1.343 from FreeBSD.  FreeBSD commit message:
"Add support for chipsets that has NULL'd BAR's for legacy ports.
This allows DMA to be used on a fine little geode system I got here and
most like on lots of older systems like that."

Obtained-from: FreeBSD / sos

13 years ago- Nuke the second parameter of bridge_stop(). This kind of stop interface
Sepherosa Ziehau [Sat, 2 Jun 2007 12:51:48 +0000 (12:51 +0000)]
- Nuke the second parameter of bridge_stop().  This kind of stop interface
  is never adopted by DragonFly.
- In bridge_ioctl():
  o  Use suser_ucred() instead of suser(), since ucred is passed to us.
  o  Correct comment and nuke unapplicable comment.
- In bridge_start():
  o  Move stack variables near their usage.
  o  Make sure that ether_header is contiguous in mbuf before accessing it.
- Add serializer assertion at the beginning of all ifnet functions.
- Minor style changes.

13 years agoDocument pf(4) related variables.
Sascha Wildner [Sat, 2 Jun 2007 10:59:37 +0000 (10:59 +0000)]
Document pf(4) related variables.

13 years agoOops, add variable types.
Sascha Wildner [Sat, 2 Jun 2007 10:26:47 +0000 (10:26 +0000)]
Oops, add variable types.

13 years agoDocument some variables which were added with Andreas Hauser's rc.firewall
Sascha Wildner [Sat, 2 Jun 2007 10:07:03 +0000 (10:07 +0000)]
Document some variables which were added with Andreas Hauser's rc.firewall
rewrite of 2004.

13 years agoFix loopback setup for firewall_type="closed".
Sascha Wildner [Sat, 2 Jun 2007 09:16:49 +0000 (09:16 +0000)]
Fix loopback setup for firewall_type="closed".

13 years ago- Break long lines.
Sepherosa Ziehau [Sat, 2 Jun 2007 09:08:26 +0000 (09:08 +0000)]
- Break long lines.
- Use __func__ instead of hardwired function name.
- kprintf("%s: ...", ifp->if_xname) ===> if_printf(ifp, "...")
- White space.

13 years agokmalloc(M_WAITOK) will never return NULL.
Sepherosa Ziehau [Sat, 2 Jun 2007 08:31:00 +0000 (08:31 +0000)]
kmalloc(M_WAITOK) will never return NULL.

13 years agobstp_input() can't return non-NULL mbuf, explicitly assert that.
Sepherosa Ziehau [Sat, 2 Jun 2007 05:33:09 +0000 (05:33 +0000)]
bstp_input() can't return non-NULL mbuf, explicitly assert that.

13 years ago- Avoid mbuf "use after free", if bridge(4) is in monitor mode.
Sepherosa Ziehau [Sat, 2 Jun 2007 05:09:18 +0000 (05:09 +0000)]
- Avoid mbuf "use after free", if bridge(4) is in monitor mode.
- Minor style changes.

13 years agoMake 'device natausb' compile again.
Sascha Wildner [Fri, 1 Jun 2007 22:48:16 +0000 (22:48 +0000)]
Make 'device natausb' compile again.

13 years agoRegen.
Sascha Wildner [Fri, 1 Jun 2007 19:15:58 +0000 (19:15 +0000)]

Hart:    2007-05-16 (version 640)
Boemler: 2007-06-01

13 years agoMerge all the FreeBSD work done since our initial import of NATA, except
Matthew Dillon [Fri, 1 Jun 2007 00:31:15 +0000 (00:31 +0000)]
Merge all the FreeBSD work done since our initial import of NATA, except
for the disk flushing code.  The disk flushing code still needs to be done.
The work includes a ton of SATA chipset work, bug fixes, cleanups, and new
chip support.

Obtained-from: FreeBSD / =?ISO-8859-1?Q?S=F8ren_Schmidt?= <sos@deepcore.dk>

13 years agoAdd a missing header file dependancy.
Matthew Dillon [Fri, 1 Jun 2007 00:25:23 +0000 (00:25 +0000)]
Add a missing header file dependancy.

13 years agoAdd flsl() for the NATA driver.
Matthew Dillon [Fri, 1 Jun 2007 00:24:25 +0000 (00:24 +0000)]
Add flsl() for the NATA driver.

13 years agoAdd flsl() for the NATA driver.
Matthew Dillon [Fri, 1 Jun 2007 00:23:28 +0000 (00:23 +0000)]
Add flsl() for the NATA driver.

13 years agoKill documentation for harvest_{interrupt,ethernet,p_to_p} which were
Sascha Wildner [Thu, 31 May 2007 23:03:36 +0000 (23:03 +0000)]
Kill documentation for harvest_{interrupt,ethernet,p_to_p} which were
removed in 2004.

13 years agoAdjust M_NOWAIT to M_WAITOK or M_INTWAIT as appropriate.
Matthew Dillon [Thu, 31 May 2007 22:10:59 +0000 (22:10 +0000)]
Adjust M_NOWAIT to M_WAITOK or M_INTWAIT as appropriate.

13 years agoAdd ip6 and icmp6 displays to systat(1).
Hasso Tepper [Thu, 31 May 2007 11:38:37 +0000 (11:38 +0000)]
Add ip6 and icmp6 displays to systat(1).

Obtained-from: FreeBSD

13 years agoCatch up with the latest LWKT msgport updating.
Sepherosa Ziehau [Thu, 31 May 2007 11:00:25 +0000 (11:00 +0000)]
Catch up with the latest LWKT msgport updating.

Reviewed-by: dillon@
13 years agoRename private to privdata and class to srclass to avoid conflicts with
Matthew Dillon [Tue, 29 May 2007 17:01:04 +0000 (17:01 +0000)]
Rename private to privdata and class to srclass to avoid conflicts with

Reported-by: Hasso Tepper <bugs@crater.dragonflybsd.org>
Dragonfly-bug: <http://bugs.dragonflybsd.org/issue663>

13 years agoAdd implementations of the inet6_opt* and inet6_rth* functions (RFC3542).
Hasso Tepper [Tue, 29 May 2007 10:58:11 +0000 (10:58 +0000)]
Add implementations of the inet6_opt* and inet6_rth* functions (RFC3542).

The patch brings in the part of the RFC3542 API we already have declared
in the sys/netinet6/in6.h, but implementations were missing which confuses
third party apps.

As IPv6 Routing Header Type 0 is already in the way to deprecation (see
draft-ietf-ipv6-deprecate-rh0-00.txt for details), handling of these is
removed from inet6_rth* functions.

Obtained-from: KAME

13 years agoUpdate ping(8) code and manpage to the newest ones from FreeBSD.
Hasso Tepper [Tue, 29 May 2007 10:21:41 +0000 (10:21 +0000)]
Update ping(8) code and manpage to the newest ones from FreeBSD.
Besides many small fixes this brings in some new features:

  * -D to set Don't Fragment bit
  * -G, -g and -h for sweeping pings
  * -M for using ICMP_MASKREQ or ICMP_TSTAMP instead of ICMP_ECHO
  * -o to exit successfully after receiving one reply packet
  * -W to set time to wait for a reply for each packet sent
  * -z to set TOS

Significant part of diff not related to the new features is coming
from reordering command line options into alphabetic order.

Obtained-from: FreeBSD

13 years agoRemove unnecessary initialization and fix a GCC-4.x run-time linking issue
Matthew Dillon [Mon, 28 May 2007 18:55:41 +0000 (18:55 +0000)]
Remove unnecessary initialization and fix a GCC-4.x run-time linking issue
at the same time.

Reported-by: David Murray <dave@nospam.murray.name>
13 years agoUpdate to file 4.21 which is a bugfix release including an integer
Peter Avalos [Mon, 28 May 2007 18:42:39 +0000 (18:42 +0000)]
Update to file 4.21 which is a bugfix release including an integer
overflow.  See Changelog for more changes.

13 years agoMerge from vendor branch FILE:
Peter Avalos [Mon, 28 May 2007 18:42:39 +0000 (18:42 +0000)]
Merge from vendor branch FILE:
Update to file 4.21 which is a bugfix release including an integer
overflow.  See Changelog for more changes.