dragonfly.git
18 years agoAdd an argument to vfs_add_vnodeops() to specify VVF_* flags for the vop_ops
Matthew Dillon [Sat, 17 Sep 2005 07:43:12 +0000 (07:43 +0000)]
Add an argument to vfs_add_vnodeops() to specify VVF_* flags for the vop_ops
structure.  Add a new flag called VVF_SUPPORTS_FSMID to indicate filesystems
which support persistent storage of FSMIDs.  Rework the FSMID code a bit
to reduce overhead.

Use the spare field in the UFS inode structure to implement a persistent
FSMID.  The FSMID is recursively marked in the namecache but not adjusted
until the next getattr() call on the related inode(s), or when the vnode
is reclaimed.

18 years agoAdd an option, -y, which displays the 64 bit FSMID for a file or directory.
Matthew Dillon [Sat, 17 Sep 2005 07:08:43 +0000 (07:08 +0000)]
Add an option, -y, which displays the 64 bit FSMID for a file or directory.

18 years agoSplit spinlock.h into spinlock.h and spinlock2.h so we can embed spinlocks in
Matthew Dillon [Fri, 16 Sep 2005 21:50:13 +0000 (21:50 +0000)]
Split spinlock.h into spinlock.h and spinlock2.h so we can embed spinlocks in
other structures/header files without having to bring in a ton of includes.

18 years agoReserve the same amount of space for the spinlock structure whether we are
Matthew Dillon [Fri, 16 Sep 2005 20:55:44 +0000 (20:55 +0000)]
Reserve the same amount of space for the spinlock structure whether we are
SMP or not, so other structures using it do not change size.

18 years agoBump __Dragonfly_version to 130006 (+ slip preview on the file)
Matthew Dillon [Fri, 16 Sep 2005 19:25:03 +0000 (19:25 +0000)]
Bump __Dragonfly_version to 130006 (+ slip preview on the file)

Reminded-by: Joerg Sonnenberger <joerg@britannica.bec.de>
18 years agoAdd -d /cvs to tag update targets.
Matthew Dillon [Fri, 16 Sep 2005 18:50:15 +0000 (18:50 +0000)]
Add -d /cvs to tag update targets.

18 years agoBump the development sub-version to 6, covering the following major changes
Matthew Dillon [Fri, 16 Sep 2005 18:48:34 +0000 (18:48 +0000)]
Bump the development sub-version to 6, covering the following major changes
and numerous smaller changes.

    Ffs_balloc deadlock.
    Newreno fixes.
    FreeBSD-SA-05:15.tcp.
    Netgraph module loads.
    Vnode deadlock during tty close.
    Nfs netboot panic.
    Kernel native rpc mount capability.
    Usb/ehci fixes.
    Journaling improvements.
    APIC/SMP fixes.
    TWE/TWA fixes.
    Sync time of day on halt.
    Serializer bug fixed (SMP).
    Token bug fixed (SMP).
    NFS server directory bug fixed.
    (some) Vinum fixes.

18 years agoCleanup a couple of serious issues with vinum.
Matthew Dillon [Fri, 16 Sep 2005 04:33:14 +0000 (04:33 +0000)]
Cleanup a couple of serious issues with vinum.

* If someone specifies a partition or a slice instead of a raw drive, such as
  'vinum read /dev/da0d' or 'vinum read /dev/da0s1', vinum gets really confused
  when it constructs device names while doing the drive scan.  For example,
  it was constructing device names like '/dev/da0as1d'.  Fixed.

  Note that vinum cannot recover the complete configuration when vinum read
  is used to scan a single partition such as /dev/da0d.  You have to tell
  it to scan the all drives associated with the vinum volume for it to be
  able to complete configure the volume.  If a 'vinum list' shows drives
  as 'referenced' without a device path, the related volumes/plexes/whatever
  cannot be used until the remaining subdisks are loaded.

* vinum was attempting to construct the device major/minor number manually
  instead of using the appropriate macros, which prevented it from properly
  handling partitions greater then 'i' through 'p'.  Fixed.

* vinum was issuing BUF_STRATEGY calls without initializing b_dev.  In
  DragonFly, b_dev must be initialized prior to every strategy call, even
  when reusing a buffer (this requirement will later be used as part of
  the block number translation caching subsystem).

Reported-by: Dave Hayes
18 years ago- include stdio.h
Sepherosa Ziehau [Thu, 15 Sep 2005 04:34:52 +0000 (04:34 +0000)]
- include stdio.h
Requested-by: Jeremy C. Reed <reed at reedmedia.net>
    Obtained-from: NetBSD
- in tcpd_{warn, jump}()'s declaration, constify format strings

18 years agodiag.c:
Sepherosa Ziehau [Thu, 15 Sep 2005 04:33:04 +0000 (04:33 +0000)]
diag.c:
- move sccs id string into comment, add DragonFly cvs tag
- use stdarg.h instead of mystdarg.h
- constify various format strings
- remove stdio.h inclusion, which is will be done in tcpd.h

