[PATCH 00/15] drbd: a block device for HA clusters

From: Philipp Reisner
Date: Fri Jun 26 2009 - 08:12:32 EST


Hi,

As the first bit of the DBRD patch already got upstream (see commit
10fc89d01a) it is time to get more of DRBD towards mainline.

Please consider the lru_cache as next building block of DRBD for inclusion.

Patch set attached. Git tree available:
git pull git://git.drbd.org/linux-2.6-drbd.git drbd

We are looking for reviews!

Note for reviewers:

Only the first patch (lru_cache) is self contained. The other patches are
just split at file boundaries. Sorry, DRBD was developed as out-of-tree
modules just for too long.

Short Description

DRBD is a shared-nothing, synchronously replicated block device. It is
designed to serve as a building block for high availability clusters and

in this context, is a "drop-in" replacement for shared storage.
Simplistically, you could see it as a network RAID 1.

More information can be found at http://www.drbd.org

Changes since 2009-05-15

* Cleanup: Moved lru_cache.c to /lib
* Cleanup: all STATIC -> static
* Cleanup: Removed drbd_config.h ; New Kconfig option: CONFIG_DRBD_FAULT_INJECTION
* Cleanup: Removed drbd_buildtag.c
* DRBD: Following DRBD-upstream, now at 8.3.2-rc2. Relevant changes:
* DRBD: lru_cache: use pointer arrays and kmem_cache
* DRBD: Fixed for building on big endian architectures
* DRBD: Fixed nl stuff to work on architectures that does not do unaligned memory accesses
* DRBD: Deal with hash functions already ported to SHASH
* DRBD: GFP_KERNEL -> GFP_NOIO in various places

Changes since 2009-04-30

* Cleanup: Removed typecasts, more documentation in lru_cache. Moved to /lib
* Cleanup: replaced __attribute__((packed)) with __packed
* Cleanup: remove quite a few 'inline's from .c files
* Cleanup: renaming a few constants: _SECT -> _SECTOR_SIZE, _SIZE_B -> _SHIFT ...
* Cleanup: rename inc_local -> get_ldev; inc_net -> get_net_conf; and corresponding dec_* -> put_*
* Cleanup: rename mdev->bc to mdev->ldev (to match the recent change to get_ldev/put_ldev)
* Cleanup: Made function comments kernel-doc compliant
* Cleanup: vmalloc() only as a fall back for kmalloc()
* DRBD: Allow detach of a SyncTarget node. (Bugz 221)
* DRBD: Call drbd_rs_cancel_all() and reset rs_pending when aborting resync due to detach. (Bugz 223)
* DRBD: make drbd thread t_lock irqsave - lockdep complained, and lockdep is right (theoretically)

Changes since 2009-04-10

* Cleanup: Removed all CamelCase
* Cleanup: Replaced DRBD's own tracing stuff with regular tracepoints
* Cleanup: Removed ERR/INFO/ALERT ... macros, using dev_err/dev_info/... now
* Cleanup: Minor stuff, as suggested in feedback on LKML
* DRBD: Bitmap compression feature was finalised
* DRBD: new disable_sendpage parameter

Changes since the post on 2009-03-30, all triggered by reviews

* Improvements to Makefile and Kconfig
* Simplified definitions of bm_flags' bitnumbers
* Removed debugging aid

Changes since the post on 2009-03-23, from drbd-mainline

* Updated to the final drbd-8.3.1 code
* Optionally run-length encode bitmap transfers

Changes since the post on 2009-03-23, triggered by reviews

* Using the latest proc_create() now
* Moved the allocation of md_io_tmpp to attach/detach out of drbd_md_sync_page_io()
* Removing the mode selection comments for emacs
* Removed DRBD_ratelimit()

cheers,
Phil
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/