dragonfly.git
18 years agoRemove VPLACEMARKER
Simon Schubert [Sun, 28 Aug 2005 23:35:35 +0000 (23:35 +0000)]
Remove VPLACEMARKER

18 years agoFix a deadlock in ffs_balloc(). This function was incorrectly obtaining a
Matthew Dillon [Sun, 28 Aug 2005 23:23:10 +0000 (23:23 +0000)]
Fix a deadlock in ffs_balloc().  This function was incorrectly obtaining a
locked indirect buffer followed by a locked data block buffer, where as other
procedures in the kernel generally held a locked data buffer and then
called procedures which locked the indirect buffer.  Programs like rtorrent,
which write data into the mmap'd files whos blocks had not yet been
allocated, could easily deadlock the vnode.

A typical deadlock would be: syncer calls putpages->ffs_write->balloc->getblk->
allocbuf->(blocked on VM page with indirect block and data block locked), while
at the same time some process takes a write fault which locks the VM page and
then attempts to do a BMAP, blocking on the indirect block buffer.  Deadlock.

The fix for ffs_balloc() is simply to obtain the data buffer prior to
obtaining the indirect block(s).

Reported-by: Mitja Horvat
MFC: 1 week

18 years ago- Don't write our own pid file, just use pidfile()
Liam J. Foy [Sun, 28 Aug 2005 20:55:07 +0000 (20:55 +0000)]
- Don't write our own pid file, just use pidfile()

18 years ago- Use pidfilei(3) to write a pid file in /var/run
Liam J. Foy [Sun, 28 Aug 2005 20:15:38 +0000 (20:15 +0000)]
- Use pidfilei(3) to write a pid file in /var/run

18 years agoTaken from FreeBSD-HEAD:
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 18:36:14 +0000 (18:36 +0000)]
Taken from FreeBSD-HEAD:

fr.ISO8859-1: Localisation file by Sebastien Gioria
koi8-r.tmac: Ruslan Ermilov's koi8-r tmac file

18 years agoMerge from vendor branch GROFF:
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 18:25:09 +0000 (18:25 +0000)]
Merge from vendor branch GROFF:
Remove mdoc.local, we need to make this truly local.

18 years agoRemove mdoc.local, we need to make this truly local.
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 18:25:09 +0000 (18:25 +0000)]
Remove mdoc.local, we need to make this truly local.

18 years agoRemove mdoc.local, we need to make this truly local.
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 18:25:09 +0000 (18:25 +0000)]
Remove mdoc.local, we need to make this truly local.

18 years agoMerge from vendor branch GROFF:
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 18:06:33 +0000 (18:06 +0000)]
Merge from vendor branch GROFF:
Update and reorder.

18 years agoUpdate and reorder.
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 18:06:33 +0000 (18:06 +0000)]
Update and reorder.

18 years agoMerge from vendor branch GROFF:
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 18:03:57 +0000 (18:03 +0000)]
Merge from vendor branch GROFF:
Add groff 1.19.1, stripped down appropriately.

18 years agoAdd groff 1.19.1, stripped down appropriately.
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 18:03:57 +0000 (18:03 +0000)]
Add groff 1.19.1, stripped down appropriately.

18 years agoMerge from vendor branch GROFF:
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 17:20:36 +0000 (17:20 +0000)]
Merge from vendor branch GROFF:
Add groff 1.19.1, stripped down appropriately.

18 years agoAdd groff 1.19.1, stripped down appropriately.
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 17:20:36 +0000 (17:20 +0000)]
Add groff 1.19.1, stripped down appropriately.

18 years agoAdd a version identifier to enable detection of additional features.
Simon Schubert [Sun, 28 Aug 2005 17:19:16 +0000 (17:19 +0000)]
Add a version identifier to enable detection of additional features.

18 years agoAdd a hack to pkgtools to install to a different root. This differs from
Simon Schubert [Sun, 28 Aug 2005 16:56:12 +0000 (16:56 +0000)]
Add a hack to pkgtools to install to a different root.  This differs from
using PREFIX as the installed files don't get relocated, but all the tree
appears in PKG_FAKEROOT, including PKG_DBDIR.