tcpd.h:
- include stdio.h
Requested-by: Jeremy C. Reed <reed at reedmedia.net>
    Obtained-from: NetBSD
- in tcpd_{warn, jump}()'s declaration, constify format strings

18 years agoRename all the functions and structures for the old VOP namespace API
Matthew Dillon [Wed, 14 Sep 2005 01:13:50 +0000 (01:13 +0000)]
Rename all the functions and structures for the old VOP namespace API
functions from vop_* to vop_old_*.  e.g. vop_lookup -> vop_old_lookup.
This will make it easier to identify areas containing old VOP API code.

Remove vop_old_*_ap() functions, they are not used (and not allowed to be
used).  The old API is only allowed at the leaf of a VFS stack.

18 years agoCleanup minor syntax/informational issues.
Matthew Dillon [Tue, 13 Sep 2005 18:13:11 +0000 (18:13 +0000)]
Cleanup minor syntax/informational issues.

18 years agoFix a token bug. A preempting interrupt thread blocking on a token cannot
Matthew Dillon [Mon, 12 Sep 2005 21:48:22 +0000 (21:48 +0000)]
Fix a token bug.  A preempting interrupt thread blocking on a token cannot
safely call lwkt_drain_token_requests() because the procedure may give away
tokens owned by the preempted (parent) thread.  Instead we simply call
lwkt_yield() to turn ourselves into a normally scheduled thread and return.

Reported-by: Peter Avalos <pavalos@theshell.com>
18 years agoFix a serializer bug. The SMP serializer would in some cases fail to
Matthew Dillon [Mon, 12 Sep 2005 21:40:24 +0000 (21:40 +0000)]
Fix a serializer bug.  The SMP serializer would in some cases fail to
wakeup blocked waiters.

Reported-by: Peter Avalos <pavalos@theshell.com>
18 years agoDragonFly's malloc only guarentees X alignment when X is a power of 2,
Matthew Dillon [Mon, 12 Sep 2005 21:38:34 +0000 (21:38 +0000)]
DragonFly's malloc only guarentees X alignment when X is a power of 2,
otherwise we would have to use contigalloc, which is nasty.

Use malloc and adjust the allocation request from a multiple of 512 to the
nearest power of 2 greater or equal to 512 and greater or equal to the
request size.

Once a filesystem is mounted I/O operates on 512 byte boundaries anyway, so
this bug fix only effects programs that operates directly on the block device
such as 'newfs' and 'fsck'.

18 years agoCall resettodr on shutdown to ensure that RTC and wall clock gets
Joerg Sonnenberger [Mon, 12 Sep 2005 21:32:03 +0000 (21:32 +0000)]
Call resettodr on shutdown to ensure that RTC and wall clock gets
synchronised. This should make clock drifts on long running systems not
depend on the initial sync.

18 years agoWhen testing whether a negative delta is smaller than the default
Joerg Sonnenberger [Mon, 12 Sep 2005 19:01:45 +0000 (19:01 +0000)]
When testing whether a negative delta is smaller than the default
per-tick delta, the latter has to be negated, otherwise the condition is
always false.

18 years agoDon't declare a struct just for sizeof(). Just use sizeof().
Liam J. Foy [Mon, 12 Sep 2005 14:35:51 +0000 (14:35 +0000)]
Don't declare a struct just for sizeof(). Just use sizeof().

18 years agoAdd helper script to generate README.DELETED files.
Simon Schubert [Mon, 12 Sep 2005 00:10:00 +0000 (00:10 +0000)]
Add helper script to generate README.DELETED files.

usage:
  genreadmedeleted origdir trimddir

18 years agoMove the modification of hspace out of the realloc call to make this a
Joerg Sonnenberger [Sun, 11 Sep 2005 23:32:08 +0000 (23:32 +0000)]
Move the modification of hspace out of the realloc call to make this a
bit easier to understand. No functional change.

18 years agoremove unnecessary XXX marked comment
Sepherosa Ziehau [Sun, 11 Sep 2005 13:33:40 +0000 (13:33 +0000)]
remove unnecessary XXX marked comment

Noticed-by: Sarunas Vancevicius <svan at redbrick.dcu.ie>
18 years agofree aha_softc only after it is not used any more
Sepherosa Ziehau [Sun, 11 Sep 2005 13:23:10 +0000 (13:23 +0000)]
free aha_softc only after it is not used any more
Obtained-from: FreeBSD dev/aha/aha_isa.c rev1.30

18 years agoUpdate gcc40 to 4.0.1
Simon Schubert [Sun, 11 Sep 2005 13:09:09 +0000 (13:09 +0000)]
Update gcc40 to 4.0.1

18 years agoUpdate our READMEs.
Simon Schubert [Sun, 11 Sep 2005 13:05:13 +0000 (13:05 +0000)]
Update our READMEs.

