1999/12/16 17:40:00	<jaharkes@cs.cmu.edu>

	Build cleanups

    Modified files:
	rvm/: Makefile.am acinclude.m4 configure.in 
	rvm/pkgs/: rvm.spec.in 
	rvm/rds/: Makefile.am 
	rvm/rvm/: Makefile.am rvm_status.c 
	rvm/seg/: Makefile.am rvm_loadseg.c 
	rvm/tests/: Makefile.am basher_parms rvm_basher.c testrvm.c 

    Added files:
	rvm/: NEWS 

    Removed files:
	rvm/: libtool.patch 
	rvm/tests/: log_file 

1999/12/22 21:59:15	<jaharkes@cs.cmu.edu>

	Building with a separate object tree is a bit cleaner now.
	Added .cvsignore files.

    Modified files:
	rvm/: acinclude.m4 bootstrap.sh 
	rvm/rds/: Makefile.am 
	rvm/tests/: Makefile.am 

    Added files:
	rvm/: .cvsignore 
	rvm/include/: .cvsignore 
	rvm/include/rvm/: .cvsignore 
	rvm/pkgs/: .cvsignore 
	rvm/rds/: .cvsignore 
	rvm/rvm/: .cvsignore 
	rvm/seg/: .cvsignore 
	rvm/tests/: .cvsignore 

1999/12/23 13:06:19	<jaharkes@cs.cmu.edu>

	Added Greg Troxel's patch to search for liblwp in ${prefix}/lib.

    Modified files:
	rvm/: acinclude.m4 
	rvm/tests/: .cvsignore 

1999/12/24 17:58:40	<jaharkes@cs.cmu.edu>

	Fixed cross-compiling for win32 and dos dpmi targets, DLL's on win32
	don't work yet.

    Modified files:
	rvm/: acinclude.m4 
	rvm/pkgs/: rvm-dos.spec.in rvm-nt.spec.in 
	rvm/rds/: Makefile.am 
	rvm/rvm/: Makefile.am rvm_map.c 
	rvm/tests/: Makefile.am 

1999/12/28 14:50:21	<jaharkes@cs.cmu.edu>

	Copying instead of linking the files automake is missing.

    Modified files:
	rvm/: bootstrap.sh 

1999/12/29 18:43:11	<jaharkes@cs.cmu.edu>

	Replaced '__BSD44__' with 'defined(__NetBSD__)||defined(__FreeBSD__)'

    Modified files:
	rvm/rvm/: rvm_map.c 

2000/02/07 22:50:39	<jaharkes@cs.cmu.edu>

	Added install and BSD package generator.

    Added files:
	rvm/: INSTALL 
	rvm/pkgs/: pkg-bsd.sh 

2000/02/07 23:01:12	<jaharkes@cs.cmu.edu>

	Copied the improved search for liblwp from the rpc2 package.

    Modified files:
	rvm/: acinclude.m4 configure.in 

2000/02/21 18:23:03	<jaharkes@cs.cmu.edu>

	Aligning rds allocate-able to the nearest chunksize.

    Modified files:
	rvm/rds/: rds_init.c 

2000/02/21 18:35:15	<jaharkes@cs.cmu.edu>

	Forgot to clear out some bad code.

    Modified files:
	rvm/rds/: rds_init.c 

2000/02/21 18:37:53	<jaharkes@cs.cmu.edu>

	Correctly casting the pointer arithmetic for the new padding.

    Modified files:
	rvm/rds/: rds_init.c 

2000/02/21 19:38:54	<jaharkes@cs.cmu.edu>

	Got rid of an #ifdef DJGPP.
	Updated NEWS file.

    Modified files:
	rvm/: NEWS 
	rvm/rds/: rdsinit.c 

2000/03/01 12:34:06	<phil@cs.cmu.edu>

	Add $(srcdir)/ in the proper places to allow compiling from a rvm/obj
	directory tree.

    Modified files:
	rvm/rds/: Makefile.am 
	rvm/tests/: Makefile.am 