This won't work for all packages and isn't ment to either.  Pkgtools are
evil hackery anyways and this adds even more.  This will be used in
nrelease to support addition of packages by using the host tools and not
the target tools.

18 years agoMerge from vendor branch TEXINFO:
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 15:28:56 +0000 (15:28 +0000)]
Merge from vendor branch TEXINFO:
fdl.texi is needed.

18 years agofdl.texi is needed.
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 15:28:56 +0000 (15:28 +0000)]
fdl.texi is needed.

18 years agoA machine-independent spinlock implementation. It has the advantages of
Jeffrey Hsu [Sun, 28 Aug 2005 15:27:05 +0000 (15:27 +0000)]
A machine-independent spinlock implementation.  It has the advantages of
  1.  being written in C except for the most low-level atomic swap primitive,
        which is universally supported on current processor architectures
  2.  having a very small inlined memory footprint for spin_lock(),
        with the slow-path defered to a subroutine call
  3.  only requiring a bus-locked operation for lock acquisition,
         and not requiring a bus-locked operation for lock release
  4.  doing a non-bus-locked check first in the spin loop to
        reduce bus contention
  5.  doing exponential backoff in the uncommon contested case, which
        Sun has found to reduce bus contention by a factor of 5 or more

Reviewed by: Matt Dillon

18 years agoCommit a missed change.
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 14:19:30 +0000 (14:19 +0000)]
Commit a missed change.

18 years agoSwitch to texinfo 4.8, which is needed for a lot of new texi files.
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 12:25:05 +0000 (12:25 +0000)]
Switch to texinfo 4.8, which is needed for a lot of new texi files.

18 years agoAdd texinfo 4.8, appropriately stripped down.
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 12:23:25 +0000 (12:23 +0000)]
Add texinfo 4.8, appropriately stripped down.

18 years agoMerge from vendor branch TEXINFO:
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 12:23:25 +0000 (12:23 +0000)]
Merge from vendor branch TEXINFO:
Add texinfo 4.8, appropriately stripped down.

18 years agoRequire HEAD users to upgrade to 1.3.5 before running installworld, due
Matthew Dillon [Sun, 28 Aug 2005 07:06:42 +0000 (07:06 +0000)]
Require HEAD users to upgrade to 1.3.5 before running installworld, due
to the dirent changes (otherwise the 'find' binary will fail half way
through the installworld).

18 years agoBump the development sub-version to 1.3.5.
Matthew Dillon [Sun, 28 Aug 2005 07:04:32 +0000 (07:04 +0000)]
Bump the development sub-version to 1.3.5.

18 years agoUse FreeBSD's HEAD tag.
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 06:53:55 +0000 (06:53 +0000)]
Use FreeBSD's HEAD tag.

18 years agoFix PROCDURE -> PROCEDURE.
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 06:29:19 +0000 (06:29 +0000)]
Fix PROCDURE -> PROCEDURE.

18 years agoMerge from vendor branch NCURSES:
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 05:58:20 +0000 (05:58 +0000)]
Merge from vendor branch NCURSES:
Fix PROCDURE -> PROCEDURE.

Bloody copiers. :P

18 years agoMerge from vendor branch GCC:
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 05:58:20 +0000 (05:58 +0000)]
Merge from vendor branch GCC:
Fix PROCDURE -> PROCEDURE.

Bloody copiers. :P

18 years agoFix PROCDURE -> PROCEDURE.
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 05:58:20 +0000 (05:58 +0000)]
Fix PROCDURE -> PROCEDURE.

Bloody copiers. :P

18 years agoMerge from vendor branch CVS:
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 05:58:20 +0000 (05:58 +0000)]
Merge from vendor branch CVS:
Fix PROCDURE -> PROCEDURE.

Bloody copiers. :P

18 years agoFix PROCDURE -> PROCEDURE.
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 05:58:20 +0000 (05:58 +0000)]
Fix PROCDURE -> PROCEDURE.

Bloody copiers. :P

18 years agoMerge from vendor branch BINUTILS:
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 05:58:20 +0000 (05:58 +0000)]
Merge from vendor branch BINUTILS:
Fix PROCDURE -> PROCEDURE.