18 years ago- convert PRVERB to use device_printf()
Sepherosa Ziehau [Sun, 11 Sep 2005 13:03:16 +0000 (13:03 +0000)]
- convert PRVERB to use device_printf()
- add aha_softc.dev
- push "dev" into aha_alloc() instead of "unit" in order to convert printf() to
  device_printf() in aha_alloc().  change aha_alloc() declaration in ahareg.h
  accordingly
- printf("aha%d str", aha->unit) ==> device_printf(aha->dev, "str")
- in aha_alloc(), aha_free() and aha_attach(), use device_get_unit(aha->dev)
  to get the device unit instead of using aha->unit directly
- remove aha_softc.unit

Submitted-by: Sarunas Vancevicius <svan at redbrick.dcu.ie>
18 years agoMerge from vendor branch GCC:
Simon Schubert [Sun, 11 Sep 2005 12:56:08 +0000 (12:56 +0000)]
Merge from vendor branch GCC:
Import stripped gcc-4.0.1 sources.

18 years agoImport stripped gcc-4.0.1 sources.
Simon Schubert [Sun, 11 Sep 2005 12:56:08 +0000 (12:56 +0000)]
Import stripped gcc-4.0.1 sources.

18 years agoRemove VAX and PDP-11 support.
Sascha Wildner [Sun, 11 Sep 2005 11:35:38 +0000 (11:35 +0000)]
Remove VAX and PDP-11 support.

18 years agoRemove Tahoe support.
Sascha Wildner [Sun, 11 Sep 2005 11:34:53 +0000 (11:34 +0000)]
Remove Tahoe support.

18 years agoRemove custom 'load' and 'unload' targets.
Sascha Wildner [Sun, 11 Sep 2005 10:52:56 +0000 (10:52 +0000)]
Remove custom 'load' and 'unload' targets.

18 years agoRemove VAX and Tahoe support.
Sascha Wildner [Sat, 10 Sep 2005 21:03:27 +0000 (21:03 +0000)]
Remove VAX and Tahoe support.

18 years agoRemove Tahoe support.
Sascha Wildner [Sat, 10 Sep 2005 21:01:20 +0000 (21:01 +0000)]
Remove Tahoe support.

18 years agoFix wrong MLINKS. isnan(3) has a man page of its own.
Sascha Wildner [Sat, 10 Sep 2005 20:17:27 +0000 (20:17 +0000)]
Fix wrong MLINKS. isnan(3) has a man page of its own.

Spotted by: corecode

18 years agoAdd stale exp10(3) and exp10f(3) man pages & cvsbug(8) to make upgrade.
Sascha Wildner [Sat, 10 Sep 2005 12:10:31 +0000 (12:10 +0000)]
Add stale exp10(3) and exp10f(3) man pages & cvsbug(8) to make upgrade.

18 years agoGet rid of the Makefile.
Jeroen Ruigrok/asmodai [Sat, 10 Sep 2005 11:58:32 +0000 (11:58 +0000)]
Get rid of the Makefile.

18 years agoUnhook cvsbug from the build.
Jeroen Ruigrok/asmodai [Sat, 10 Sep 2005 11:55:42 +0000 (11:55 +0000)]
Unhook cvsbug from the build.
Not really useful for the users and developers know how to report this stuff.

18 years agotypo fixing
Sepherosa Ziehau [Sat, 10 Sep 2005 11:51:36 +0000 (11:51 +0000)]
typo fixing

18 years agoAdd missing MLINK exp.3 -> log1pf.3 (the rest is reformatting).
Sascha Wildner [Sat, 10 Sep 2005 11:36:11 +0000 (11:36 +0000)]
Add missing MLINK exp.3 -> log1pf.3 (the rest is reformatting).

18 years agoRemove more scripts whose only purpose was to kldload modules.
Sascha Wildner [Sat, 10 Sep 2005 10:41:41 +0000 (10:41 +0000)]
Remove more scripts whose only purpose was to kldload modules.

18 years agoRemove minigzip(1) and joy(8) via 'make upgrade'.
Sascha Wildner [Sat, 10 Sep 2005 10:14:10 +0000 (10:14 +0000)]
Remove minigzip(1) and joy(8) via 'make upgrade'.

18 years agoRemove joy(8). Its sole purpose was to kldload joy.
Sascha Wildner [Sat, 10 Sep 2005 10:08:42 +0000 (10:08 +0000)]
Remove joy(8). Its sole purpose was to kldload joy.

18 years agoAdd obsolete time zone information files to upgrade target.
Sascha Wildner [Sat, 10 Sep 2005 08:38:47 +0000 (08:38 +0000)]
Add obsolete time zone information files to upgrade target.

18 years agoFix isa_wrongintr. The APIC vector was being directly assigned to a C
Matthew Dillon [Sat, 10 Sep 2005 06:48:08 +0000 (06:48 +0000)]
Fix isa_wrongintr.  The APIC vector was being directly assigned to a C
function, resulting in register corruption and other nasties.  Generate
a set of assembly functions to handle wrong-interrupt assignments.  For
now we just EOI the apic and iret.

