public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Philipp Reisner <philipp.reisner@linbit.com>
To: Jens Axboe <axboe@kernel.dk>
Cc: linux-kernel@vger.kernel.org, drbd-dev@lists.linbit.com
Subject: [GIT PULL] drbd-8.3 updates
Date: Thu, 10 May 2012 14:19:02 +0200	[thread overview]
Message-ID: <4277851.LeAnKnANCB@fat-tyre> (raw)

Hi Jens,

This are the updates we have in the drbd-8.3 tree. They are intended
for your "for-3.5/drivers" drivers branch.

These changes include one new feature:
 * Allow detach from frozen backing devices with the new --force option;
   configurable timeout for backing devices by the new disk-timeout option

And huge number of bug fixes:
 * Fixed a write ordering problem on SyncTarget nodes for a write
   to a block that gets resynced at the same time. The bug can
   only be triggered with a device that has a firmware that
   actually reorders writes to the same block
 * Fixed a race between disconnect and receive_state, that could cause
   a IO lockup
 * Fixed resend/resubmit for requests with disk or network timeout
 * Make sure that hard state changed do not disturb the connection
   establishing process (I.e. detach due to an IO error). When the
   bug was triggered it caused a retry in the connect process
 * Postpone soft state changes to no disturb the connection
   establishing process (I.e. becoming primary). When the bug
   was triggered it could cause both nodes going into SyncSource state
 * Fixed a refcount leak that could cause failures when trying to
   unload a protocol family modules, that was used by DRBD
 * Dedicated page pool for meta data IOs
 * Deny normal detach (as opposed to --forced) if the user tries
   to detach from the last UpToDate disk in the resource
 * Fixed a possible protocol error that could be caused by
   "unusual" BIOs.
 * Enforce the disk-timeout option also on meta-data IO operations
 * Implemented stable bitmap pages when we do a full write out of
   the bitmap
 * Fixed a rare compatibility issue with DRBD's older than 8.3.7
   when negotiating the bio_size
 * Fixed a rare race condition where an empty resync could stall with
   if pause/unpause events happen in parallel
 * Made the re-establishing of connections quicker, if it got a broken pipe
   once. Previously there was a bug in the code caused it to waste the first
   successful established connection after a broken pipe event.

PS: I am postponing the drbd-8.4 for mainline for one or two kernel
    development cycles more (the ~400 patchets set).

Best regards,
 Philipp

The following changes since commit 0b7877d4eea3f93e3dd941999522bbd8c538cb53:

  Merge tag 'v3.4-rc5' into for-3.5/core (2012-05-01 14:29:55 +0200)

are available in the git repository at:

  git@git.drbd.org:linux-drbd for-jens

Andreas Gruenbacher (1):
      drbd: drbd_nl_resize(): Fix missing put_ldev() on error path

Arne Redlich (1):
      drbd: bm_page_async_io: properly initialize page->private

Cong Wang (1):
      drbd: check MODULE for THIS_MODULE

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

Lars Ellenberg (31):
      drbd: cosmetic: fix accidental division instead of modulo when pretty printing
      drbd: spelling fix: too small
      drbd: allow ping-timeout of up to 30 seconds
      drbd: downgraded error printk to info
      drbd: change some GFP_KERNEL to GFP_NOIO
      drbd: fix "stalled" empty resync
      drbd: fix harmless race to not trigger an ASSERT
      drbd: fix spurious meta data IO "error"
      drbd: send intermediate state change results to the peer
      drbd: fix potential spinlock deadlock
      drbd: fix race between disconnect and receive_state
      drbd: Fix module refcount leak in drbd_accept()
      drbd: add missing part_round_stats to _drbd_start_io_acct
      drbd: fix potential data corruption and protocol error
      drbd: remove now unused seq_num member from struct drbd_request
      drbd: missing wakeup after drbd_rs_del_all
      drbd: remove some very outdated comments
      drbd: remove unused static helper function
      drbd: don't pretend that barrier_nr == 0 was special
      drbd: make OOS_HANDED_TO_NETWORK its own case
      drbd: fix READ_RETRY_REMOTE_CANCELED to not complete if device is suspended
      drbd: fix WRITE_ACKED_BY_PEER_AND_SIS to not set RQ_NET_DONE
      drbd: move put_ldev from __req_mod() to the endio callback
      drbd: fix resend/resubmit of frozen IO
      drbd: fix race between drbdadm invalidate/verify and finishing resync
      drbd: allow bitmap to change during writeout from resync_finished
      drbd: add page pool to be used for meta data IO
      drbd: use the newly introduced page pool for bitmap IO
      drbd: remove unused define
      drbd: introduce a bio_set to allocate housekeeping bios from
      drbd: grammar fix in log message

