1. 13 9月, 2012 7 次提交
  2. 22 8月, 2012 1 次提交
  3. 16 8月, 2012 3 次提交
    • P
      drbd: Write all pages of the bitmap after an online resize · d1aa4d04
      Philipp Reisner 提交于
      We need to write the whole bitmap after we moved the meta data
      due to an online resize operation.
      
      With the support for one peta byte devices bitmap IO was optimized
      to only write out touched pages. This optimization must be turned
      off when writing the bitmap after an online resize.
      
      This issue was introduced with drbd-8.3.10.
      
      The impact of this bug is that after an online resize, the next
      resync could become larger than expected.
      Signed-off-by: NPhilipp Reisner <philipp.reisner@linbit.com>
      Signed-off-by: NLars Ellenberg <lars.ellenberg@linbit.com>
      d1aa4d04
    • P
      drbd: Finish requests that completed while IO was frozen · 509fc019
      Philipp Reisner 提交于
      Requests of an acked epoch are stored on the barrier_acked_requests list. In
      case the private bio of such a request completes while IO on the drbd device
      is suspended [req_mod(completed_ok)] then the request stays there.
      
      When thawing IO because the fence_peer handler returned, then we use
      tl_clear() to apply the connection_lost_while_pending event to all requests
      on the transfer-log and the barrier_acked_requests list.
      
      Up to now the connection_lost_while_pending event was not applied
      on requests on the barrier_acked_requests list. Fixed that.
      
      I.e. now the connection_lost_while_pending and resend events are
      applied to requests on the barrier_acked_requests list. For that
      it is necessary that the resend event finishes (local only)
      READS correctly.
      Signed-off-by: NPhilipp Reisner <philipp.reisner@linbit.com>
      Signed-off-by: NLars Ellenberg <lars.ellenberg@linbit.com>
      509fc019
    • L
      drbd: fix drbd wire compatibility for empty flushes · 227f052f
      Lars Ellenberg 提交于
      DRBD has a concept of request epochs or reorder-domains,
      which are separated on the wire by P_BARRIER packets.
      
      Older DRBD is not able to handle zero-sized requests at all,
      so we need to map empty flushes to these drbd barriers.
      
      These are the equivalent of empty flushes, and
      by default trigger flushes on the receiving side anyways
      (unless not supported or explicitly disabled),
      so there is no need to handle this differently in newer drbd either.
      Signed-off-by: NPhilipp Reisner <philipp.reisner@linbit.com>
      Signed-off-by: NLars Ellenberg <lars.ellenberg@linbit.com>
      227f052f
  4. 04 8月, 2012 1 次提交
  5. 01 8月, 2012 1 次提交
    • M
      nbd: set SOCK_MEMALLOC for access to PFMEMALLOC reserves · 7f338fe4
      Mel Gorman 提交于
      Set SOCK_MEMALLOC on the NBD socket to allow access to PFMEMALLOC reserves
      so pages backed by NBD, particularly if swap related, can be cleaned to
      prevent the machine being deadlocked.  It is still possible that the
      PFMEMALLOC reserves get depleted resulting in deadlock but this can be
      resolved by the administrator by increasing min_free_kbytes.
      Signed-off-by: NMel Gorman <mgorman@suse.de>
      Cc: David Miller <davem@davemloft.net>
      Cc: Neil Brown <neilb@suse.de>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Mike Christie <michaelc@cs.wisc.edu>
      Cc: Eric B Munson <emunson@mgebm.net>
      Cc: Eric Dumazet <eric.dumazet@gmail.com>
      Cc: Sebastian Andrzej Siewior <sebastian@breakpoint.cc>
      Cc: Mel Gorman <mgorman@suse.de>
      Cc: Christoph Lameter <cl@linux.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      7f338fe4
  6. 31 7月, 2012 27 次提交