2000/04/06 20:34:51	<jaharkes@cs.cmu.edu>

	- Bumped rvm version number
	- Some fixes for building ports/pkgs files
	- Fixed a bad test in rvm_map which was the cause of the RVM_EOFFSET
	errors. Depending on how rvm regions were added to the region_tree
	it worked, that's the only reason different devices/startaddresses
	seemed to help.

    Modified files:
	rvm/: configure.in 
	rvm/pkgs/: pkg-bsd.sh 
	rvm/rvm/: rvm_map.c 

2000/04/06 21:22:40	<jaharkes@cs.cmu.edu>

	Updated NEWS file.

    Modified files:
	rvm/: NEWS 

2000/04/17 22:04:14	<jaharkes@cs.cmu.edu>

	Don't remove INSTALL when doing 'make maintainer-clean'.

    Modified files:
	rvm/: Makefile.am 

2000/05/08 23:04:02	<jaharkes@cs.cmu.edu>

	A bunch of patches from Kevin Watkins and Derek Dreyer.
	- librdslwp was linked out of non-lwp objects.
	- init_free_lists was called outside of a critical section.
	- when building against lwp_pt, the _REENTRANT flag wasn't specified.

    Modified files:
	rvm/: configure.in 
	rvm/rds/: Makefile.am 
	rvm/rvm/: Makefile.am rvm_utils.c 
	rvm/tests/: Makefile.am 

2000/05/09 20:40:52	<jaharkes@cs.cmu.edu>

	Bumped version numbers and fixed up packaging spec files.

    Modified files:
	rvm/: NEWS configure.in 
	rvm/pkgs/: pkg-bsd.sh rvm.spec.in 
	rvm/rds/: Makefile.am 

2000/06/23 17:01:43	<jflinn@cs.cmu.edu>

	Changes for SA-1100 port.

    Modified files:
	rvm/: acinclude.m4 

2000/07/11 18:17:21	<jaharkes@cs.cmu.edu>

	Some 64-bit fixes

    Modified files:
	rvm/pkgs/: pkg-bsd.sh 
	rvm/rds/: rds_coalesce.c rds_free.c rds_private.h rds_stats.c 
	          rds_util.c 
	rvm/rvm/: rvmutl.c 
	rvm/seg/: rvm_loadseg.c rvm_segment_private.h 

2000/07/26 12:15:42	<jaharkes@cs.cmu.edu>

	A couple of patches for 64-bit processors.
	Packaging updates to build against lwp-1.5.

    Modified files:
	rvm/: NEWS configure.in 
	rvm/pkgs/: .cvsignore pkg-bsd.sh rvm-dos.spec.in 
	rvm/rds/: rds_free.c rds_init.c 

    Added files:
	rvm/pkgs/: rvm-win95.spec.in 

2000/07/26 14:09:28	<jaharkes@cs.cmu.edu>

	Added tests to avoid initializing rvm with a chunksize too small
	to contain the freeblock + guards.

    Modified files:
	rvm/include/: cthreads.h 
	rvm/rds/: rds_init.c rds_util.c rdsinit.c 

2000/08/17 18:06:42	<jaharkes@cs.cmu.edu>

	- Some cross-compilation changes.
	- Added rvm_release_segment function to clean up any memory mappings
	as set up by rvm_load_segment.
	- Made rds_zap_heap nicely clean up after itself so we can load the
	heap after initializing without restarting.

    Modified files:
	rvm/: NEWS acinclude.m4 
	rvm/include/rvm/: rvm_segment.h 
	rvm/pkgs/: pkg-bsd.sh rvm.spec.in 
	rvm/rds/: Makefile.am rds_zap.c rdsinit.c 
	rvm/seg/: Makefile.am rvm_createseg.c 

2000/08/17 18:09:43	<jaharkes@cs.cmu.edu>

	defaulting the basher to one thread when not compiled as lwp_basher.

    Modified files:
	rvm/tests/: rvm_basher.c 

2000/08/17 18:26:34	<jaharkes@cs.cmu.edu>

	Forgot to add the file with rvm_release_segment().

    Added files:
	rvm/seg/: rvm_releaseseg.c 

2000/08/22 18:13:49	<jaharkes@cs.cmu.edu>

	Bugfixes, wrong free in rvm_release_segment, and bad filenames listed
	in the rpm spec file.

    Modified files:
	rvm/include/rvm/: rvm_segment.h 
	rvm/pkgs/: rvm.spec.in 
	rvm/rds/: rds_zap.c 
	rvm/seg/: rvm_releaseseg.c 