This bug could cause an SMP box to crash on boot if a spurious IRQ #0
interrupt occurs while it is testing for 8254 interrupt delivery.

18 years agoSyntax cleanup, add a code comment, add a newline in a bootverbose
Matthew Dillon [Sat, 10 Sep 2005 06:46:05 +0000 (06:46 +0000)]
Syntax cleanup, add a code comment, add a newline in a bootverbose
message.

18 years agouse ether_crc32_be()
Sepherosa Ziehau [Fri, 9 Sep 2005 14:20:48 +0000 (14:20 +0000)]
use ether_crc32_be()

Reviewed-by: joerg
18 years agoProblem:
Sepherosa Ziehau [Fri, 9 Sep 2005 14:15:06 +0000 (14:15 +0000)]
Problem:
"... I found that it will not send any ethernet frame where the size % 64 == 0
 For instance all of the following will timeout
  ping -s 22 <host>
  ping -s 86 <host>
  ping -s 150 <host>
 etc ..."

Fix:
Use USBD_FORCE_SHORT_XFER flag when setting up transmit transfers.

Obtained-from: FreeBSD dev/usb/if_axe.c rev1.22
Reviewed-by: joerg
# The problem and fix was originally submitted to FreeBSD by
# Andew Thompson <andy at fud.org.nz>

18 years agoAdd pdfmark to the build.
Jeroen Ruigrok/asmodai [Fri, 9 Sep 2005 14:12:11 +0000 (14:12 +0000)]
Add pdfmark to the build.

18 years agoUpdate to groff 1.19.2.
Jeroen Ruigrok/asmodai [Fri, 9 Sep 2005 14:11:04 +0000 (14:11 +0000)]
Update to groff 1.19.2.

18 years agoUpdate to groff 1.19.2.
Jeroen Ruigrok/asmodai [Fri, 9 Sep 2005 14:10:38 +0000 (14:10 +0000)]
Update to groff 1.19.2.

With the following changes:

pic: The by argument in a for loop can now be negative if it is additive. For
     the multiplicative case, it must be greater than zero.

eqn: document the keywords: undef NAME, copy "FILE", space n.
eqn: document the macros: Alpha, ..., Omega, ldots, dollar.
eqn: document extended keywords: col n { ... }, lcol n { ... },
     rcol n { ... }, ccol n { ... }, pile n { ... }, lpile n { ... },
     rpile n { ... }, cpile n { ... }

grohtml: This device driver has been raised to beta stage; its set of tags
         should be stable now.
grohtml: New command line option s to set the base point size.
grohtml: New command line option S to set the split level while generating
         multiple files.

grotty: Experimental support for zero-width and double-width characters.

pdfroff: A new wrapper script contributed by Keith Marshall to easily create
         PDF documents with groff.

And some smaller changes.

18 years agoMerge from vendor branch GROFF:
Jeroen Ruigrok/asmodai [Fri, 9 Sep 2005 14:10:41 +0000 (14:10 +0000)]
Merge from vendor branch GROFF:
Update to groff 1.19.2.

With the following changes:

pic: The by argument in a for loop can now be negative if it is additive. For
     the multiplicative case, it must be greater than zero.

eqn: document the keywords: undef NAME, copy "FILE", space n.
eqn: document the macros: Alpha, ..., Omega, ldots, dollar.
eqn: document extended keywords: col n { ... }, lcol n { ... },
     rcol n { ... }, ccol n { ... }, pile n { ... }, lpile n { ... },
     rpile n { ... }, cpile n { ... }

grohtml: This device driver has been raised to beta stage; its set of tags
         should be stable now.
grohtml: New command line option s to set the base point size.
grohtml: New command line option S to set the split level while generating
         multiple files.

grotty: Experimental support for zero-width and double-width characters.

pdfroff: A new wrapper script contributed by Keith Marshall to easily create
         PDF documents with groff.

And some smaller changes.

18 years agoUpdate to groff 1.19.2.
Jeroen Ruigrok/asmodai [Fri, 9 Sep 2005 14:10:41 +0000 (14:10 +0000)]
Update to groff 1.19.2.

With the following changes:

pic: The by argument in a for loop can now be negative if it is additive. For
     the multiplicative case, it must be greater than zero.

eqn: document the keywords: undef NAME, copy "FILE", space n.
eqn: document the macros: Alpha, ..., Omega, ldots, dollar.
eqn: document extended keywords: col n { ... }, lcol n { ... },
     rcol n { ... }, ccol n { ... }, pile n { ... }, lpile n { ... },
     rpile n { ... }, cpile n { ... }

grohtml: This device driver has been raised to beta stage; its set of tags
         should be stable now.
grohtml: New command line option s to set the base point size.
grohtml: New command line option S to set the split level while generating
         multiple files.

grotty: Experimental support for zero-width and double-width characters.

pdfroff: A new wrapper script contributed by Keith Marshall to easily create
         PDF documents with groff.

And some smaller changes.

