Discussion:
[linux-lvm] Running lvm2 regression tests
Bruce Dubbs
2016-06-10 03:08:20 UTC
Permalink
I am having a problem with building LVM2.2.02.155 from source.

Actually, the build is OK:

./configure --prefix=/usr \
--exec-prefix= \
--enable-applib \
--enable-cmdlib \
--enable-pkgconfig \
--enable-udev_sync

make
sudo make install

My problem comes when I try to run some checks:

sudo make -k check_local

In this case every test times out. I killed the tests after two hours.
The journal shows things like:

ndev-vanilla:api/dbustest.sh started
ndev-vanilla:api/dbustest.sh timeout

I have the following kernel settings in linux-4.4.2:

CONFIG_MD=y
CONFIG_BLK_DEV_MD=y
CONFIG_MD_AUTODETECT=y
CONFIG_MD_LINEAR=m
CONFIG_MD_RAID0=m
CONFIG_MD_RAID1=y
CONFIG_MD_RAID10=y
CONFIG_MD_RAID456=y
# CONFIG_MD_MULTIPATH is not set
# CONFIG_MD_FAULTY is not set
CONFIG_BCACHE=m
CONFIG_BCACHE_DEBUG=y
CONFIG_BCACHE_CLOSURES_DEBUG=y
CONFIG_BLK_DEV_DM_BUILTIN=y
CONFIG_BLK_DEV_DM=m
CONFIG_DM_MQ_DEFAULT=y
CONFIG_DM_DEBUG=y
CONFIG_DM_BUFIO=m
CONFIG_DM_BIO_PRISON=m
CONFIG_DM_PERSISTENT_DATA=m
CONFIG_DM_DEBUG_BLOCK_STACK_TRACING=y
CONFIG_DM_CRYPT=m
CONFIG_DM_SNAPSHOT=m
CONFIG_DM_THIN_PROVISIONING=m
CONFIG_DM_CACHE=m
CONFIG_DM_CACHE_MQ=m
CONFIG_DM_CACHE_SMQ=m
CONFIG_DM_CACHE_CLEANER=m
CONFIG_DM_ERA=m
CONFIG_DM_MIRROR=m
CONFIG_DM_LOG_USERSPACE=m
CONFIG_DM_RAID=m
CONFIG_DM_ZERO=m
# CONFIG_DM_MULTIPATH is not set
# CONFIG_DM_DELAY is not set
CONFIG_DM_UEVENT=y
CONFIG_DM_FLAKEY=m
# CONFIG_DM_VERITY is not set
# CONFIG_DM_SWITCH is not set
# CONFIG_DM_LOG_WRITES is not set
...
# CONFIG_MAGIC_SYSRQ is not set

I do not have thin-provisioning-tools installed but I thought that was
optional.

What am I missing?

-- Bruce Dubbs
linuxfromscratch.org
Zdenek Kabelac
2016-06-10 08:54:40 UTC
Permalink
Post by Bruce Dubbs
I am having a problem with building LVM2.2.02.155 from source.
./configure --prefix=/usr \
--exec-prefix= \
--enable-applib \
--enable-cmdlib \
--enable-pkgconfig \
--enable-udev_sync
make
sudo make install
sudo make -k check_local
In this case every test times out. I killed the tests after two hours. The
ndev-vanilla:api/dbustest.sh started
ndev-vanilla:api/dbustest.sh timeout
dbus support is highly experimental and likely full of bugs.
It's not even supported - it's purely proof-of-concept.

For now use 'make check_local S=dbustest' to skip this one...


Regards

Zdenek
Bruce Dubbs
2016-06-10 18:15:08 UTC
Permalink
Post by Zdenek Kabelac
Post by Bruce Dubbs
I am having a problem with building LVM2.2.02.155 from source.
./configure --prefix=/usr \
--exec-prefix= \
--enable-applib \
--enable-cmdlib \
--enable-pkgconfig \
--enable-udev_sync
make
sudo make install
sudo make -k check_local
In this case every test times out. I killed the tests after two hours.
ndev-vanilla:api/dbustest.sh started
ndev-vanilla:api/dbustest.sh timeout
dbus support is highly experimental and likely full of bugs.
It's not even supported - it's purely proof-of-concept.
For now use 'make check_local S=dbustest' to skip this one...
I wasn't clear enough. *ALL* the tests time out for me.

As a test, I rebuilt the kernel enabling CONFIG_MAGIC_SYSRQ=y and the
tests now work. Too bad that this is not documented. Perhaps a mention
of the kernel requirements for the regression tests in the README or
INSTALL files would be appropriate.

-- Bruce
Zdenek Kabelac
2016-06-13 08:46:48 UTC
Permalink
Post by Bruce Dubbs
Post by Zdenek Kabelac
Post by Bruce Dubbs
I am having a problem with building LVM2.2.02.155 from source.
./configure --prefix=/usr \
--exec-prefix= \
--enable-applib \
--enable-cmdlib \
--enable-pkgconfig \
--enable-udev_sync
make
sudo make install
sudo make -k check_local
In this case every test times out. I killed the tests after two hours.
ndev-vanilla:api/dbustest.sh started
ndev-vanilla:api/dbustest.sh timeout
dbus support is highly experimental and likely full of bugs.
It's not even supported - it's purely proof-of-concept.
For now use 'make check_local S=dbustest' to skip this one...
I wasn't clear enough. *ALL* the tests time out for me.
As a test, I rebuilt the kernel enabling CONFIG_MAGIC_SYSRQ=y and the tests
now work. Too bad that this is not documented. Perhaps a mention of the
kernel requirements for the regression tests in the README or INSTALL files
would be appropriate.
Hi

It's unclear to me why 'sysrq' kernel support could change anything.
Test suite does echo 't' to sysrq - in case of timeout - but purely to
capture machine state for analysis.

Also - lvm2 test suite is not a user-friendly installable app and certainly
does require some 'know-how' to be executed in some usable way - so it takes
some few more steps - like ensuring there are no other running daemons like
lvmetad, lvmpoll and dmeventd in the system. Proper udev rules needs to be
installed (to get cookie confirmation from udev) and of course whole test
suite needs to be run as 'root'.

So it's mainly targeted to developers.

But it's great more people try to use it.

So - instead of checking whole test suite report result from:

# cd test
# make check_local T=basic VERBOSE=1

Regards

Zdenek

Loading...