Philipp Reisner (30):
      drbd: Lower log priority for an event that is definitely not an error
      drbd: Only print sanitize state's warnings, if the state change happens
      drbd: Improve compatibility with drbd's older than 8.3.7
      drbd: Keep a reference to barrier acked requests
      drbd: Immediately allow completion of IOs, that wait for IO completions on a failed disk
      drbd: moved md_io into mdev
      drbd: Replaced md_io_mutex by an atomic: md_io_in_use
      drbd: Implemented wait_until_done_or_disk_failure()
      drbd: Keep a reference to the bio until the completion handler finished
      drbd: Hold a reference to ldev while doing meta-data IO
      drbd: Added a kref to bm_aio_ctx
      drbd: Bitmap IO functions can now return prematurely if the disk breaks
      drbd: Allow new IOs while the local disk in in FAILED state
      drbd: Force flag for the detach operation
      drbd: Implemented the disk-timeout option
      drbd: Fixed current UUID generation
      drbd: Consider that the no-data-condition could be in connected state
      drbd: detach must not try to abort non-local requests from drbd-8.4
      drbd: Cleanup all epoch objects upon connection loss
      drbd: Bugfix for the connection behavior
      drbd: Derive sync-UUIDs only from the bitmap-uuid if it is non-zero
      drbd: Fixed a race condition between detach and start of resync
      drbd: Fixed an obvious copy-n-paste mistake
      drbd: Do not send state packets while lower than C_CONNECTED cstate
      drbd: Consider the disk-timeout also for meta-data IO operations
      drbd: Fix a potential race that could case data inconsistency
      drbd: Fix a potential write ordering issue on SyncTarget nodes
      drbd: Delay/reject other state changes while establishing a connection
      drbd: Ensure that data_size is not 0 before using data_size-1 as index
      drbd: Restore the request restart logic

 drivers/block/drbd/drbd_actlog.c   |  104 ++++++++---
 drivers/block/drbd/drbd_bitmap.c   |  146 +++++++++++----
 drivers/block/drbd/drbd_int.h      |   90 ++++++----
 drivers/block/drbd/drbd_main.c     |  357 +++++++++++++++++++++++++++---------
 drivers/block/drbd/drbd_nl.c       |   48 ++++-
 drivers/block/drbd/drbd_proc.c     |    2 +-
 drivers/block/drbd/drbd_receiver.c |   95 ++++++++---
 drivers/block/drbd/drbd_req.c      |  132 +++++++++-----
 drivers/block/drbd/drbd_req.h      |   19 ++-
 drivers/block/drbd/drbd_worker.c   |   31 +++-
 include/linux/drbd.h               |    6 +-
 include/linux/drbd_limits.h        |    7 +-
 include/linux/drbd_nl.h            |    5 +-
 13 files changed, 754 insertions(+), 288 deletions(-)

-- 
: Dipl-Ing Philipp Reisner
: LINBIT | Your Way to High Availability
: Tel: +43-1-8178292-50, Fax: +43-1-8178292-82
: http://www.linbit.com

DRBD(R) and LINBIT(R) are registered trademarks of LINBIT, Austria.


             reply	other threads:[~2012-05-10 12:25 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-10 12:19 Philipp Reisner [this message]
2012-05-18 14:22 ` [GIT PULL] drbd-8.3 updates Jens Axboe
  -- strict thread matches above, loose matches on Subject: below --
2012-10-02 13:02 Philipp Reisner
2012-10-03  6:44 ` Jens Axboe
2012-10-03  9:24   ` Philipp Reisner
2012-10-03 10:07     ` Philipp Reisner
2012-10-03 12:49       ` Jens Axboe
2012-10-03 13:49         ` Philipp Reisner
2012-10-03 14:04           ` 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=4277851.LeAnKnANCB@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