2000/08/23 10:44:22	<jaharkes@cs.cmu.edu>

	private mmaps were registering the 0-page when rvm_map was called
	with region->vmaddr == 0.

    Modified files:
	rvm/rvm/: rvm_map.c rvm_private.h 
	rvm/seg/: rvm_loadseg.c 

2000/09/01 20:22:49	<phil@cs.cmu.edu>

	Without MMAP (is that only NT?) use the dwAllocationGranularity for the
	page_size.  Much bigger than the real page_size.

    Modified files:
	rvm/rvm/: rvm_map.c 

2000/09/04 11:54:42	<phil@cs.cmu.edu>

	Non-mmap debugging code to get error numbers.  Leave ifdefed out, but
	ready to re-enable if needed.

    Modified files:
	rvm/seg/: rvm_segutil.c 

2000/10/31 17:00:38	<jaharkes@cs.cmu.edu>

	Applied RedHat build patch from Bruce Guenter.

    Modified files:
	rvm/: NEWS configure.in 
	rvm/pkgs/: rvm.spec.in 

2000/11/30 19:12:21	<jaharkes@cs.cmu.edu>

	Version number of RVM libraries is now set in configure.in.

    Modified files:
	rvm/: acinclude.m4 configure.in 
	rvm/pkgs/: pkg-bsd.sh rvm.spec.in 
	rvm/rds/: Makefile.am 
	rvm/rvm/: Makefile.am 
	rvm/seg/: Makefile.am 

2000/11/30 19:13:22	<jaharkes@cs.cmu.edu>

	Moved pkg-bsd.sh to pkg-bsd.sh.in

    Modified files:
	rvm/pkgs/: .cvsignore 

    Added files:
	rvm/pkgs/: pkg-bsd.sh.in 

    Removed files:
	rvm/pkgs/: pkg-bsd.sh 

2000/11/30 19:42:59	<jaharkes@cs.cmu.edu>

	added debian packaging stuff

    Added files:
	rvm/debian/: changelog control copyright dirs docs librvm1.files 
	             librvm1.postinst librvm1.prerm postinst prerm rules 
	             rvm-tools.files rvm-tools.postinst rvm-tools.prerm 
	             watch 

2001/01/05 13:18:13	<jaharkes@cs.cmu.edu>

	Cleaned up the anonymous mmap handling, some debian build fixes.

    Modified files:
	rvm/: Makefile.am NEWS configure.in 
	rvm/debian/: changelog control rules 
	rvm/include/: coda_mmap_anon.h 

2001/01/10 16:46:52	<jaharkes@cs.cmu.edu>

	Added missing Makefile.am

    Added files:
	rvm/debian/: Makefile.am 

2001/01/10 16:47:56	<jaharkes@cs.cmu.edu>

	added .cvsignore file.

    Added files:
	rvm/debian/: .cvsignore 

2001/01/11 17:38:07	<jaharkes@cs.cmu.edu>

	Added to NEWS about new MAP_FIXED handling.
	Updated packaging.

    Modified files:
	rvm/: NEWS configure.in 
	rvm/pkgs/: Makefile.am rvm.spec.in 

2001/01/15 13:05:28	<jaharkes@cs.cmu.edu>

	Corrected NetBSD dependency on lwp-1.6.

    Modified files:
	rvm/pkgs/: pkg-bsd.sh.in 

2001/02/23 14:39:56	<shafeeq@cs.cmu.edu>

	RVM error code translation table was off by one at the nonexistent error 203

    Modified files:
	rvm/rvm/: rvm_utils.c 

2001/04/02 13:59:51	<jaharkes@cs.cmu.edu>

	Fixed missing time.h include, bumped pkg-version.

    Modified files:
	rvm/: NEWS configure.in 
	rvm/rvm/: rvmutl.c 

2001/04/09 11:25:11	<jaharkes@cs.cmu.edu>

	Mac OS X patches from Timothy Wood.

    Modified files:
	rvm/: NEWS acinclude.m4 configure.in 
	rvm/include/: rvm_lwp.h 
	rvm/rvm/: rvm_init.c rvm_printers.c rvm_status.c 