Bloody copiers. :P

18 years agoFix PROCDURE -> PROCEDURE.
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 05:58:20 +0000 (05:58 +0000)]
Fix PROCDURE -> PROCEDURE.

Bloody copiers. :P

18 years agoMerge from vendor branch BIND:
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 05:58:20 +0000 (05:58 +0000)]
Merge from vendor branch BIND:
Fix PROCDURE -> PROCEDURE.

Bloody copiers. :P

18 years agoFix PROCDURE -> PROCEDURE.
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 05:58:20 +0000 (05:58 +0000)]
Fix PROCDURE -> PROCEDURE.

Bloody copiers. :P

18 years agoFix PROCDURE -> PROCEDURE.
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 05:58:20 +0000 (05:58 +0000)]
Fix PROCDURE -> PROCEDURE.

Bloody copiers. :P

18 years agoFix PROCDURE -> PROCEDURE.
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 05:58:20 +0000 (05:58 +0000)]
Fix PROCDURE -> PROCEDURE.

Bloody copiers. :P

18 years agoAdd DragonFly release numbers.
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 05:34:49 +0000 (05:34 +0000)]
Add DragonFly release numbers.

18 years agoClean up manual page.
Jeroen Ruigrok/asmodai [Sun, 28 Aug 2005 05:13:53 +0000 (05:13 +0000)]
Clean up manual page.

18 years agoDump and restore need to use a UFS-centric inode representation. Convert
Matthew Dillon [Sun, 28 Aug 2005 04:35:14 +0000 (04:35 +0000)]
Dump and restore need to use a UFS-centric inode representation.  Convert
ino_t into ufs1_ino_t.

18 years agoAdd a typedef ufs1_ino_t to represent inodes for UFS1 filesystems.
Matthew Dillon [Sun, 28 Aug 2005 04:34:44 +0000 (04:34 +0000)]
Add a typedef ufs1_ino_t to represent inodes for UFS1 filesystems.

18 years agotest commit.
Sepherosa Ziehau [Sun, 28 Aug 2005 04:25:23 +0000 (04:25 +0000)]
test commit.

18 years agoAdd real function versions of the _unlocked family. Use putc for putchar
Joerg Sonnenberger [Sat, 27 Aug 2005 21:35:01 +0000 (21:35 +0000)]
Add real function versions of the _unlocked family. Use putc for putchar
directly.

18 years agoSmoke something else and revert the use of ssize_t, I've put it there
Joerg Sonnenberger [Sat, 27 Aug 2005 21:32:24 +0000 (21:32 +0000)]
Smoke something else and revert the use of ssize_t, I've put it there
for a reason after all.

18 years agoRemove space before '('. Correctly align some function names. No need to
Joerg Sonnenberger [Sat, 27 Aug 2005 21:13:28 +0000 (21:13 +0000)]
Remove space before '('. Correctly align some function names. No need to
use local versions of ssize_t (size_t is used already) or const.

18 years agoSync GCC 3.4's propolice with Etoh's official version. This fixes the
Joerg Sonnenberger [Sat, 27 Aug 2005 21:03:52 +0000 (21:03 +0000)]
Sync GCC 3.4's propolice with Etoh's official version. This fixes the
reorder bug in -O2+, which killed Samba from pkgsrc and mutt.

18 years agoMake struct dirent contain a full 64bit inode. Allow more than 255 byte
Joerg Sonnenberger [Sat, 27 Aug 2005 20:23:06 +0000 (20:23 +0000)]
Make struct dirent contain a full 64bit inode. Allow more than 255 byte
filenames by increasing d_namlen to 16bit. Remove UFS specific macros
from sys/dirent.h, programs which really need them should include
vfs/ufs/dir.h. MAXNAMLEN should not be used, but replaced by NAME_MAX.

To keep the impact for older BSD code small, d_ino and d_fileno are kept
in the old meaning when __BSD_VISIBLE is defined, otherwise the POSIX
version d_ino is used. This will be changed later to always define only
d_ino and make d_fileno a compatiblity macro for __BSD_VISIBLE.