18 years agoIn axe_stop(), move axe_reset() after usbd_close_pipe().
Sepherosa Ziehau [Fri, 9 Sep 2005 13:59:27 +0000 (13:59 +0000)]
In axe_stop(), move axe_reset() after usbd_close_pipe().

usbd_set_config_no() will free `ifaces', which contains header of `pipe's.
So the `pipe' removal operation in usbd_close_pipe() will be quite dangerous
if usbd_set_config_no() has been called[here via axe_reset()]

Obtained-from: FreeBSD dev/usb/if_axe.c rev1.16
Reviewed-by: joerg
18 years agonew device:
Sepherosa Ziehau [Fri, 9 Sep 2005 13:32:45 +0000 (13:32 +0000)]
new device:
- Buffalo(MELCO) USB-Key Lan Adaptor(LUA-U20-KTX)
- System TALKS Inc. SGC-X2UL
- Sitecom's LN-029 USB 2.0 Ethernet adapter
- ethernet port in the JVC MP-PRX1 port replicator

Obtained-from: FreeBSD
Reviewed-by: joerg
18 years agoGet rid of xditview, since by default we do not have X installed, it makes
Jeroen Ruigrok/asmodai [Fri, 9 Sep 2005 12:30:47 +0000 (12:30 +0000)]
Get rid of xditview, since by default we do not have X installed, it makes
no sense having this in base.

Discussed with: swildner

18 years agoReally sort alphabetically.
Sascha Wildner [Thu, 8 Sep 2005 22:16:01 +0000 (22:16 +0000)]
Really sort alphabetically.

18 years agoAdd axe(4) driver.
Sascha Wildner [Thu, 8 Sep 2005 22:09:01 +0000 (22:09 +0000)]
Add axe(4) driver.

18 years ago[forced commit to correct commit msg]
Sascha Wildner [Thu, 8 Sep 2005 22:02:53 +0000 (22:02 +0000)]
[forced commit to correct commit msg]

Add manpage for the axe(4) driver.

Taken from: FreeBSD

18 years agoAdd manpage for the axe(4) driver.
Sascha Wildner [Thu, 8 Sep 2005 21:57:02 +0000 (21:57 +0000)]
Add manpage for the axe(4) driver.

18 years agoAdd /usr/pkg/info to info search path for pkgsrc users.
Joerg Sonnenberger [Thu, 8 Sep 2005 13:56:12 +0000 (13:56 +0000)]
Add /usr/pkg/info to info search path for pkgsrc users.

18 years agomake confuses the text file `moduli' with a binary which needs
Simon Schubert [Thu, 8 Sep 2005 13:14:30 +0000 (13:14 +0000)]
make confuses the text file `moduli' with a binary which needs
to be created from `moduli.c'.  Override this implicit rule by an
explicit do-nothing.

Suggested-by: yonetani
18 years agoAdd CVS Id to the config files so that mergemaster won't prompt to
Simon Schubert [Thu, 8 Sep 2005 13:02:20 +0000 (13:02 +0000)]
Add CVS Id to the config files so that mergemaster won't prompt to
merge for them every time, even if they didn't change.

18 years agoFix for the error
Jeroen Ruigrok/asmodai [Thu, 8 Sep 2005 11:28:39 +0000 (11:28 +0000)]
Fix for the error
bdf.ms:270: fatal error: input stack limit exceeded (probable
infinite loop)
that appears when building the xorg-docs package.
Problem reported to current-users by HIRATSUKA Kouichirou.
Fix provided by groff maintainer, Werner Lemberg.
Taken from: NetBSD

18 years agoRemove these files, we augment with mdoc.local what groff delivers us
Jeroen Ruigrok/asmodai [Thu, 8 Sep 2005 11:07:31 +0000 (11:07 +0000)]
Remove these files, we augment with mdoc.local what groff delivers us
in the stock distribution.

18 years agoCulminate all our local changes into one file:
Jeroen Ruigrok/asmodai [Thu, 8 Sep 2005 11:06:07 +0000 (11:06 +0000)]
Culminate all our local changes into one file:

Add macro identifier .Dx for DragonFly.
Add libkcore, libkinfo.
Standards names not in Groff (taken from NetBSD).
Use doc-default-operating-system instead of doc-operating-system.
Add all DragonFly's releases.
Add missing FreeBSD releases.
Add missing NetBSD releases.
Expand locale support with FR.

18 years agoUse groff 1.19.1 supplied file.
Jeroen Ruigrok/asmodai [Thu, 8 Sep 2005 11:02:26 +0000 (11:02 +0000)]
Use groff 1.19.1 supplied file.

18 years agoAdd patch to add Dx macro definition to doc-syms.
Jeroen Ruigrok/asmodai [Thu, 8 Sep 2005 10:58:16 +0000 (10:58 +0000)]
Add patch to add Dx macro definition to doc-syms.