2001/04/16 15:15:14	<jaharkes@cs.cmu.edu>

	Bumped rvm pkg version number.

    Modified files:
	rvm/debian/: changelog 

2001/05/23 11:33:50	<jaharkes@cs.cmu.edu>

	fixed shared library build problem.
	debian build cleanups.

    Modified files:
	rvm/: NEWS acinclude.m4 configure.in 
	rvm/debian/: changelog control rules 

    Removed files:
	rvm/: acconfig.h 

2001/06/05 15:28:07	<jaharkes@cs.cmu.edu>

	Fixed bug where an assignment was done instead of a comparison, this
	only affected rawio to character devices (i.e. BSDs using partitions)

    Modified files:
	rvm/rvm/: rvm_io.c rvm_map.c rvm_private.h 

2001/06/05 15:31:16	<jaharkes@cs.cmu.edu>

	Bumped version numbers and updated NEWS.

    Modified files:
	rvm/: NEWS configure.in 
	rvm/debian/: changelog 

2001/07/09 15:48:44	<jaharkes@cs.cmu.edu>

	Avoid the hack to build the LWP versions of rvm libraries. It was ugly
	and didn't even work on platforms that always build PIC objects (SPARC)
	Bug discovery and solution courtesy of Greg Troxel.

    Modified files:
	rvm/: configure.in 
	rvm/rds/: Makefile.am 
	rvm/rvm/: Makefile.am 

    Added files:
	rvm/rds/: rds_coalesce_lwp.c rds_free_lwp.c rds_init_lwp.c 
	          rds_malloc_lwp.c rds_prealloc_lwp.c rds_split_lwp.c 
	          rds_start_lwp.c rds_stats_lwp.c rds_test_lwp.c 
	          rds_util_lwp.c rds_zap_lwp.c 
	rvm/rvm/: rvm_debug_lwp.c rvm_init_lwp.c rvm_io_lwp.c 
	          rvm_logflush_lwp.c rvm_logrecovr_lwp.c 
	          rvm_logstatus_lwp.c rvm_map_lwp.c rvm_printers_lwp.c 
	          rvm_pthread_lwp.c rvm_status_lwp.c rvm_trans_lwp.c 
	          rvm_unmap_lwp.c rvm_utils_lwp.c 

2002/08/23 23:56:42	<jaharkes@cs.cmu.edu>

	Ran rvm_basher with valgrind. Fixed all uninitialized memory issues.
	There is some leaked memory still around but the pool-allocators make
	it harder to figure out where we're losing it.

    Modified files:
	rvm/: NEWS configure.in 
	rvm/debian/: changelog 
	rvm/rvm/: rvm_io.c rvm_trans.c rvm_utils.c 
	rvm/tests/: rvm_basher.c 

2002/09/09 08:10:43	<jaharkes@cs.cmu.edu>

	The global rvm_lwpid variable caused problems when running the truncate
	daemon thread as a fully concurrent kernel thread.
	Using fdatasync instead of fsync when available, this avoids a diskseek
	on every write to update the inode and superblock. The length of the log
	and data files doesn't change anyways.
	Fixed a race condition with the truncate daemon thread. It was setting
	itself 'idle' and waking up the callers long before it started waiting
	on new events. During this window the signal sent by calling threads
	that should start a new truncate run would get lost and they wait,
	hoping that another thread would trigger a log truncation.
	A second bug involved threads waiting for completion that would get
	confused when the daemon has already started a new run before they
	returned from condition_wait.
	Finally when exiting, we weren't waiting for the daemon thread to shut
	down completely, causing occasional assertion failures.
	Phew, I think those must have been the last RVM bugs.. (knock on wood)
	In the mean time, by fixing these 'temporary worker thread stalls' and
	using fdatasync, lwp_basher execution time went from typically more than
	22 seconds to less than 8 seconds.

    Modified files:
	rvm/: configure.in 
	rvm/include/: rvm_lwp.h 
	rvm/rvm/: rvm_init.c rvm_io.c rvm_logrecovr.c rvm_logstatus.c 
	rvm/tests/: Makefile.am rvm_basher.c 

    Removed files:
	rvm/rvm/: rvm_pthread_lwp.c 

