Thread (13 messages) 13 messages, 5 authors, 2022-11-07

Re: A crash caused by the commit 0dd84b319352bb8ba64752d4e45396d8b13e6018

From: Zdenek Kabelac <hidden>
Date: 2022-11-04 11:11:29
Also in: dm-devel

Dne 04. 11. 22 v 2:23 Guoqing Jiang napsal(a):

On 11/3/22 10:46 PM, Heming Zhao wrote:
quoted
On 11/3/22 11:47 AM, Guoqing Jiang wrote:
quoted
Hi,

On 11/3/22 12:27 AM, Mikulas Patocka wrote:
quoted
Hi

There's a crash in the test shell/lvchange-rebuild-raid.sh when running
the lvm testsuite. It can be reproduced by running "make check_local
T=shell/lvchange-rebuild-raid.sh" in a loop.
I have problem to run the cmd (not sure what I missed), it would be better if
the relevant cmds are extracted from the script then I can reproduce it with
those cmds directly.

[root@localhost lvm2]# git log | head -1
commit 36a923926c2c27c1a8a5ac262387d2a4d3e620f8
[root@localhost lvm2]# make check_local T=shell/lvchange-rebuild-raid.sh
make -C libdm device-mapper
[...]
make -C daemons
make[1]: Nothing to be done for 'all'.
make -C test check_local
VERBOSE=0 ./lib/runner \
         --testdir . --outdir results \
         --flavours ndev-vanilla --only shell/lvchange-rebuild-raid.sh 
--skip @
running 1 tests
###      running: [ndev-vanilla] shell/lvchange-rebuild-raid.sh 0
| [ 0:00] lib/inittest: line 133: 
/tmp/LVMTEST317948.iCoLwmDhZW/dev/testnull: Permission denied
| [ 0:00] Filesystem does support devices in 
/tmp/LVMTEST317948.iCoLwmDhZW/dev (mounted with nodev?)
I didn't read other mails in this thread, only for above issue.
If you use opensuse, systemd service tmp.mount uses nodev option to mount 
tmpfs on /tmp.
From my experience, there are two methods to fix(work around):
1. systemctl disable tmp.mount && systemctl mask tmp.mount && reboot
2. mv /usr/lib/systemd/system/tmp.mount /root/ && reboot
I am using centos similar system, I can try leap later. Appreciate for the 
tips, Heming.

You can always redirect default /tmp dir to some other place/filesystem that 
allows you to create /dev nodes. Eventually for 'brave men'  you can let lvm2 
test suite to play directly with your /dev dir.  Normally nothing bad should 
happen, but we tend to prefer more controled '/dev' managed for a test.

Here are two envvars to play with:


make check_local T=shell/lvchange-rebuild-raid.sh LVM_TEST_DIR=/myhomefsdir  
LVM_TEST_DEVDIR=/dev

LVM_TEST_DIR for setting of dir where test creates all its files

LVM_TEST_DEVDIR  you can explicitly tell to keep using system's /dev   
(instead of dir created within tmpdir)


Regards


Zdenek

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help