mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Philipp Reisner <philipp.reisner@linbit.com>
To: Jens Axboe <axboe@kernel.dk>
Cc: drbd-dev@lists.linbit.com, linux-kernel@vger.kernel.org
Subject: [GIT PULL] drbd-8.4.2 for the linux-3.8 merge window
Date: Fri, 09 Nov 2012 12:36:39 +0100	[thread overview]
Message-ID: <3042269.jrNem7z1LI@fat-tyre> (raw)

Hi Jens,

Please pull drbd-8.4.2 into your for-3.8/drivers branch.

The most noticeable change is the support for multiple replicated
volumes in a single DRBD connection.

This release requires new drbd userland tools >= 8.4.0 (available
since July 2011).
8.4.x is network protocol compatible with all previous releaes.
This release brings a new meta-data format. Forward (8.3 -> 8.4)
conversion happens complete seamless. Backward conversion
is done by a single command (drbdadm apply-al res).

The "recent changes" chapter of our user's guide describes all
changes in detail:
http://www.drbd.org/users-guide/ap-recent-changes.html

Changelog

8.4.2 (api:genl1/proto:86-100)
--------
 * Go into inconsistent disk state with on-io-error=pass-on policy
 * Timeouts for requests processing on the peer (previously that
   worked only if the data socket was congested)
 * Conflicting write detection is now based on an interval tree,
   removed the hash-tables (necessary for the unlimited BIO sizes)
 * Support for multiple volumes (minors, block devices) per connection;
   up to 65536 volumes per connection supported
 * Reduced IO latencies during some state changes (esp. start resync)
 * New on disk format for the AL: double capacity; 4k aligned IO; same space
 * Multiple AL changes in a single transaction (precondition for
   unlimited BIO sizes)
 * DRBD no longer imposes any limit on BIO sizes
 * Removed DRBD's limits on the number of minor devices
 * DRBD's minors can now be removed (not only unconfigured)
 * Switched the user space interface form connector to generic netlink
 * The wire-protocol is now a regular connection option, which can be
   changed while the device is online
 * IO freezing/thawing is done on connection (all volumes) level
 * fencing is done on connection (all volumes) level
 * Enforce application of activity log after primary crash in user space
 * New default values (compared to drbd-8.3) for: minor-count, ko-count, al-extents,
   c-plan-ahead, c-fill-target, c-min-rate, use-rle, on-io-error
 * Optional load balancing for read requests: new keyword "read-balance"
 * New option 'al-updates no' to disable writing transactions into the
   activity log. It is use full if you prefer a full sync after a primary
   crash, for improved performance of a spread out random write work load
 * Expose the data generation identifies via sysfs


Jens, regarding the code:

It has the sysfs bits in again. The reason for that is that we want to
expose more information by that, and remove the /proc/drbd with the
next evolutionary step. -- In case this is a show stopper, let me
remove the sysfs bits.


Here is the git-pull-request test: 
(The patch subjects removed to make the mail more digestible)

The following changes since commit ccae7868b0c5697508a541c531cf96b361d62c1c:

  drbd: log request sector offset and size for IO errors (2012-10-30 08:39:18 +0100)

are available in the git repository at:

  git://git.drbd.org/linux-drbd.git for-jens_drbd-8.4.2

for you to fetch changes up to e877f7fdc0b1052b0e881e61f9290268eb21aa2f:

  drbd: use copy_highpage (2012-11-09 12:06:44 +0100)

----------------------------------------------------------------
Akinobu Mita (1):
      drbd: use copy_highpage

Andreas Gruenbacher (210):
      drbd: Get rid of req_validator_fn typedef
	[...]

David Howells (1):
      DRBD: Fix comparison always false warning due to long/long long compare

Jing Wang (1):
      drbd: check return of kmalloc in receive_uuids

Lars Ellenberg (138):
      drbd: simplify condition in drbd_may_do_local_read()
	[...]