2002/10/14 16:02:02	<jaharkes@cs.cmu.edu>

	My last commit broke the build for tests. Also committing a fix that adds a
	yield and more aggressive coalescing which seem to have helped Ivan Popov's
	large servers a lot.

    Modified files:
	rvm/rds/: rds_coalesce.c rds_free.c 
	rvm/tests/: Makefile.am 

2002/12/10 18:02:43	<jaharkes@cs.cmu.edu>

	autoconf cleanups
	uninitialized memory reference, found by valgrind.

    Modified files:
	rvm/: acinclude.m4 configure.in 
	rvm/rvm/: rvm_trans.c 

2002/12/12 16:31:54	<jaharkes@cs.cmu.edu>

	Bumped library version number

    Modified files:
	rvm/: configure.in 

2002/12/12 16:39:34	<jaharkes@cs.cmu.edu>

	make dist was looking for non-existant lwp_basher.c

    Modified files:
	rvm/tests/: Makefile.am 

2002/12/12 16:47:35	<jaharkes@cs.cmu.edu>

	Fixed bad test.

    Modified files:
	rvm/: acinclude.m4 

2003/01/30 13:54:47	<jaharkes@cs.cmu.edu>

	Checking if we need to include librt for fdatasync.

    Modified files:
	rvm/: configure.in 

2003/02/13 13:07:13	<jaharkes@cs.cmu.edu>

	Shafeeq noticed that we weren't explicitly checking for fdatasync,
	but assumed it existed whenever _POSIX_SYNCRONIZED_IO was defined.
	Added explicit test to configure.

    Modified files:
	rvm/: configure.in 
	rvm/rvm/: rvm_io.c 

2003/03/04 13:48:06	<jaharkes@cs.cmu.edu>

	Simplified rules to build lwp_basher.

    Modified files:
	rvm/tests/: Makefile.am 

2003/03/04 15:59:25	<jaharkes@cs.cmu.edu>

	Don't use extern int errno, include <errno.h> instead.
	Zero the unused parts of the status buffer before writing to disk.

    Modified files:
	rvm/rds/: rds_test.c rdsinit.c 
	rvm/rvm/: rvm_init.c rvm_io.c rvm_logflush.c rvm_logrecovr.c 
	          rvm_logstatus.c rvm_map.c rvm_printers.c rvm_status.c 
	          rvm_trans.c rvm_unmap.c rvmutl.c 
	rvm/tests/: rvm_basher.c testrvm.c 

2003/03/04 16:08:49	<jaharkes@cs.cmu.edu>

	Forgot to add new file, lwp_basher.c

    Added files:
	rvm/tests/: lwp_basher.c 

2003/03/08 01:45:36	<jaharkes@cs.cmu.edu>

	bad_options had a couple of callers that did not pass enough args.
	Removed duplicate function pr_timestamp.
	Passing struct iovec instead of our own io_vec_t for writev.

    Modified files:
	rvm/rvm/: rvm_debug.c rvm_io.c rvm_logflush.c rvm_printers.c 
	          rvm_private.h rvm_status.c rvm_utils.c rvmutl.c 

2003/03/19 18:53:32	<jaharkes@cs.cmu.edu>

	Just making sure that move_list_entry always makes sure that the
	object is removed from the original list. While hunting the memory
	corruption problem this happened a couple of times although it
	probably only happens when there is a bug that is zapping random
	bytes in memory.

    Modified files:
	rvm/rvm/: rvm_logflush.c rvm_utils.c 

2003/05/22 17:12:38	<jaharkes@cs.cmu.edu>

	Documented changes, bumped version numbers.

    Modified files:
	rvm/: NEWS configure.in 
	rvm/debian/: changelog 

2003/05/22 17:21:43	<jaharkes@cs.cmu.edu>

	autoconf changes

    Modified files:
	rvm/: bootstrap.sh configure.in 

2003/07/25 14:41:17	<phil@cs.cmu.edu>

	include <sys/types.h> for FreeBSD.  Others should be ok.

    Modified files:
	rvm/rvm/: rvm_debug.c 