18 years ago- set dc_softc.{dc_type, dc_flags, dc_pmode} for ADM9511, ADM9513
Sepherosa Ziehau [Thu, 8 Sep 2005 10:26:20 +0000 (10:26 +0000)]
- set dc_softc.{dc_type, dc_flags, dc_pmode} for ADM9511, ADM9513
- set dc_softc.dc_info in dc_probe(), instead of recalculating it
  in dc_attach().  move related comment to the new location.
- constify dc_devs[], dc_softc.dc_info and related stack variables

18 years agoSynchronize with FreeBSD.
Sascha Wildner [Thu, 8 Sep 2005 07:06:12 +0000 (07:06 +0000)]
Synchronize with FreeBSD.

Submitted by: Sarunas Vancevicius

18 years agoRework and expand the algorithms in JSCAN, part 6/?.
Matthew Dillon [Wed, 7 Sep 2005 19:10:09 +0000 (19:10 +0000)]
Rework and expand the algorithms in JSCAN, part 6/?.

Preliminary support for UNDO (-u) on mirrors.  We now have the ability
to roll a mirror forwards or backwards by a specific number of raw journaling
records (-c), or to roll it backwards completely.  However, only basic
remove and write UNDOs currently work, UNDOs for other transaction types
and UNDO's that start mid-transaction are untested.

18 years agoSlightly reorganize the transaction data. Instead of placing the REDO data
Matthew Dillon [Wed, 7 Sep 2005 19:04:18 +0000 (19:04 +0000)]
Slightly reorganize the transaction data.  Instead of placing the REDO data
at the top level, place it under a REDO sub-transaction.  This way we can
treat UNDO and REDO scans the same.

18 years agoAdjust pointer in function definition.
Sascha Wildner [Wed, 7 Sep 2005 07:50:16 +0000 (07:50 +0000)]
Adjust pointer in function definition.

Noticed by: Sarunas Vancevicius

18 years agoRework and expand the algorithms in JSCAN, part 5/?.
Matthew Dillon [Wed, 7 Sep 2005 07:20:23 +0000 (07:20 +0000)]
Rework and expand the algorithms in JSCAN, part 5/?.

Revamp the scanning code, cleaning up the API considerably and allowing
forward or backwards reads relative to a supplied record, which makes
scanning a lot more intuitive.

Implement the -c option to specify the number of raw records to process.
This is primarily intended for running a mirror forwards or backwards by
a certain number of records.

Implement mid-transaction recovery.  Mid-transaction recovery is needed
when a batch operation has stopped at a raw record that is in the middle
of a meta-transaction (a meta-transaction can consist of many raw records).
Stoppage can occur for many reasons, such as the batch being run while
the system is still writing out the records related to a meta-transaction,
or due to journal restarts, unexpected program termination, or command-line
limited record counts with -c.

This feature has been tested a little with -m -c 1 to iterate a mirror
forwards in time one raw record at a time across a large WRITE transaction
that covers many raw records.  It is a pre-requisite for being able to
iterate mirrors forwards and backwards in time.

18 years agofix the support for AN985 chip, which does not set the RXSTATE to STOPPED,
Sepherosa Ziehau [Wed, 7 Sep 2005 03:04:58 +0000 (03:04 +0000)]
fix the support for AN985 chip, which does not set the RXSTATE to STOPPED,
but to WAIT.
Obtained-from: FreeBSD pci/if_dc.c rev1.79

18 years agoRework and expand the algorithms in JSCAN, part 4/?.
Matthew Dillon [Wed, 7 Sep 2005 02:34:37 +0000 (02:34 +0000)]
Rework and expand the algorithms in JSCAN, part 4/?.

* Fix a bug in the handling of PAD records.  PAD records are special cased
  records in that the transaction id field may not be valid.  This occurs
  because a PAD record must be able to fill up the alignment space, which
  is only 16 bytes.  The journal_rawrecend structure winds up overlapping the
  transid of the journal_rawrecbeg structure in such cases.  We must skip
  such records.

* Fix a bug in jfile->jf_pos tracking when doing forward scans.  Since we
  supporting being able to scan forwards or reverse from any point, we
  have to properly track the file seek offset for forward scans.

Tested with /usr/obj recorded (-r) and mirrored (-m) through a buildworld.
A diff -r after the buildworld completed showed a perfect copy!  The
buildworld with both forward and reverse (undo) journaling enabled
generated 24 50MB journal files (1.2 GB of journal data).

18 years agoDocument a special case for Journaling PAD records. PAD records have to
Matthew Dillon [Tue, 6 Sep 2005 23:55:04 +0000 (23:55 +0000)]
Document a special case for Journaling PAD records.   PAD records have to
be able to fill up any dead space which, due to 16 byte alignment, can
be as little as 16 bytes.  In this case the rawrecend overlaps the transid
field of the rawrecbeg.  Thus, JREC_MINRECSIZE is actually 16, not 32.

18 years agoRework and expand the algorithms in JSCAN, part 3/?.
Matthew Dillon [Tue, 6 Sep 2005 22:33:00 +0000 (22:33 +0000)]
Rework and expand the algorithms in JSCAN, part 3/?.

