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: [Drbd-dev] [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.
WARNING: multiple messages have this Message-ID (diff)
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.
next reply other threads:[~2012-05-10 12:19 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-05-10 12:19 Philipp Reisner [this message]
2012-05-10 12:19 ` [GIT PULL] drbd-8.3 updates Philipp Reisner
2012-05-16 6:45 ` [Drbd-dev] " Robert Kim App and Facebook Marketing
2012-05-18 14:22 ` Jens Axboe
2012-05-18 14:22 ` Jens Axboe
-- strict thread matches above, loose matches on Subject: below --
2012-10-02 13:02 [Drbd-dev] " 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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.