Philipp Marek (1):
      drbd: pass some more information to userspace.

Philipp Reisner (234):
      idr: idr_for_each_entry() macro
	[...]

 drivers/block/drbd/Makefile        |    2 +
 drivers/block/drbd/drbd_actlog.c   |  689 +++----
 drivers/block/drbd/drbd_bitmap.c   |  227 ++-
 drivers/block/drbd/drbd_int.h      | 1399 ++++++-------
 drivers/block/drbd/drbd_interval.c |  207 ++
 drivers/block/drbd/drbd_interval.h |   40 +
 drivers/block/drbd/drbd_main.c     | 3918 ++++++++++++++----------------------
 drivers/block/drbd/drbd_nl.c       | 3391 ++++++++++++++++++-------------
 drivers/block/drbd/drbd_nla.c      |   55 +
 drivers/block/drbd/drbd_nla.h      |    8 +
 drivers/block/drbd/drbd_proc.c     |   33 +-
 drivers/block/drbd/drbd_receiver.c | 3883 ++++++++++++++++++++---------------
 drivers/block/drbd/drbd_req.c      | 1569 +++++++--------
 drivers/block/drbd/drbd_req.h      |  187 +-
 drivers/block/drbd/drbd_state.c    | 1857 +++++++++++++++++
 drivers/block/drbd/drbd_state.h    |  161 ++
 drivers/block/drbd/drbd_strings.c  |    1 +
 drivers/block/drbd/drbd_sysfs.c    |   86 +
 drivers/block/drbd/drbd_worker.c   | 1168 ++++++-----
 drivers/block/drbd/drbd_wrappers.h |   11 +-
 include/linux/drbd.h               |   81 +-
 include/linux/drbd_genl.h          |  378 ++++
 include/linux/drbd_genl_api.h      |   55 +
 include/linux/drbd_limits.h        |   90 +-
 include/linux/drbd_nl.h            |  164 --
 include/linux/drbd_tag_magic.h     |   84 -
 include/linux/genl_magic_func.h    |  422 ++++
 include/linux/genl_magic_struct.h  |  277 +++
 include/linux/idr.h                |   11 +
 include/linux/lru_cache.h          |   67 +-
 lib/lru_cache.c                    |  359 ++--
 31 files changed, 12238 insertions(+), 8642 deletions(-)
 create mode 100644 drivers/block/drbd/drbd_interval.c
 create mode 100644 drivers/block/drbd/drbd_interval.h
 create mode 100644 drivers/block/drbd/drbd_nla.c
 create mode 100644 drivers/block/drbd/drbd_nla.h
 create mode 100644 drivers/block/drbd/drbd_state.c
 create mode 100644 drivers/block/drbd/drbd_state.h
 create mode 100644 drivers/block/drbd/drbd_sysfs.c
 create mode 100644 include/linux/drbd_genl.h
 create mode 100644 include/linux/drbd_genl_api.h
 delete mode 100644 include/linux/drbd_nl.h
 delete mode 100644 include/linux/drbd_tag_magic.h
 create mode 100644 include/linux/genl_magic_func.h
 create mode 100644 include/linux/genl_magic_struct.h

Best regards,
 Philipp

             reply	other threads:[~2012-11-09 11:36 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-11-09 11:36 Philipp Reisner [this message]
2012-11-09 11:40 ` Jens Axboe
2012-11-09 12:42   ` Philipp Reisner
2012-11-09 12:56     ` Jens Axboe
2012-11-09 13:33       ` Philipp Reisner
2012-11-09 14:18         ` Jens Axboe
2012-11-09 14:50           ` Jens Axboe
2012-11-09 15:19             ` Philipp Reisner
2012-11-09 19:49               ` Jens Axboe

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3042269.jrNem7z1LI@fat-tyre \
    --to=philipp.reisner@linbit.com \
    --cc=axboe@kernel.dk \
    --cc=drbd-dev@lists.linbit.com \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®