* Have the debug dump print out raw record transaction id's.
* Fix a number of bugs in the prefix set code (the files were being
  strtoul'd in base 10 rather then base 16).
* Make multiple commands on the command line work (e.g. -w and -m together).
* Fix a few jseek() bugs.
* Add '-f' which operates like tail -f and allows a batch operation on e.g.
  a prefix file set to poll for more data.

Still TODO: ACK protocol, raw output (-o/-O) protocol, temporary mode for
record files (-W), and many other things.

18 years ago* Generally change NOXXX to NO_XXX, similar to work done in FreeBSD.
Matthew Dillon [Tue, 6 Sep 2005 18:55:50 +0000 (18:55 +0000)]
* Generally change NOXXX to NO_XXX, similar to work done in FreeBSD.
* Revamp the NO_XXX documentation in make.conf

Submitted-by: "Carl A. Schmidt" <carl@carlschmidt.net>
18 years agoRework and expand the algorithms in JSCAN, part 2/?.
Matthew Dillon [Tue, 6 Sep 2005 18:43:52 +0000 (18:43 +0000)]
Rework and expand the algorithms in JSCAN, part 2/?.

* Implement session tracking so multiple output commands can be independantly
  tracked.  However, currently only one output command may be specified
  (e.g. -w or -m, not both, yet)
* The session code now updates transaction id files, giving us a general
  restart capability on the userland side.
* Prefix set record mode (-w) should now work, including journal restarts.
* Running a mirror (-m) on an active prefix set should now operate properly
  in batch mode.

Many things are still not working yet.

18 years agoadd missing {} after if()
Sepherosa Ziehau [Tue, 6 Sep 2005 13:23:36 +0000 (13:23 +0000)]
add missing {} after if()
Obtained-from: FreeBSD pci/if_dc.c rev1.91

18 years agoGet rid of the old groff.
Jeroen Ruigrok/asmodai [Tue, 6 Sep 2005 12:16:49 +0000 (12:16 +0000)]
Get rid of the old groff.

18 years agoGet rid of the old texinfo.
Jeroen Ruigrok/asmodai [Tue, 6 Sep 2005 11:55:59 +0000 (11:55 +0000)]
Get rid of the old texinfo.

18 years agoAdd some words about PAM.
Joerg Sonnenberger [Tue, 6 Sep 2005 10:56:05 +0000 (10:56 +0000)]
Add some words about PAM.

Reminder: corecode

18 years agoMerge from vendor branch OPENSSH:
Joerg Sonnenberger [Tue, 6 Sep 2005 10:51:17 +0000 (10:51 +0000)]
Merge from vendor branch OPENSSH:
Welcome OpenSSH 4.2.

18 years agoWelcome OpenSSH 4.2.
Joerg Sonnenberger [Tue, 6 Sep 2005 10:51:17 +0000 (10:51 +0000)]
Welcome OpenSSH 4.2.

18 years agoWelcome OpenSSH 4.2.
Joerg Sonnenberger [Tue, 6 Sep 2005 10:51:17 +0000 (10:51 +0000)]
Welcome OpenSSH 4.2.

18 years agomergemaster -> make upgrade
Sascha Wildner [Tue, 6 Sep 2005 10:11:53 +0000 (10:11 +0000)]
mergemaster -> make upgrade

18 years ago- use pci_{get, set}_powerstate() instead of reinventing the wheel in dc_acpi()
Sepherosa Ziehau [Tue, 6 Sep 2005 08:06:13 +0000 (08:06 +0000)]
- use pci_{get, set}_powerstate() instead of reinventing the wheel in dc_acpi()
- remove unused DC_PSTATE_D?

18 years agoRework and expand the algorithms in JSCAN, part 1/2. Implement a new
Matthew Dillon [Tue, 6 Sep 2005 06:42:44 +0000 (06:42 +0000)]
Rework and expand the algorithms in JSCAN, part 1/2.  Implement a new
infrastructure in the userland jscan program to create a framework for
supporting the following:

* Pipe-throughs (without storing data in a buffering file).
* File-based buffering
* Streamed replication of journaled data.
* Sequenced output files limited to a specific size (to match against
  backup media)
* Transaction id tracking to support journal restarts and resynchronization.
  This is needed to make off-site and networked backups reliable.
* Decoupled journal operations.  e.g. (once finished) we will be able to run
  a jscan in realtime to record journal data, and another one in batch to
  take that data and use it to maintain a mirror or to send it to another
  machine in a restartable and resynchronizable manner.
* Infrastructure to be able to scan a journal forwards or backwards by
  an arbitrary number of raw records and maintain a mirror in both
  the forwards (redo) and backwards (undo) direction based on that ability.
* Infrastructure that will aid in the preferred backup methodology of
  maintaining a real time mirror and UNDO/REDO journal on a 100% full
  backup partition such that one is able to free space on the partition
  simply by removing the oldest journaling file.
* Infrastructure that will make it easier to solve the overlapping
  meta-transaction problem illustrated below:

      current synchronization point
                     V
  [ ][ ][ ][ ][ ][ ][ ][ ][ ][ ][ ][ ] <= Raw records
   A      <= meta transaction A
      B        B     B B <= meta transaction B
                  C              C  C <= meta transaction C
                           D  D         <= meta transaction D
 E  E                           <= meta transaction E

  As you can see, the point at which a journal is 'broken' could
  be right smack in the middle of several meta transactions at
  once, due to the fact that meta transactions are laid out as
  their records can be generated and multiple processes could be
  modifying the filesystem at the same time.

  If we are attempting to mirror this data, only transactions A and E
  will have been completed and issued to the mirror.  If the journal
  is broken at the sychnronization point and then restarted, in
  order to pick up where we left off we have to scan existing
  journal records all the way back to the first 'B' in order to
  recover transactions B and C, then continue recording the journal
  from the synchronization point until those transactions are complete
  and can be issued to the mirror.  The difficulty here is that we
  have to carefully track exactly what needs to be synchronized.
  In recovering transaction 'B' and 'C' we do not want to reissue
  transaction E, for example, which had already been completed prior to
  the break.

  The problem exists in both the forwards and reverse direction, and
  we need to be able to go in both directions to control the 'snapshot'
  view the mirror is presenting to us.

NOTE: this is just part 1/2.  This code and the new options are
NON WORKING at the moment.

18 years agoremove nonexistent kernel tunable parameters' statments.
Sepherosa Ziehau [Tue, 6 Sep 2005 02:34:20 +0000 (02:34 +0000)]
remove nonexistent kernel tunable parameters' statments.

18 years agoDocument the dscheck(9) function and explain how it affects the slice-
Hiten Pandya [Tue, 6 Sep 2005 01:21:26 +0000 (01:21 +0000)]
Document the dscheck(9) function and explain how it affects the slice-
and driver-relative block numbers, bio->bio_blkno and bio->bio_pblkno
respectively.

The latter is modified by the said function after doing various checks
on available information, such as disklabels, etc, while the former is
provided by the VFS.

Explain how said function re-transforms the block number fields when
LABEL support is enabled in the VN driver via vnconfig(8).

18 years agoTake back last commit. It's about normal vs. context diff, not
Sascha Wildner [Tue, 6 Sep 2005 00:43:16 +0000 (00:43 +0000)]
Take back last commit. It's about normal vs. context diff, not
context vs. unified (as i was wrongly assuming). Apologies.

18 years agoRemove false statement. Rejected hunks will come out in whatever format
Sascha Wildner [Tue, 6 Sep 2005 00:20:09 +0000 (00:20 +0000)]
Remove false statement. Rejected hunks will come out in whatever format
the original patch was in. OpenBSD seems to have missed that.

18 years agoAdd gcc40 build hooks. Gcc40 isn't built per default, you will have to
Simon Schubert [Mon, 5 Sep 2005 15:36:34 +0000 (15:36 +0000)]
Add gcc40 build hooks.  Gcc40 isn't built per default, you will have to
enable it by adding WANT_GCC40=yes to make.conf.

18 years agoFreeBSD -> DragonFly
Sascha Wildner [Mon, 5 Sep 2005 04:52:13 +0000 (04:52 +0000)]
FreeBSD -> DragonFly

18 years agoRemove old wtmp conversion tool.
Sascha Wildner [Mon, 5 Sep 2005 04:50:43 +0000 (04:50 +0000)]
Remove old wtmp conversion tool.

18 years ago* Constify and initialize potentially uninitialized variable.
Sascha Wildner [Mon, 5 Sep 2005 04:22:07 +0000 (04:22 +0000)]
* Constify and initialize potentially uninitialized variable.

* Remove unnecessary casts to caddr_t.

* Remove extra newline at top of function body.

* Bump WARNS to 6.

18 years agoCleanup:
Sascha Wildner [Mon, 5 Sep 2005 04:02:43 +0000 (04:02 +0000)]
Cleanup:

* Remove unnecessary casts to void and caddr_t.

* Remove hack to suppress GCC warnings (there aren't any warnings,
  anyway).

* Remove double CVS tags.

* Remove extra newline at top of function bodies.

18 years ago* Remove parameter names in function declarations.
Sascha Wildner [Mon, 5 Sep 2005 02:43:10 +0000 (02:43 +0000)]
* Remove parameter names in function declarations.

* Remove unnecessary void and caddr_t casts.

18 years agoK&R style function declarations -> ANSI C style.
Sascha Wildner [Sun, 4 Sep 2005 23:19:12 +0000 (23:19 +0000)]
K&R style function declarations -> ANSI C style.

Submitted by: Sarunas Vancevicius <svan@redbrick.dcu.ie>

18 years agoFix loader.rc path.
Sascha Wildner [Sun, 4 Sep 2005 12:20:46 +0000 (12:20 +0000)]
Fix loader.rc path.