d_name is left with hard-coded 256 byte space, this will be changed at
some point in the future and doesn't affect the ABI. Programs should
correctly allocate space themselve, since the maximum directory entry
length can be > 256 byte.

For allocating dirents (e.g. for readdir_r), _DIRENT_RECLEN and
_DIRENT_DIRSIZ should be used. NetBSD has choosen the same names.
Revamp the compatibility code to always use a local kernel buffer and
write out the entries. This will be changed later by passing down the
output function to vop_readdir, elimininating the redundant copy.

Change NFS and CD9660 to use to use vop_write_dirent, for CD9660 ensure
that the buffers are big enough by prepending char arrays of the right
size.

Tested-by & discussed-with: dillon

18 years agoSynchronise with NetBSD:
Jeroen Ruigrok/asmodai [Sat, 27 Aug 2005 19:00:49 +0000 (19:00 +0000)]
Synchronise with NetBSD:

ehci.c:

v1.74: Add suspend/resume support.
v1.75: Fix typo: compolicated.
v1.76: A little portability stuff (lockmgr -> usb_lockmgr)
v1.78: add interrupt transfers
v1.79: use DPRINTF instead of a printf

ehcireg.h:

1.18: Fix EHCI_HCS_P_INDICATOR

usb_port.h:

NetBSD/OpenBSD specific things, lockmgr->usb_lockmgr..

18 years agoSynchronise with NetBSD (some come from OpenBSD):
Jeroen Ruigrok/asmodai [Sat, 27 Aug 2005 15:34:17 +0000 (15:34 +0000)]
Synchronise with NetBSD (some come from OpenBSD):

v1.68: Adjust some silliness that was causing us to do extra work for "frame
       list rollover" interrupts, which we pretty much ignore.
v1.69: hcpriv is not actually used here.  Remove references to it.
v1.71: ANSIfy.
v1.72: Update printfs with accurate function names.
       Convert EHCI_LINK_TERMINATE using htole32().
v1.73: Fix spelling of intterupt.
       Use do .. while wrappers for debug print.

18 years agoPlace && at the right place.
Jeroen Ruigrok/asmodai [Sat, 27 Aug 2005 15:09:38 +0000 (15:09 +0000)]
Place && at the right place.

18 years agoSync with NetBSD:
Jeroen Ruigrok/asmodai [Sat, 27 Aug 2005 14:56:52 +0000 (14:56 +0000)]
Sync with NetBSD:

PR/23128:

Although the dma descriptors are limited to any 4G address range,
the data is not, using extra area in the dma descriptors to
define a 64 bit address. This is described in appendix B
of the EHCI 1.0 spec from the URL in the file dev/usb/ehci.c.
With a 64 bit address capable controller these upper address
values must be set, the current driver does not do this.

18 years agoUpdate FreeBSD tag to what the source code has.
Jeroen Ruigrok/asmodai [Sat, 27 Aug 2005 14:03:23 +0000 (14:03 +0000)]
Update FreeBSD tag to what the source code has.

18 years agoUpdate with the NetBSD code (which can include FreeBSD/OpenBSD changes):
Jeroen Ruigrok/asmodai [Sat, 27 Aug 2005 13:59:55 +0000 (13:59 +0000)]
Update with the NetBSD code (which can include FreeBSD/OpenBSD changes):

v1.13: suspend/resume support
v1.14: was already applied by Matt, ifdefs for soft interrupt related stuff
v1.15: interrupt transfers, done originally by iedowse of FreeBSD, some minor
       changes by David Gwyne.  Note that NetBSD misattributed and OpenBSD did
       not attribute at all.
v1.16: implement a DMA memory reserve, ifdef'd for NetBSD.
v1.17: ifdefs for sc_child for NetBSD/OpenBSD.
v1.18: add EHCI_MAX_POLLRATE

18 years agoAdd vendor ids for ATi and Philips.
Jeroen Ruigrok/asmodai [Sat, 27 Aug 2005 13:16:56 +0000 (13:16 +0000)]
Add vendor ids for ATi and Philips.

