1 2009-03-20 Brian Behlendorf <behlendorf1@llnl.gov>
5 * configure.ac, *Makefile.am: Build system update. This includes
6 resolving various build issues and adding support for the remaining
7 common build targets. Available targets now include:
9 - make all # Build everything
10 - make install # Install everything
11 - make clean # Clean up build products
12 - make distclean # Clean up everything
13 - make dist # Create package tarball
14 - make srpm # Create package source RPM
15 - make rpm # Create package binary RPMs
16 - make tags # Create ctags and etags for everything
18 Extra care was taken to ensure that the source RPMs are fully
19 rebuildable against Fedora/RHEL/Chaos kernels. To build binary
20 RPMs from the source RPM for your system simply run:
22 rpmbuild --rebuild spl-x.y.z-1.src.rpm
24 This will produce two binary RPMs with correct 'requires'
25 dependencies for your kernel. One will contain all zpl modules
26 and support utilities, the other is a devel package for compiling
27 additional kernel modules which are dependent on the spl.
29 spl-x.y.z-1_<kernel version>.x86_64.rpm
30 spl-devel-x.y.2-1_<kernel version>.x86_64.rpm
32 * : FC10 (linux-2.6.27.19) and i686 compatibility update. The
33 list of support platforms has been extended to include FC10
34 systems and x86 architectures. It should be noted that kernels
35 older the 2.6.27.19 should work but have not have not been tested.
37 * configure.ac: Fix build issue preventing spl_config.h from being
38 cleanly included by dependent packages.
40 * module/spl/spl-taskq.c: Fix taskq_wait() not waiting bug.
42 * module/spl/spl-xdr.c: Add XDR implementation provided by Ricardo
45 * module/spl/spl-kmem.c: Linux VM integration cleanup.
47 * module/spl/spl-kmem.c: Slab cache improvements and fixes.
49 * modules/splat/*: Include additional SPLAT regression tests.
51 * : Various bug fixes are more clearly detailed in the git
52 commit logs. For a detailed summary of changes post version
53 0.4.2 check the git commit logs.
57 2009-02-05 Brian Behlendorf <behlendorf1@llnl.gov>
61 * module/spl/spl-kmem.c include/sys/kmem.h: Slab cache improvements:
62 - Implement kmem cache alignment.
63 - Implement slab ageing.
64 - Optimized slab packing algorithm.
65 - Fixed deadlock due to calling call kv_free() under the skc_lock.
66 - Added additional SPLAT test cases
67 - Performance optimizations
69 * module/spl/spl-kmem.c include/sys/kmem.h: Linux VM integration.
70 The Solaris global VM symbols minfree, desfree, lotsfree, needfree,
71 swapfs_minfree, swapfs_reserve, availrmem, freemem, and physmem are
72 now available and loosely integrating with the Linux VM. Some
73 tuning will undoubtably be needed and these tunables are available
74 in /proc/sys/kernel/spl/vm/* for this very reason.
76 * config/spl-build.m4: New configure checks needed when building
77 against 2.6.27+ kernels. More work is needed here.
79 * : Minor cleanup see the 'git log' for full details.
81 2009-01-21 Brian Behlendorf <behlendorf1@llnl.gov>
85 * : Implement ksid_*, ddi_strto*, and system taskq functionality.
86 In addition, several other small Solaris compatibility changes
87 were made, see the 'git log' for full details.
89 2008-11-26 Brian Behlendorf <behlendorf1@llnl.gov>
91 * : Tag spl-0.4.0 (Development now done with Git)
93 * : Imported SPL SVN repo in to Git Repo for core development.
95 2008-11-26 Brian Behlendorf <behlendorf1@llnl.gov>
99 * : Include META file support.
101 2008-11-05 Jim Garlick <garlick@llnl.gov>
103 * : Add autogen.sh products.
105 * configure.ac : Use AC_CONFIG_AUX_DIR to put autograph products
108 * autogen.sh : Use --copy to avoid symlinks, remove error
109 redirection, run aclocal before libtoolize.
111 2008-11-13 Brian Behlendorf <behlendorf1@llnl.gov>
113 * include/sys/sunddi.h, modules/spl/spl-module.c : Removed default
114 udev support from sunddi implementation because it uses GPL-only
115 symbols. This support is optionally available for SPL consumers
116 if they define HAVE_GPL_ONLY_SYMBOLS and license their module as
117 GPL using the MODULE_LICENSE("GPL") macro.
119 2008-11-05 Brian Behlendorf <behlendorf1@llnl.gov>
125 * : Patches from Ricardo M. Correia <Ricardo.M.Correia@sun.com>
126 applied with minor revisions:
128 spl-00-rm-gpl-symbol-notifier_chain.patch
129 spl-01-rm-gpl-symbol-set_cpus_allowed.patch
130 spl-02-rm-gpl-symbols-device.patch
131 spl-03-rm-gpl-symbol-ktime_get_ts.patch
132 spl-04-fix-taskq-spinlock-lockup.patch
134 spl-06-atomic64.patch
135 spl-07-kmem-cleanup.patch
136 spl-08-km-sleep-nofail.patch
137 spl-09-fix-kmem-track-oops.patch
138 spl-10-fix-assert-verify-ndebug.patch
140 2008-06-30 Brian Behlendorf <behlendorf1@llnl.gov>
144 * : modules/sys/kmem-slab.c : Refined SPL slab to include
145 per-cpu caches, removed internal hash, other general
146 performance improvements. Much work remain but it's pretty
147 good for an initial implementation.
149 2008-06-13 Brian Behlendorf <behlendorf1@llnl.gov>
151 * : modules/sys/kmem-slab.c : Re-implemented the slab to no
152 longer be based on the linux slab but to be it's own complete
153 implementation. The new slab behaves much more like the
154 Solaris slab than the Linux slab.
156 2008-06-04 Brian Behlendorf <behlendorf1@llnl.gov>
160 * : Extensive improvements to the build system to detect kernel
161 API changes so we can flexibly build with a wider range of kernel
162 versions. The code has now been testing with the 2.6.18-32chaos
163 and 2.6.25.3-18.fc9 kernels, however we should also be compatible
164 with other kernels in the range of 2.6.18-2.6.25.
166 2008-05-25 Brian Behlendorf <behlendorf1@llnl.gov>
168 * configure.ac, autoconf/* : Initial pass at resolving
169 API changes introduced by kernels newer than 2.6.18.
171 2008-05-21 Brian Behlendorf <behlendorf1@llnl.gov>
175 * : License headers including URCL added for release.
177 2008-05-21 Brian Behlendorf <behlendorf1@llnl.gov>
181 * configure.ac: Improved autotools support.
183 2008-04-26 Brian Behlendorf <behlendorf1@llnl.gov>
185 * include/sys/mutex.h : Implemented a close approximation
186 of adaptive mutexes. These changes however required me to
187 export a new symbol from the kernel proper 'task_curr()'
188 which means we are now dependant on a patched kernel.
190 2008-04-24 Brian Behlendorf <behlendorf1@llnl.gov>
194 * modules/spl/spl-proc.c : Add /proc/sys/spl/version.
196 2008-04-24 Herb Wartens <wartens2@llnl.gov>
198 * include/sys/kmem.h : Make sure that when calling __vmem_alloc
199 that we do not have __GFP_ZERO set. Once the memory is allocated
200 then zero out the memory if __GFP_ZERO is passed to
203 2008-04-16 Herb Wartens <wartens2@llnl.gov>
205 * modules/spl/spl-kmem.c : Make sure to disable interrupts
206 when necessary to avoid deadlocks. We were seeing the deadlock
207 when calling kmem_cache_generic_constructor() and then an interrupt
208 forced us to end up calling kmem_cache_generic_destructor()
209 which caused our deadlock.
211 2008-02-26 Brian Behlendorf <behlendorf1@llnl.gov>
213 : Initial commit of the solaris porting layer (spl). Included
214 in addition to the source is an initial autoconf / configure