# Copyright 2020 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# lvm.conf defines the default configuration used by LVM2 on running
# lvm commands, either via liblvm2cmd or using the command line.
# The config settings in this file are derived from a sample LVM2 config
# with additional ChromiumOS specific modifications.
# For more detailed descriptions for each configuration, refer to
# <lvm2_checkout>/conf/example.conf.in.

config {
  checks = 1
  abort_on_errors = 0
  profile_dir = "/etc/lvm/profile"
}

devices {
  dir = "/dev"
  scan = [ "/dev" ]
  obtain_device_list_from_udev = 0
  external_device_info_source = "none"
  filter = [ "r|/dev/nbd.*|", "a/.*/" ]
  cache_dir = "/etc/lvm/cache"
  cache_file_prefix = ""
  write_cache_state = 1
  sysfs_scan = 1
  scan_lvs = 0
  multipath_component_detection = 1
  md_component_detection = 1
  fw_raid_component_detection = 0
  md_chunk_alignment = 1
  data_alignment_detection = 1
  data_alignment = 0
  data_alignment_offset_detection = 1
  ignore_suspended_devices = 0
  ignore_lvm_mirrors = 1
  disable_after_error_count = 0
  require_restorefile_with_uuid = 1
  pv_min_size = 2048
  issue_discards = 1
  allow_changes_with_duplicate_pvs = 0
}

allocation {
  maximise_cling = 1
  use_blkid_wiping = 1
  wipe_signatures_when_zeroing_new_lvs = 1
  mirror_logs_require_separate_pvs = 0
  cache_pool_metadata_require_separate_pvs = 0
  thin_pool_metadata_require_separate_pvs = 0
}

log {
  verbose = 0
  silent = 0
  syslog = 1
  overwrite = 0
  level = 0
  indent = 1
  command_names = 0
  prefix = "  "
  activation = 0
  debug_classes = [ "all" ]
}

backup {
  backup = 0
  backup_dir = "/etc/lvm/backup"
  archive = 0
  archive_dir = "/etc/lvm/archive"
  retain_min = 10
  retain_days = 30
}

shell {
  history_size = 100
}

global {
  umask = 077
  test = 0
  units = "r"
  si_unit_consistency = 1
  suffix = 1
  activation = 1
  fallback_to_lvm1 = 0
  proc = "/proc"
  etc = "/etc"
  locking_type = 1
  wait_for_locks = 1
  fallback_to_clustered_locking = 1
  fallback_to_local_locking = 1
  locking_dir = "/run/lock/lvm"
  prioritise_write_locks = 1
  abort_on_internal_errors = 0
  metadata_read_only = 0
  mirror_segtype_default = "raid1"
  raid10_segtype_default = "raid10"
  sparse_segtype_default = "thin"
  use_lvmetad = 0
  use_lvmlockd = 0
  system_id_source = "none"
  use_lvmpolld = 0
  notify_dbus = 1
}

activation {
  checks = 0
  udev_sync = 0
  udev_rules = 0
  verify_udev_operations = 0
  retry_deactivation = 1
  missing_stripe_filler = "error"
  use_linear_target = 1
  reserved_stack = 64
  reserved_memory = 8192
  process_priority = -18
  raid_region_size = 2048
  readahead = "auto"
  raid_fault_policy = "warn"
  mirror_image_fault_policy = "remove"
  mirror_log_fault_policy = "allocate"
  snapshot_autoextend_threshold = 100
  snapshot_autoextend_percent = 20
  thin_pool_autoextend_threshold = 100
  thin_pool_autoextend_percent = 20
  use_mlockall = 0
  monitoring = 1
  polling_interval = 15
  activation_mode = "degraded"
}

dmeventd {
  mirror_library = "libdevmapper-event-lvm2mirror.so"
  snapshot_library = "libdevmapper-event-lvm2snapshot.so"
  thin_library = "libdevmapper-event-lvm2thin.so"
}