Add identificatio strings for the following:
  o ALi's M5239
  o AMD 8111
  o ATI SB200, SB400
  o Intel 6300ESB, ICH4, ICH5, ICH7
  o NVIDIA nForce 2, nForce 3, nForce 4
  o Philips ISP156x

18 years agoSynchronise with NetBSD v1.18:
Jeroen Ruigrok/asmodai [Sat, 27 Aug 2005 12:59:13 +0000 (12:59 +0000)]
Synchronise with NetBSD v1.18:

Allow 32 chars in the saved vendor string.  Fixes kern/29760.

18 years agoDereference pointer like we should.
Simon Schubert [Sat, 27 Aug 2005 10:20:27 +0000 (10:20 +0000)]
Dereference pointer like we should.

Found-by: sephe
18 years agoThe proper way to check for a normal mbuf cluster is with the
Jeffrey Hsu [Sat, 27 Aug 2005 03:05:24 +0000 (03:05 +0000)]
The proper way to check for a normal mbuf cluster is with the
M_EXT_CLUSTER flag.

18 years agoOnly include thread2.h for kernel builds (its macros are used by vm_page.h's
Matthew Dillon [Sat, 27 Aug 2005 00:56:57 +0000 (00:56 +0000)]
Only include thread2.h for kernel builds (its macros are used by vm_page.h's
inlines, which are also kernel-only).

18 years agoFix a serious bug in cache_inefficient_scan() related to its use of
Matthew Dillon [Sat, 27 Aug 2005 00:36:43 +0000 (00:36 +0000)]
Fix a serious bug in cache_inefficient_scan() related to its use of
VOP_READDIR().  VOP_READDIR() does very weird things when given both a
uio and cookies pointer.  Just give it a uio, instead.

This should fix a bug with the NFS server returning I/O errors to a
NFS client which is manipulating large directories.  The bug was preventing
the server from being able to resolve the namecache topology for a
disconnected directory vnode.

MFC in: 1 week.

18 years agoNo need to forget wcswidth.
Joerg Sonnenberger [Fri, 26 Aug 2005 22:03:26 +0000 (22:03 +0000)]
No need to forget wcswidth.

Found-by: Andreas Hauser
18 years agoDon't define infinite macros when we want to define infinity.
Joerg Sonnenberger [Fri, 26 Aug 2005 20:44:25 +0000 (20:44 +0000)]
Don't define infinite macros when we want to define infinity.

18 years agoWe have to copy the pam.d entries after running mtree, otherwise
Joerg Sonnenberger [Fri, 26 Aug 2005 15:25:59 +0000 (15:25 +0000)]
We have to copy the pam.d entries after running mtree, otherwise
/etc/pam.d will be created as normal file on old system.

Hasn't-updated-for-too-long: asmodai

18 years agoAdd a comment on top of ad_start, mentioning that it is called with
Hiten Pandya [Fri, 26 Aug 2005 14:26:45 +0000 (14:26 +0000)]
Add a comment on top of ad_start, mentioning that it is called with
a critical section held.

18 years agoStyle: break line into two, so it fits nicely in 80-column mode.
Hiten Pandya [Fri, 26 Aug 2005 13:02:07 +0000 (13:02 +0000)]
Style: break line into two, so it fits nicely in 80-column mode.

18 years agoAdd more documentation comments to disk_create() and dscheck().
Hiten Pandya [Fri, 26 Aug 2005 12:45:53 +0000 (12:45 +0000)]
Add more documentation comments to disk_create() and dscheck().

18 years agoReduce critical section warnings for AHC when critical section debugging
Matthew Dillon [Thu, 25 Aug 2005 23:37:35 +0000 (23:37 +0000)]
Reduce critical section warnings for AHC when critical section debugging
is turned on.  The warnings are due to the crit_enter() and crit_exit()
occuring in different procedures.

18 years agoRemove NO_B_MALLOC preprocessor macro, it was never turned on, and
Hiten Pandya [Thu, 25 Aug 2005 20:11:18 +0000 (20:11 +0000)]
Remove NO_B_MALLOC preprocessor macro, it was never turned on, and
just a hindrence.

Reviewed-by: Matthew Dillon

18 years agoChange the MAX_BUTTONS count to 31. This allows us to recognize more than
David Rhodus [Thu, 25 Aug 2005 18:48:19 +0000 (18:48 +0000)]
Change the MAX_BUTTONS count to 31.  This allows us to recognize more than
7 buttons on a mouse.

The same change was made in the NetBSD source.

18 years agoImplement FSMID. Use one of the spare 64 bit fields in the stat structure
Matthew Dillon [Thu, 25 Aug 2005 18:34:17 +0000 (18:34 +0000)]
Implement FSMID.  Use one of the spare 64 bit fields in the stat structure
for the FSMID.   The FSMID is a recursively updated field which allows one
to determine whether a subdirectory hierarchy has changed simply by checking
the base directory of the desired hierarchy.  The new field is st_fsmid.

The initial implementation stores the FSMID in the namecache, which means that
the FSMID will indicate a false change if a namecache entry is destroyed and
recreated.  A more deterministic test can be made by holding a file or
directory descriptor open.  However, it should be noted that DragonFly
implements a coherent and hierarchically consistent namecache so simply having
a subdirectory or file open will prevent the namecache records from that point
through to the root from being destroyed.

The FSMID can be used to greatly reduce the directories that must be searched
when synchronizing a filesystem.  The immediate intention is to use it to
provide a more efficient way to resynchronize a mirror (to generate journal
records 'diff'ing the current filesystem against a mirror), to improve
filesystem mirroring utilities, and to provide for an alternative backup
strategy that involves generating a diff set between two filesystems.
Normally such schemes would require the entire filesystem to be scanned, but
with FSMID the number of directories that must be searched can be greatly
reduced.

TODO: It is desireable for the FSMID information to be stored more permanently
in the inode to survive reboots and to not return false hits due to namecache
thrash.

Note that the FSMID facility does not work on an NFS client if the NFS server
or some other client modifies the filesystem.

18 years agoFix a bug introduced which causes chkgrp to coredump on certain group file
Liam J. Foy [Thu, 25 Aug 2005 17:09:32 +0000 (17:09 +0000)]
Fix a bug introduced which causes chkgrp to coredump on certain group file
layouts.

Reported by: Nikolay Kalev, on freebsd-current

18 years agoConvert to use vop_write_direntry,
Simon Schubert [Thu, 25 Aug 2005 01:14:55 +0000 (01:14 +0000)]
Convert to use vop_write_direntry,
uio->uio_offset now is the directory entry number.

18 years agoA break was still hanging around from the conversion of
Simon Schubert [Thu, 25 Aug 2005 00:55:22 +0000 (00:55 +0000)]
A break was still hanging around from the conversion of
case to if, resulting in a directory listing which only
contained "." and nothing else and therefore confusing VFS.
Fix msdosfs by removing this break statement.

18 years agoWhen writing UNDO records, only try to output the file contents for VREG
Matthew Dillon [Wed, 24 Aug 2005 21:14:21 +0000 (21:14 +0000)]
When writing UNDO records, only try to output the file contents for VREG
vnodes (fixes a panic).  When writing the UNDO record for a symlink,
write out the contents of the symlink.

18 years agoFilesystem journaling. Reorganize the journal scan for the mountpoint to
Matthew Dillon [Wed, 24 Aug 2005 20:28:33 +0000 (20:28 +0000)]
Filesystem journaling.  Reorganize the journal scan for the mountpoint to
allow portions of the journal transaction to be written prior to the VOP
operation being executed, and accomodate transactional aborts if the VOP
fails.   Previously the journal records had to be written only after the VOP
succeeded.

Implement UNDO records, including writing out file data that is about to
be overwritten and the mtime prior to a write, rename, or remove.  UNDO
records allow us to create a reversable journal, where we can wind a mirror
forwards or backwards simply by scanning the journal forwards or backwards.

18 years agoAdd AbortProc typedef to simplify code.
Max Okumoto [Wed, 24 Aug 2005 00:09:29 +0000 (00:09 +0000)]
Add AbortProc typedef to simplify code.

18 years agoRemove #ifdef SYSVVARSUB since the code is required by posix
Max Okumoto [Wed, 24 Aug 2005 00:09:02 +0000 (00:09 +0000)]
Remove #ifdef SYSVVARSUB since the code is required by posix

18 years agoRemove some unnecessary white space.
Max Okumoto [Wed, 24 Aug 2005 00:08:05 +0000 (00:08 +0000)]
Remove some unnecessary white space.

18 years agoMake 'make upgrade' work from the LiveCD, stage 5/5:
Chris Pressey [Tue, 23 Aug 2005 21:33:29 +0000 (21:33 +0000)]
Make 'make upgrade' work from the LiveCD, stage 5/5:

- Have the 'make customizeiso' target in the nrelease Makefile
  populate the ISO's /etc directory with some files required by the
  'make upgrade' process, namely the Makefiles of several important
  subdirectories of /etc, and the entire architecture-specific
  subdirectory.

  Note that these extra files are not installed on the user's hard
  drive, as /etc on the ISO is only used to boot the LiveCD.

18 years agoMake 'make upgrade' work from the LiveCD, stage 4/5 or so:
Chris Pressey [Tue, 23 Aug 2005 21:25:26 +0000 (21:25 +0000)]
Make 'make upgrade' work from the LiveCD, stage 4/5 or so:

- Allow the behaviour of 'make upgrade' itself to depend on what
  manner of upgrade is requested.  Introduce a new variable,
  BINARY_UPGRADE, which, when set, indicates that a binary upgrade -
  that is, an upgrade of the configuration files in the absence of
  the system sources (generally, done from the LiveCD) - is desired.

18 years ago- Do not allocate memory to entries in /var/rwho which have been down for
Liam J. Foy [Tue, 23 Aug 2005 21:22:11 +0000 (21:22 +0000)]
- Do not allocate memory to entries in /var/rwho which have been down for
  more than 4 days - waste of memory.

18 years agoMake 'make upgrade' work from the LiveCD, stage 3/6 or so:
Chris Pressey [Tue, 23 Aug 2005 21:13:35 +0000 (21:13 +0000)]
Make 'make upgrade' work from the LiveCD, stage 3/6 or so:

- Expand inline the contents of simple external Makefile targets
  (namely those for "make etc-termcap" and "make etc-rmt") which will
  not be available in the absence of a full source tree.

18 years agosort forward declarations in header file
Max Okumoto [Tue, 23 Aug 2005 21:03:02 +0000 (21:03 +0000)]
sort forward declarations in header file

18 years agoMake 'make upgrade' work from the LiveCD, stage 2/5 or so:
Chris Pressey [Tue, 23 Aug 2005 21:00:39 +0000 (21:00 +0000)]
Make 'make upgrade' work from the LiveCD, stage 2/5 or so:

- Allow the location from which 'make upgrade' obtains its new
  configuration files to be specified.  Introduce a new variable,
  UPGRADE_SRCDIR, and obtain all new configuration files from
  this location, instead of from .CURDIR.  Have UPGRADE_SRCDIR
  default to .CURDIR so that there is no functional change in the
  typical use case.

18 years agoMake 'make upgrade' work from the LiveCD, stage 1/5 or so:
Chris Pressey [Tue, 23 Aug 2005 20:42:44 +0000 (20:42 +0000)]
Make 'make upgrade' work from the LiveCD, stage 1/5 or so:

- Make 'make preupgrade' honour the DESTDIR variable.

18 years agoReduce the buffer size for the threaded version of ttyname() to TTY_PATH_MAX.
Matthew Dillon [Tue, 23 Aug 2005 17:46:28 +0000 (17:46 +0000)]
Reduce the buffer size for the threaded version of ttyname() to TTY_PATH_MAX.

18 years agoAdd a TTY_PATH_MAX limit, set to 256, and reduce the size of the ttyname
Matthew Dillon [Tue, 23 Aug 2005 17:44:24 +0000 (17:44 +0000)]
Add a TTY_PATH_MAX limit, set to 256, and reduce the size of the ttyname
static buffer from 1024 to a more reasonable TTY_PATH_MAX.

18 years agoAdd missing parenthesis.
Sascha Wildner [Tue, 23 Aug 2005 17:14:15 +0000 (17:14 +0000)]
Add missing parenthesis.

18 years agoBack out accidental commit.
Joerg Sonnenberger [Tue, 23 Aug 2005 16:37:06 +0000 (16:37 +0000)]
Back out accidental commit.

18 years agosendmail tried to limit directory names to MAXPATHLEN - MAXNAMLEN in an
Joerg Sonnenberger [Tue, 23 Aug 2005 15:28:06 +0000 (15:28 +0000)]
sendmail tried to limit directory names to MAXPATHLEN - MAXNAMLEN in an
attempt to bound the size of full path names. This is bogus, because
most directory entries are much shorter than MAXNAMLEN and some
filesystems might allow longer path names than MAXNAMLEN. Change the
logic to bound all path names to PATH_MAX by checking the return values
of sm_strlcpy.

18 years agoAlso allocate PATH_MAX for the threaded case.
Joerg Sonnenberger [Tue, 23 Aug 2005 12:09:24 +0000 (12:09 +0000)]
Also allocate PATH_MAX for the threaded case.

18 years agoDon't assume that ttys are always located directly in /dev. This
Joerg Sonnenberger [Tue, 23 Aug 2005 12:06:48 +0000 (12:06 +0000)]
Don't assume that ttys are always located directly in /dev. This
assumptions breaks as soon as a proper pts filesystem comes into place.
Also ensure the static buffer is not overflown when reading from the
database.

18 years agoRetire old, FreeBSD 4.x -derived ACPI code.
YONETANI Tomokazu [Tue, 23 Aug 2005 09:38:47 +0000 (09:38 +0000)]
Retire old, FreeBSD 4.x -derived ACPI code.

18 years agoAlso document BGE_FAKE_AUTONEG in LINT.
Joerg Sonnenberger [Mon, 22 Aug 2005 22:05:48 +0000 (22:05 +0000)]
Also document BGE_FAKE_AUTONEG in LINT.

18 years agoUpdate the TWE 3ware/AMCC driver code, bringing in all the fixes made
Hiten Pandya [Mon, 22 Aug 2005 21:16:20 +0000 (21:16 +0000)]
Update the TWE 3ware/AMCC driver code, bringing in all the fixes made
by Vinod Kashyap and Paul Saab in FreeBSD-5/STABLE, and retaining
those by David Rhodus and Matthew Dillon.

Remove some compatibility preprocessor BUF/BIO compatibility macros.

Changeset thoroughly tested by Tomaz Borstnar, Matthew Dillon and
David Rhodus.  Inspired by a heads-up from YONETANI Tomokazu.

18 years agoGC unused macro.
Joerg Sonnenberger [Mon, 22 Aug 2005 20:21:21 +0000 (20:21 +0000)]
GC unused macro.

noticed-by: dillon

18 years agoCreate a kernel option BGE_FAKE_AUTONEG for IBM/Intel blade servers,
Joerg Sonnenberger [Mon, 22 Aug 2005 18:29:52 +0000 (18:29 +0000)]
Create a kernel option BGE_FAKE_AUTONEG for IBM/Intel blade servers,
which should make the DNLK switch module work.  IBM/Intel blade server
with Intel or AD switch modules should work without the kernel options

Obtained-from: FreeBSD
Submitted-by: Sepherosa Ziehau <sepherosa@gmail.com>
18 years agoAdd descriptive comment back in
Simon Schubert [Mon, 22 Aug 2005 16:53:26 +0000 (16:53 +0000)]
Add descriptive comment back in

18 years agoInstead of resetting the video buffer's history size to the system
Matthew Dillon [Sun, 21 Aug 2005 19:11:28 +0000 (19:11 +0000)]
Instead of resetting the video buffer's history size to the system
default, reset it to the last vidcontrol-specified size.

Submitted-by: Alexey Slynko <slynko@tronet.ru>
18 years agoHave vidcontrol set the video history size based on a new rc.conf variable,
Matthew Dillon [Sun, 21 Aug 2005 19:08:12 +0000 (19:08 +0000)]
Have vidcontrol set the video history size based on a new rc.conf variable,
'vidhistory'.

Submitted-by: Alexey Slynko <slynko@tronet.ru>