2004/02/16 16:44:47	<jaharkes@cs.cmu.edu>

	Try to build debian packages with debugging enabled.
	Removed CODA_DARWIN_BROKEN_CPP_WORKAROUND (William van Etten).

    Modified files:
	rvm/: acinclude.m4 configure.in 
	rvm/debian/: rules 

2004/03/12 14:04:51	<jaharkes@cs.cmu.edu>

	Updated INSTALL and configure.in files for recent auto-tools

    Modified files:
	rvm/: INSTALL acinclude.m4 configure.in 

2004/03/16 15:01:55	<jaharkes@cs.cmu.edu>

	Updated version number, NEWS.
	Autogenerating debian changelog (for package versioning)

    Modified files:
	rvm/: NEWS configure.in 

    Added files:
	rvm/debian/: changelog.in 

    Removed files:
	rvm/debian/: changelog 

2004/06/07 14:46:54	<jaharkes@cs.cmu.edu>

	RVM patches from Michael German
	- Reduce large block fragmentation during allocations by falling back
	to the list that is a multiple of the allocation size instead of
	always taking a block off the MAXLIST.
	- Add function to allow venus to check whether rds_malloc will succeed
	before entering the transaction that tries to allocate. Once we're
	in the transaction, any rds_free operations are delayed until the
	transaction completes, so we can't actually recover from malloc
	failures during the transaction.
	
	I also fixed a bunch of compiler warnings, and made rds_free merge
	only with blocks following the current one instead of performing a
	full coalescing scan, which was a hack needed to work around the RDS
	fragmentation issues.

    Modified files:
	rvm/: configure.in 
	rvm/include/rvm/: rds.h 
	rvm/rds/: Makefile.am rds_coalesce.c rds_free.c rds_private.h 
	          rds_split.c rds_test.c rds_util.c 
	rvm/rvm/: rvm_logflush.c rvm_logstatus.c 
	rvm/seg/: rvm_createseg.c rvm_loadseg.c rvm_releaseseg.c 
	rvm/tests/: rvm_basher.c 

    Added files:
	rvm/rds/: rds_maxblock.c rds_maxblock_lwp.c 

2004/06/07 14:59:31	<jaharkes@cs.cmu.edu>

	Updated NEWS

    Modified files:
	rvm/: NEWS 

2004/06/07 15:03:41	<jaharkes@cs.cmu.edu>

	Make sure we can actually build the debian pkgs.

    Modified files:
	rvm/debian/: Makefile.am 

2004/06/08 10:10:41	<jaharkes@cs.cmu.edu>

	A variable wasn't initialized and caused a segfault when there were
	no large blocks available before coalescing.

    Modified files:
	rvm/rds/: rds_split.c 

2004/06/08 16:14:46	<jaharkes@cs.cmu.edu>

	Initialize err return in release_seg
	Make sure we don't crash when someone tries rds_fake_free(NULL).
	Removed rds_trace_blocks.

    Modified files:
	rvm/rds/: rds_free.c rds_stats.c 
	rvm/seg/: rvm_releaseseg.c 

2004/10/13 19:40:59	<jaharkes@cs.cmu.edu>

	Updates for rvm

    Modified files:
	rvm/: .cvsignore bootstrap.sh 
	rvm/debian/: .cvsignore Makefile.am changelog.in control 
	             copyright rules 

    Added files:
	rvm/debian/: compat librvm-dev.docs librvm-dev.install 
	             librvm1.install rvm-tools.install 

    Removed files:
	rvm/debian/: docs librvm1.files librvm1.postinst librvm1.prerm 
	             postinst prerm rvm-tools.files rvm-tools.postinst 
	             rvm-tools.prerm 

2004/10/14 13:24:55	<jaharkes@cs.cmu.edu>

	build fixes for debian-stable

    Modified files:
	rvm/: Makefile.am configure.in 
	rvm/debian/: changelog.in librvm-dev.install librvm1.install 
	             rules rvm-tools.install 

2004/10/14 14:58:02	<jaharkes@cs.cmu.edu>

	docs was moved to librvm-dev.docs

    Modified files:
	rvm/debian/: Makefile.am 

2004/10/14 15:01:55	<jaharkes@cs.cmu.edu>

	changed dist.

    Modified files:
	rvm/debian/: changelog.in 

