]> git.proxmox.com Git - mirror_spl-debian.git/blobdiff - ChangeLog
Use do_posix_clock_monotonic_gettime() as described by comment.
[mirror_spl-debian.git] / ChangeLog
index cc75e7d178f668d760a4632871d3a6edd5e93ee1..d076a332c34359a7dc486943f994830de92567e5 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,119 @@
+2010-03-11 Brian Behlendorf <behlendorf1@llnl.gov>
+
+       * : Tag spl-0.4.8
+
+       * : Build system improvements:
+       - Remove Module.markers and Module.symver{s} in clean target.
+       - Improved kernel source detection when none specified.
+       - Fix RPM definitions for the unknown distro/installation.
+
+       * config/spl-build.m4: Linux 2.6.32 compat, SPL_AC_5ARGS_PROC_HANDLER
+         macro added to handle updated proc_handler () API.
+
+       * module/spl/spl-err.c: Fix panic() string, which was being used as a
+         format string, instead of an already-formatted string.
+
+       * /module/spl/spl-taskq.c: Optimize lowest outstanding taskqid
+         calculation in taskq_lowest_id().  The motivation for this change
+         was that I was observing as much as 10% of the total CPU time go
+         to waiting on the tq->tq_lock when the pending list was long.
+
+       * module/spl/spl-kmem.c: Strip __GFP_ZERO from kmalloc it is not
+         available for older kernels.
+
+       * module/spl/spl-proc.c: Add skc_flags and full header to
+         /proc/spl/kmem/slab 
+       
+       * module/spl/spl-generic.c: Correctly handle division on 32-bit RHEL5
+         systems by returning dividend.
+
+       * include/sys/rwlock.h: When using x86 specific rwsem correctly
+         intepret rwsem->count.  Additionally check for changed guard macro
+         in 2.6.28+ for rwsem implementation
+
+       * module/splat/splat-vnode.c, module/splat/splat-kmem.c,
+         module/splat/splat-taskq.c: Several new tests were added to the
+         test suite and various bug fixes.
+
+       * include/asm/atomic_compat.h: Atomic64 compatibility for 32-bit
+         systems without kernel support.
+
+       * .gitignore: Added .gitignore files.
+
+2009-11-20 Brian Behlendorf <behlendorf1@llnl.gov>
+
+       * : Tag spl-0.4.7
+
+       * config/spl-build.m4: Linux 2.6.31 compat, SPL_AC_2ARGS_SET_FS_PWD
+       macro updated to explicitly include linux/fs_struct.h which was
+       dropped from linux/sched.h.
+
+       * include/linux/mm_compat.h: Linux 2.6.31 compat, use the macros
+       min_wmark_pages, low_wmark_pages, and high_wmark_pages which were
+       introduced.  For older kernels a compability macro is used.
+
+       * include/sys/kmem.h: Linux 2.6.31 compat, the __GFP_NOFAIL flag
+       should no longer be used and it may disappear from the kernel at any
+       time.  To handle this I have simply added *_nofail wrappers in the
+       kmem implementation which perform the retry for non-atomic allocations.
+
+       * module/spl/spl-kmem.c: Linux 2.6.31 compat, kmem cache alignment
+       fixes and cleanup.  Always perform allocations for the kmem cache
+       using __get_free_pages() or __vmalloc() to ensure the returned
+       memory is page aligned.  Also introduce helper functions which use
+       P2ROUNDUP_TYPE instead of P2ROUNDUP force all types to be explicit.
+
+       * include/sys/mutex.h: Add mutex_enter_nested() as wrapper for
+       mutex_lock_nested() to permit integration with the lock checker.
+
+       * include/sys/mutex.h: Always use the generic mutex_destroy().
+
+       * Makefile.am: Ensure *.order and *.markers build products are
+       removed by distclean rule.
+
+2009-11-02 Brian Behlendorf <behlendorf1@llnl.gov>
+
+       * : Tag spl-0.4.6
+
+       * config/spl-build.m4: Cleanup --enable-debug-* configure options.
+       --enable-debug=<default no>  generic debug support.
+       --enable-debug-kmem=<default yes> basic kmem and slab accounting.
+       --enable-debug-kmem-tracking=<default no> detailed kmem tracking.
+       --enable-debug-kstat removed option support always enabled.
+       --enable-debug-callb removed option which never did anything.
+
+       * module/spl/spl-atomic.c: Reimplemented atomic functions by
+       layering them on top of the Linux atomic functions.  This improves
+       performance by removing the need for a global spinlock.
+
+       * module/spl/spl-debug.c: Rebase cmn_err on vcmn_err.  Handle the
+       case where the message contains a leading ! which means only send
+       it to syslog.  And suppress warnings for messages which do not end
+       in a '\n'.
+
+       * module/splat/splat-ctl.c: Update to use kobject_set_name() for
+       increased portability.
+
+       * module/spl/spl-generic.c: Set cwd to '/' for the task during
+       module load for SPL dependent modules.  Under Solaris this is
+       the expected behavior, on a Linux system your cwd remains set
+       to whatever the tasks cwd was when loading a module.
+
+       * module/spl/spl-mutex.c: Reimplemented mutexs for improved
+       performance and cleaner integration with the Linux kernels built
+       in lock analyzer.  As of 2.6.29 based kernels adaptive mutexs
+       are supported, for these newer kernels task_curr() does not need
+       to be exported.  Finally, DEBUG_MUTEX support was dropped in
+       favor of more detailed kernel profiling which is now available.
+
+       * module/spl/spl-rwlock.c: Reimplemented rwlocks for improved
+       performance and cleaner integration with the Linux kernels built
+       in lock analyzer.  Additionally, the rwlock regression tests were
+       improved to help validate correctness.
+
+       * spl-modules.spec.in: Various spec file tweaks for the supported
+       distros: RHEL5, RHEL6, SLES10, SLES11, Chaos4, Fedora 11.
+
 2009-08-04 Brian Behlendorf <behlendorf1@llnl.gov>
 
        * : Tag spl-0.4.5