Revision 89b70f39 lib/bdev.py

b/lib/bdev.py
1215 1215
            "--create-device"]
1216 1216
    if size:
1217 1217
      args.extend(["-d", "%sm" % size])
1218
    if not constants.DRBD_BARRIERS: # disable barriers, if configured so
1219
      version = cls._GetVersion()
1220
      # various DRBD versions support different disk barrier options;
1221
      # what we aim here is to revert back to the 'drain' method of
1222
      # disk flushes and to disable metadata barriers, in effect going
1223
      # back to pre-8.0.7 behaviour
1224
      vmaj = version['k_major']
1225
      vmin = version['k_minor']
1226
      vrel = version['k_point']
1227
      assert vmaj == 8
1228
      if vmin == 0: # 8.0.x
1229
        if vrel >= 12:
1230
          args.extend(['-i', '-m'])
1231
      elif vmin == 2: # 8.2.x
1232
        if vrel >= 7:
1233
          args.extend(['-i', '-m'])
1234
      elif vmaj >= 3: # 8.3.x or newer
1235
        args.extend(['-i', '-a', 'm'])
1218 1236
    result = utils.RunCmd(args)
1219 1237
    if result.failed:
1220 1238
      _ThrowError("drbd%d: can't attach local disk: %s", minor, result.output)

Also available in: Unified diff