kernel: added support for 4.12 kernel (thank you Marcel Huber).
utility: fixed compilation warnings (thank you Marcel Huber).
kernel: Remove kernel mainline specific code (intended for brd replacement).
kernel: Change spinlock types to work better with virtio (github issue #13).
test: Updated tests to a work with the modern version of RapidDisk.
utility: Add JSON output for RapidDisk configuration (requires libjansson).
www: remove fat-free (f3) RESTful API.
kernel: cache - Fixed I/O handler bug for 4.8+ kernels
documentation: Cleaned up formatting and license disclaimers (thanks Boian!)
kernel: Update to 4.8 and 4.9 kernels.
build: Cleaned up Makefiles (thanks Marcel!)
kernel: Add support for the 4.7 kernel (patch supplied by Marcel Huber)
packaging: Updated DEB control for PHP changes between Ubuntu 14.04/16.04
utility: Fixed bug in make install with nocrypt enabled.
documentation: clean up.
utility: Added more complex default DES key with backwards compatibility to legacy key.
ha: added write around support to HA resource agents.
documentation: corrections / clean up.
kernel: Added Write-Around support to rapiddisk-cache.
kernel: Fixed LINUX_VERSION_CODE check for rapiddisk-cache to accommodate changes in 3.8.3.
utility: Added a nocrypt build flag.
utility: Added user definable keys for encryption setup.
kernel: Readjusted misaligned discard request check to build on kernels older than 4.3.
kernel: Refuse misaligned discard requests.
kernel: Convert ENOMEM to ENOSPC when cannot alloc pages.
kernel: Added 4k physical block size attribute.
packaging: Also need to remove CONFIG_BLK_DEV_RAM_COUNT from distro specific packages.
utility: Fixed all references of RapidCache to RapidDisk-Cache.
utility: Updated fatfree-framework.
utility: Addressed bug in RapidDisk REST implementation.
Fixed libcryptsetup build error for RHEL6.
Renamed rxdsk/rxcache modules.
Did massive cleanup of administration utility code.
Converted most (if not all) return codes to POSIX.1 error numbers.
Code cleanup in RESTful API.
RapidDisk volumes now show up as non-rotational.
Cleaned up ioctls in both module and utilies.
Cleaned up kernel module code.
Fixed stack overflow bug in administration utility.
Fixed error print statement in administration utility.
Updated copyright years.
Cleaned up build environment, including Makefiles.
Fixed bug in configuring encryption on device.
Updated/corrected documentation in manual page and in source.
Fixed a memory leak in administration utility.
Placed better checks before deallocating memory in administration utility.
Updated RapidDisk modules for Linux kernel version 4.4.
Updated kernel documentation.
Forcing rxdsk driver to do the drive enumeration. Removed functionality from administration utility.
Appropriately initializing major number variable to 0 before registering block device module.
Administration utility now checks for sysfs entry of rxdsk and not module name in /proc/modules.
Converted sector size input in rxdsk module to KB input. Modified administration utility to this.
Fixed bug in check for total rxdsk devices in module.
Updated Makefile for tools install to add HA scripts.
Fixed bugs with HA scripts (both rgmanager and pacemaker).
Added ability to autoload RapidDisk volumes during module insertion.
Fixed bug in RapidDisk (volatile) volume size definition across 32 to 64 bit types.
Making use of BIT() macro in the driver.
Removed RapidDisk-NV support. It was redundant with the recently kernel integrated pmem code.
Updated code for the 4.3 kernel.
Cleaned up the main Makefile.
Cleaned up entire driver code. Adjusted formatting.
Replaced procfs management to sysfs.
Identified & corrected a couple of memory leaks.
Massive code cleanup (intended for kernel submission).
Minor code optimizations (slight performance improvements).
Fixed on-line menu of administration binary.
Updated spec file to autoload modules after install.
Corrected package description in spec file.
Fixed memory leak and an exit on failure before removing mutex during a procfs read.
Added RESTful test file to test API from CLI.
Integrated encryption support via dm-crypt.
Enabled RPM builds for Red Hat / CentOS 6 & 7.
Enabled RapidDisk YUM repo for Red Hat / CentOS 6 & 7 support.
Added Pacemaker and rgmanager resource files to enable HA support.
Added NVDIMM support.
Added RESTful API support.
Updated administration binary and cleaned up a lot of its code.
Removed pyRxAdm graphical wrapper.
Fixed bug when erroring during RapidCache module insertion.
Cleaned up RapidCache module code (removed procfs entry).
Bug fix with rxadm binary and mapping RapidCache to pre-existing partitions.
Added more information to RapidDisk procfs file.
Addressed compilation warnings for GCC 5.1
Updated modules for kernel 3.14
Updated rxcache for Red Hat 6.4 (device mapper conflict)
Addressed incorrect description of maximum number of rxdsks supported.
Updated modules for kernel 3.10.
Updated Makefile for cross compiling install.
Addressed a bug in rxdsk print statement (wrong type). Thanks go to Neo for discovering and patching it.
Minor update adding DKMS support.
Adding support to build and install/uninstall tools separately (i.e. without modules, as in when installing with DKMS).
Added better implementation of BLKFLSBUF ioctl to rxdsk module. This will "flush data" and truncate pages.
Added flush command to rxadm utility.
Added support for Linux kernel 3.9. Tested on 3.9.2.
Cleaned up code and removed unused and unimplemented caching feature (write-around).
Added support for Linux kernel 3.8. Tested on 3.8-rc7.
Made some modifications to the modules' makefile.
Added support for Linux kernels 3.6 & 3.7. Tested on 3.6.9 and 3.7-rc8.
Minor rxcache kernel update: Make spinlocks less greedy by removing most of the disable ALL interupts spinlocks and replacing them with spinlocks to disable interrupts ONLY from bottom halves.
Added support for building in 3.4 and later Linux kernels.
Update module Makefile to point to a different DESTDIR and KSRC (for cross-compiling)
Removed warning for RapidCache build.
Addressed an issue with md raid 1 (mirror) and using rxdsk in which the md driver would routinely send i/o of size 0 and rxdsk would return an EIO, failing the array. Problem and solution found and provided by Dmitry Trikoz of Stratus Technologies.
Addressed warning generated for kernels 3.2 and later with the return type of the blk_queue_make_requestrequest_queue function.
Added comments and cleaned error messages in pyRxAdm.
Added comments to rxadm files.
Added additional functionality to pyRxAdm (add, map, archive, restore) also added some more error checking.
Fixed bug in rxadm (archive.c) during the archival process.
Updated version no. (cmd/common.h, rxcommon.h) and removed b's to move from beta to production.
Added a couple more switches to list version/help info of rxadm (main.c)
Cleaned up rxadm logo for pyRxAdm (rxadm_logo_48x48.png)
Added cmd/pyRxAdm wrapper
Modifed short-list feature output and modified error statement (cmd.c, common.h)
Added logo for wrapper (misc/rxadm_logo_48x48.png).
Updated version no. (rxcommon.h)
Added --short-list support.
Cleaned up debug messages on modules and added a couple of more.
Fixed bug #5 relating to using the rxadm utility without any nodes listed in /dev/mapper.
Cleaned up a few messages in both rxdsk.c and rxcache.c.
Added rxcache write/read through caching module support.
Added rxcache management features in rxadm utility.
Modified input for archive/restore in rxadm to not use absolute path for rxdsk node. It maintains a form of consistency across all commands.
Fixed bug #4 by adding the BLKFLSBUF ioctl() command to process. This is specifically for when the user places an rxd node in an mdadm raid array.
Added a new test file to test the new ioctl command.
Cleaned up the Makefiles a bit and now the user can build and install the kernel module from the root of the package tree as opposed to doing it from the module directory.
Fixed bug #3 which was for a warning during the build of rxadm on an x86_64 architecture. Thanks go to Gustaf Ullberg for discovering the root cause and providing a quick solution.
Removed the "b" from version strings to signify non-beta. This project seems to be production ready.
Also added a test suite and some additional test tools for testing data integrity, performance, etc. This will help a lot for feature testing in future releases.
Added check in management utility to make sure that rxdsk node is present before archiving and restoring compressed/ decompressed images.
Added new feature to archive/restore an rxd volume to/from a zlib compressed data file (many thanks to Simon Ball for suggesting a similar feature).
Added discard support.
Added an ioctl to handle an invalid query sent by later versions of udev that correspond with Linux kernels 2.6.35 and above.
Also integrated patch submitted by James Plummer of Stratus Technologies to address 32 bit limitation of rxadm utility rxdsk creation/resizing by casting the variable to a 64-bit type. Patch also included minor clean up code/optimizations for the same rxadm util.
Optimized the configuring of the request queue.
Added checks to build from 2.6.32 all the way to the latest (currently 3.0.3).
Added support for dynamic resizing of attached rxdsk volumes.