master - test: correcting binary usage
by Zdenek Kabelac
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=aa25cfe084adf360c4a...
Commit: aa25cfe084adf360c4ab1333a927b49279796f00
Parent: 15c3ad9641deaee64f4c645a87d191adb098035e
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Fri Apr 14 01:03:18 2017 +0200
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Fri Apr 14 01:03:18 2017 +0200
test: correcting binary usage
Ensure 'test suite' run uses fsadm and dmeventd from compiled dir,
while for 'rpm' installed test use binaries installed in system.
---
test/lib/aux.sh | 9 ++++++++-
test/shell/dmeventd-restart.sh | 5 -----
2 files changed, 8 insertions(+), 6 deletions(-)
diff --git a/test/lib/aux.sh b/test/lib/aux.sh
index f12f953..5303adc 100644
--- a/test/lib/aux.sh
+++ b/test/lib/aux.sh
@@ -1157,7 +1157,6 @@ global/thin_repair_executable = "$LVM_TEST_THIN_REPAIR_CMD"
global/use_lvmetad = $LVM_TEST_LVMETAD
global/use_lvmpolld = $LVM_TEST_LVMPOLLD
global/use_lvmlockd = $LVM_TEST_LVMLOCKD
-global/fsadm_executable = "$TESTDIR/lib/fsadm"
log/activation = 1
log/file = "$TESTDIR/debug.log"
log/indent = 1
@@ -1166,6 +1165,14 @@ log/overwrite = 1
log/syslog = 0
log/verbose = 0
EOF
+ # For 'rpm' builds use system installed binaries.
+ # For test suite run use binaries from builddir.
+ test -z "${abs_top_builddir+varset}" || {
+ cat >> "$config_values" <<-EOF
+dmeventd/executable = "$abs_top_builddir/test/lib/dmeventd"
+global/fsadm_executable = "$abs_top_builddir/test/lib/fsadm"
+EOF
+ }
}
local v
diff --git a/test/shell/dmeventd-restart.sh b/test/shell/dmeventd-restart.sh
index 9fad9a8..90f4d9a 100644
--- a/test/shell/dmeventd-restart.sh
+++ b/test/shell/dmeventd-restart.sh
@@ -45,11 +45,6 @@ sleep 7
not pgrep dmeventd
rm LOCAL_DMEVENTD
-# set dmeventd path
-if test -n "$abs_top_builddir"; then
- aux lvmconf "dmeventd/executable=\"$abs_top_builddir/test/lib/dmeventd\""
-fi
-
lvchange --monitor y --verbose $vg/3way 2>&1 | tee lvchange.out
pgrep -o dmeventd >LOCAL_DMEVENTD
not grep 'already monitored' lvchange.out
7 years
master - test: correcting binary usage
by Zdenek Kabelac
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=9edff410169da65c9b9...
Commit: 9edff410169da65c9b9f360674fbf62b6e1d04ff
Parent: 15c3ad9641deaee64f4c645a87d191adb098035e
Author: Zdenek Kabelac <zkabelac(a)redhat.com>
AuthorDate: Fri Apr 14 00:19:03 2017 +0200
Committer: Zdenek Kabelac <zkabelac(a)redhat.com>
CommitterDate: Fri Apr 14 00:21:36 2017 +0200
test: correcting binary usage
Ensure 'test suite' run uses fsadm and dmeventd from compiled dir,
while for 'rpm' installed test use binaries installed in system.
---
test/lib/aux.sh | 10 +++++++++-
test/shell/dmeventd-restart.sh | 5 -----
2 files changed, 9 insertions(+), 6 deletions(-)
diff --git a/test/lib/aux.sh b/test/lib/aux.sh
index f12f953..06286b6 100644
--- a/test/lib/aux.sh
+++ b/test/lib/aux.sh
@@ -1157,7 +1157,6 @@ global/thin_repair_executable = "$LVM_TEST_THIN_REPAIR_CMD"
global/use_lvmetad = $LVM_TEST_LVMETAD
global/use_lvmpolld = $LVM_TEST_LVMPOLLD
global/use_lvmlockd = $LVM_TEST_LVMLOCKD
-global/fsadm_executable = "$TESTDIR/lib/fsadm"
log/activation = 1
log/file = "$TESTDIR/debug.log"
log/indent = 1
@@ -1168,6 +1167,15 @@ log/verbose = 0
EOF
}
+ # For 'rpm' builds use system installed binaries.
+ # For test suite run use binaries from builddir.
+ test -z "${abs_top_builddir+varset}" || {
+ cat >> "$config_values" <<-EOF
+dmeventd/executable = "$abs_top_builddir/test/lib/dmeventd"
+global/fsadm_executable = "$abs_top_builddir/test/lib/fsadm"
+EOF
+ }
+
local v
for v in "$@"; do
echo "$v"
diff --git a/test/shell/dmeventd-restart.sh b/test/shell/dmeventd-restart.sh
index 9fad9a8..90f4d9a 100644
--- a/test/shell/dmeventd-restart.sh
+++ b/test/shell/dmeventd-restart.sh
@@ -45,11 +45,6 @@ sleep 7
not pgrep dmeventd
rm LOCAL_DMEVENTD
-# set dmeventd path
-if test -n "$abs_top_builddir"; then
- aux lvmconf "dmeventd/executable=\"$abs_top_builddir/test/lib/dmeventd\""
-fi
-
lvchange --monitor y --verbose $vg/3way 2>&1 | tee lvchange.out
pgrep -o dmeventd >LOCAL_DMEVENTD
not grep 'already monitored' lvchange.out
7 years
master - lvconvert: typo in message
by Heinz Mauelshagen
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=15c3ad9641deaee64f4...
Commit: 15c3ad9641deaee64f4c645a87d191adb098035e
Parent: 0ea9a15612e5a5527ca9747b402884a4e864b236
Author: Heinz Mauelshagen <heinzm(a)redhat.com>
AuthorDate: Thu Apr 13 22:19:29 2017 +0200
Committer: Heinz Mauelshagen <heinzm(a)redhat.com>
CommitterDate: Thu Apr 13 22:19:29 2017 +0200
lvconvert: typo in message
---
lib/metadata/raid_manip.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/lib/metadata/raid_manip.c b/lib/metadata/raid_manip.c
index 34ac2a6..173b5bf 100644
--- a/lib/metadata/raid_manip.c
+++ b/lib/metadata/raid_manip.c
@@ -2985,7 +2985,7 @@ static int _lv_raid_change_image_count(struct logical_volume *lv, int yes, uint3
uint32_t old_count = lv_raid_image_count(lv);
if (old_count == new_count) {
- log_warn("WARGNING: %s already has image count of %d.",
+ log_warn("WARNING: %s already has image count of %d.",
display_lvname(lv), new_count);
return 1;
}
7 years
master - tests: use raid_region_size 512
by David Teigland
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=0ea9a15612e5a5527ca...
Commit: 0ea9a15612e5a5527ca9747b402884a4e864b236
Parent: b81b4aad24807d2aa4968aa9fc7d970a65623620
Author: David Teigland <teigland(a)redhat.com>
AuthorDate: Thu Apr 13 14:21:34 2017 -0500
Committer: David Teigland <teigland(a)redhat.com>
CommitterDate: Thu Apr 13 14:21:34 2017 -0500
tests: use raid_region_size 512
given the new default from 5ae7a016b8e5796d36cf491345b1cf8e43ec9ea5
---
test/lib/aux.sh | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/test/lib/aux.sh b/test/lib/aux.sh
index 214db4e..f12f953 100644
--- a/test/lib/aux.sh
+++ b/test/lib/aux.sh
@@ -1127,6 +1127,7 @@ activation/snapshot_autoextend_threshold = 50
activation/udev_rules = 1
activation/udev_sync = 1
activation/verify_udev_operations = $LVM_VERIFY_UDEV
+activation/raid_region_size = 512
allocation/wipe_signatures_when_zeroing_new_lvs = 0
backup/archive = 0
backup/backup = 0
7 years
master - WHATS_NEW: raise region_size default
by Heinz Mauelshagen
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=b81b4aad24807d2aa49...
Commit: b81b4aad24807d2aa4968aa9fc7d970a65623620
Parent: c6a6ce6cd5a80e78094aa6420e3cb53a478eef76
Author: Heinz Mauelshagen <heinzm(a)redhat.com>
AuthorDate: Thu Apr 13 17:49:58 2017 +0200
Committer: Heinz Mauelshagen <heinzm(a)redhat.com>
CommitterDate: Thu Apr 13 17:49:58 2017 +0200
WHATS_NEW: raise region_size default
---
WHATS_NEW | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/WHATS_NEW b/WHATS_NEW
index 56ad0ca..e59024b 100644
--- a/WHATS_NEW
+++ b/WHATS_NEW
@@ -1,5 +1,6 @@
Version 2.02.171 -
==================================
+ lvcreate - raise mirror/raid default regionsize to 2MiB
Add missing configurable prefix to configuration file installation directory.
Version 2.02.170 - 13th April 2017
7 years
master - conf: Remove exec_prefix from confdir.
by Alasdair Kergon
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=c6a6ce6cd5a80e78094...
Commit: c6a6ce6cd5a80e78094aa6420e3cb53a478eef76
Parent: 5ae7a016b8e5796d36cf491345b1cf8e43ec9ea5
Author: Alasdair G Kergon <agk(a)redhat.com>
AuthorDate: Thu Apr 13 16:19:33 2017 +0100
Committer: Alasdair G Kergon <agk(a)redhat.com>
CommitterDate: Thu Apr 13 16:21:29 2017 +0100
conf: Remove exec_prefix from confdir.
Some distros now want to put /etc outside prefix/exec_prefix.
---
make.tmpl.in | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/make.tmpl.in b/make.tmpl.in
index c3e6c8c..a40eaaa 100644
--- a/make.tmpl.in
+++ b/make.tmpl.in
@@ -82,7 +82,7 @@ udev_prefix = @udev_prefix@
sysconfdir = @sysconfdir@
rootdir = $(DESTDIR)/
bindir = $(DESTDIR)@bindir@
-confdir = $(DESTDIR)$(exec_prefix)@CONFDIR@/lvm
+confdir = $(DESTDIR)@CONFDIR@/lvm
profiledir = $(confdir)/@DEFAULT_PROFILE_SUBDIR@
includedir = $(DESTDIR)@includedir@
libdir = $(DESTDIR)@libdir@
7 years
master - lvcreate: raise default raid regionsize to 2MiB
by Heinz Mauelshagen
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=5ae7a016b8e5796d36c...
Commit: 5ae7a016b8e5796d36cf491345b1cf8e43ec9ea5
Parent: 4547218a7dcee0508f61561e3e319428651e8951
Author: Heinz Mauelshagen <heinzm(a)redhat.com>
AuthorDate: Thu Apr 13 16:10:49 2017 +0200
Committer: Heinz Mauelshagen <heinzm(a)redhat.com>
CommitterDate: Thu Apr 13 16:10:49 2017 +0200
lvcreate: raise default raid regionsize to 2MiB
Related: rhbz1392947.
---
conf/example.conf.in | 2 +-
lib/config/defaults.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/conf/example.conf.in b/conf/example.conf.in
index 78f11d1..ed34b91 100644
--- a/conf/example.conf.in
+++ b/conf/example.conf.in
@@ -1297,7 +1297,7 @@ activation {
# The clean/dirty state of data is tracked for each region.
# The value is rounded down to a power of two if necessary, and
# is ignored if it is not a multiple of the machine memory page size.
- raid_region_size = 512
+ raid_region_size = 2048
# Configuration option activation/error_when_full.
# Return errors if a thin pool runs out of space.
diff --git a/lib/config/defaults.h b/lib/config/defaults.h
index b5d9983..65b81f1 100644
--- a/lib/config/defaults.h
+++ b/lib/config/defaults.h
@@ -202,7 +202,7 @@
#define DEFAULT_ACTIVATION_MODE "degraded"
#define DEFAULT_USE_LINEAR_TARGET 1
#define DEFAULT_STRIPE_FILLER "error"
-#define DEFAULT_RAID_REGION_SIZE 512 /* KB */
+#define DEFAULT_RAID_REGION_SIZE 2048 /* KB */
#define DEFAULT_INTERVAL 15
#define DEFAULT_MAX_HISTORY 100
7 years
v2_02_170 annotated tag has been created
by Alasdair Kergon
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=b369397f21869b3e1bb...
Commit: b369397f21869b3e1bb0fc8d005599d444ae2c8e
Parent: 0000000000000000000000000000000000000000
Author: Alasdair G Kergon <agk(a)redhat.com>
AuthorDate: 2017-04-12 23:43 +0000
Committer: Alasdair G Kergon <agk(a)redhat.com>
CommitterDate: 2017-04-12 23:43 +0000
annotated tag: v2_02_170 has been created
at b369397f21869b3e1bb0fc8d005599d444ae2c8e (tag)
tagging b9a16fe73bdbed8a9bece3fb33fb754d62ffb8d4 (commit)
replaces v2_02_169
Version 2.02.170
Another development checkpoint release. We have stopped adding
features as we work towards the next stable release, but please still
only use this release for testing purposes.
88 files changed, 1657 insertions(+), 1902 deletions(-)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.14 (GNU/Linux)
iEYEABECAAYFAljuveMACgkQIoGRwVZ+LBd71gCfVV7uj+tMPu+shH+830v6lsGT
cMEAnAqwkwI1SUnuA2NUuzIK9bMun80h
=B/vY
-----END PGP SIGNATURE-----
Alasdair G Kergon (4):
post-release
make generate
autoconf
pre-release
Bryn M. Reeves (30):
dmfilemapd: log closedir errors with log_sys_error()
dmfilemapd: do not closdir(pid_d) unless it is open
dmfilemapd: pass correct dirp to closedir()
dmfilemapd: use *argv[0] when testing for absolute path (coverity)
dmfilemapd: always close check file descriptor (coverity)
dmfilemapd: always terminate link buffer after readlink(2) (coverity)
dmfilemapd: always close link check file descriptor (coverity)
dmfilemapd: fix off-by-one in fd comparison (coverity)
dmfilemapd: free region table at end of _update_regions() (coverity)
libdm: do not leak FIEMAP extent buffer if pool allocation fails (coverity)
libdm: abort filemap update if pool allocation fails (coverity)
libdm: do not attempt filemap cleanup if dm_stats_list() fails (coverity)
dmsetup: do not start dmfilemapd if region creation fails (coverity)
dmsetup: always close fd when leaving _stats_update_file() (coverity)
libdm: use log_sys_error if dmfilemapd exec fails
dmsetup: simplify branching in _stats_update_file()
libdm: use DM_STATS_GROUP_* constants in dm_stats_create_regions_from_fd
dmfilemapd: make filemap_monitor->nr_regions uint64_t
dmfilemapd: fix len type in _filemap_monitor_check_file_unlinked()
dmfilemapd: cast sysconf() return value to int
dmfilemapd: use log_sys_error in _filemap_monitor_set_notify
dmfilemapd: cast return value of strto* functions when needed
libdm: make _find_extent() nr_extents argument uint64_t
libdm: make _stats_resize_group() num_regions argument uint64_t
libdm: use size_t for buflen in _stats_group_file_regions()
libdm: use uint64_t where possible in filemap routines
libdm: fix incorrect format specifier in _stats_resize_group()
libdm: use correct FMTu32 format specifier for uint32_t
dmsetup: replace (f)printf("
") with putchar/putc
WHATS_NEW_DM: add recent dmsetup and dmfilemapd entries
David Teigland (26):
lvchange: refresh command missing activationmode option
man: fix description of --partial option
commands: ignore partial option in most cases
commands: recognize ignored options
help: include cmd def info in verbose output
commands: missing comma in cmd def option list
help: print all options in abbreviated help output
lvconvert: fix converting hidden lv to pool
vgchange/lvchange: fix poll and monitor use
lvchange: fix --poll value when set from option
commands: fix misspelling of option value
lvchange: fix missing return value
lvchange/lvconvert: fix missing lvmlockd LV locks
commands: check required option value when matching command
man lvcreate/lvconvert: minor clean up rewording
lvconvert: validate vg name prefix for pool metadata name
man lvmraid: improve text layout
lvconvert: prevent duplicate use of metadata lv
lvconvert: require different LV for pool
man lvmraid: use same style as generated pages
man lvmraid: fix line wrapping in examples
raid_manip: fix typo warning message
man lvmraid: wrap long lines
commands: add rule for lvconvert commands that create pools
WHATS_NEW: add items since last release
commands: improve error message for option rules
Heinz Mauelshagen (40):
man: regexp readability / use $(SED)
man: de-duplicate lvmconfig, lvm-config and lvm-dumpconfig manuals
man: simplify by avoiding different headers on de-duplication of lvmconfig, lvm-config and lvm-dumpconfig
man: ranges/LV names/symbolic use regexp
man-generator: catch missing command name
man: use variable in Makefile / regexp
man: Copyright
man: raid cleanup
man: add minor regexp
man-generator: add '.' to all messages
raid: address coverity issues
raid: favour dm_list_first()
raid: more coverity issues
man-generator: don't ignore description file errors
man-generator: enhance performance
man-generator: shutdown stdout buffer
man: pregen file change
lvchange: persistent major/minor processing regression
lvchange: persistent major/minor processing regression
lvchange: avoid multiple metadata updates/reloads/backups
man: '-pool' regexp
lvchange: enhance avoiding multiple metadata updates/reloads/backups
lvchange: tidy switch code in _lvchange_properties_single()
lvconvert: allow --type with --regionsize
raid: tidying
man: lvmraid.7 raid6_n_6 fix
raid: reload on removing images
lvconvert: prompt on raid1 image changes
lvconvert: avoid error message on raid1 -> raid4 conversion
lvconvert: raid1 -> linear prompt
lvconvert: fixe conversion message
lvconvert: cleanup prompting
signals: fix SIGINT blocking flaw causing inconsistent metadata
signals: fix comparison flaw
raid: handle insufficent PVs on takeover from striped/raid0
lvconvert: add segment type raid10_near
lvconvert: fix failing valid regionsize change
lvconvert: better message on --regionsize
WHATS_NEW: add recent RAID entries
lvconvert: return error without conversion
Jonathan Brassow (1):
Typo: change loose to lose
Marian Csontos (3):
dmfilemapd: Fix install target
spec: Add dmfilemapd
dmstats: Fix path to static dmstats
Nir Soffer (1):
dmsetup: Flush ouptut when using --interval
Peter Rajnoha (1):
lvmconf: fix systemd unit existence check for lvmconf --services --startstopservices
Zdenek Kabelac (16):
vgrename: use long enough buffer for path
man: fix type
tests: fix typo in makefile
cache: scan kallsyms for kernel symbols
tests: fix LD_LIBRARY_PATH
dmfilemapd: keep 1 byte for
7 years
master - conf: Add missing prefix to installation directory.
by Alasdair Kergon
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=4547218a7dcee0508f6...
Commit: 4547218a7dcee0508f61561e3e319428651e8951
Parent: ae7f696d535143be88aa8aa564fad9c1851cebd9
Author: Alasdair G Kergon <agk(a)redhat.com>
AuthorDate: Thu Apr 13 02:17:27 2017 +0100
Committer: Alasdair G Kergon <agk(a)redhat.com>
CommitterDate: Thu Apr 13 02:17:27 2017 +0100
conf: Add missing prefix to installation directory.
Our Makefiles also support systems that set the installation prefix
at configuration time - the use of DESTDIR is not required.
---
WHATS_NEW | 1 +
conf/Makefile.in | 4 ++--
make.tmpl.in | 3 ++-
3 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/WHATS_NEW b/WHATS_NEW
index 766bf32..56ad0ca 100644
--- a/WHATS_NEW
+++ b/WHATS_NEW
@@ -1,5 +1,6 @@
Version 2.02.171 -
==================================
+ Add missing configurable prefix to configuration file installation directory.
Version 2.02.170 - 13th April 2017
==================================
diff --git a/conf/Makefile.in b/conf/Makefile.in
index db8e99f..c8fee3e 100644
--- a/conf/Makefile.in
+++ b/conf/Makefile.in
@@ -48,8 +48,8 @@ install_localconf: $(CONFLOCAL)
fi
install_profiles: $(PROFILES)
- $(INSTALL_DIR) $(DESTDIR)$(DEFAULT_PROFILE_DIR)
- $(INSTALL_DATA) $(PROFILES) $(DESTDIR)$(DEFAULT_PROFILE_DIR)/
+ $(INSTALL_DIR) $(profiledir)
+ $(INSTALL_DATA) $(PROFILES) $(profiledir)/
install_lvm2: install_conf install_localconf install_profiles
diff --git a/make.tmpl.in b/make.tmpl.in
index 8148fb5..c3e6c8c 100644
--- a/make.tmpl.in
+++ b/make.tmpl.in
@@ -82,7 +82,8 @@ udev_prefix = @udev_prefix@
sysconfdir = @sysconfdir@
rootdir = $(DESTDIR)/
bindir = $(DESTDIR)@bindir@
-confdir = $(DESTDIR)@CONFDIR@/lvm
+confdir = $(DESTDIR)$(exec_prefix)@CONFDIR@/lvm
+profiledir = $(confdir)/@DEFAULT_PROFILE_SUBDIR@
includedir = $(DESTDIR)@includedir@
libdir = $(DESTDIR)@libdir@
libexecdir = $(DESTDIR)@libexecdir@
7 years
master - post-release
by Alasdair Kergon
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=ae7f696d535143be88a...
Commit: ae7f696d535143be88aa8aa564fad9c1851cebd9
Parent: b9a16fe73bdbed8a9bece3fb33fb754d62ffb8d4
Author: Alasdair G Kergon <agk(a)redhat.com>
AuthorDate: Thu Apr 13 01:47:47 2017 +0100
Committer: Alasdair G Kergon <agk(a)redhat.com>
CommitterDate: Thu Apr 13 01:47:47 2017 +0100
post-release
---
VERSION | 2 +-
VERSION_DM | 2 +-
WHATS_NEW | 3 +++
WHATS_NEW_DM | 3 +++
4 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/VERSION b/VERSION
index 204e69d..a13212a 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-2.02.170(2)-git (2017-04-13)
+2.02.171(2)-git (2017-04-13)
diff --git a/VERSION_DM b/VERSION_DM
index 5387a46..de580ee 100644
--- a/VERSION_DM
+++ b/VERSION_DM
@@ -1 +1 @@
-1.02.139-git (2017-04-13)
+1.02.140-git (2017-04-13)
diff --git a/WHATS_NEW b/WHATS_NEW
index f2482f3..766bf32 100644
--- a/WHATS_NEW
+++ b/WHATS_NEW
@@ -1,3 +1,6 @@
+Version 2.02.171 -
+==================================
+
Version 2.02.170 - 13th April 2017
==================================
Introduce global/fsadm_executable to make fsadm path configurable.
diff --git a/WHATS_NEW_DM b/WHATS_NEW_DM
index fe1aeb1..e6f7729 100644
--- a/WHATS_NEW_DM
+++ b/WHATS_NEW_DM
@@ -1,3 +1,6 @@
+Version 1.02.140 -
+==================================
+
Version 1.02.139 - 13th April 2017
==================================
Fix assignment in _target_version() when dm task can't run.
7 years