Re: A crash caused by the commit 0dd84b319352bb8ba64752d4e45396d8b13e6018

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 11/4/22 7:10 PM, Zdenek Kabelac wrote:
Dne 04. 11. 22 v 2:23 Guoqing Jiang napsal(a):


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

On 11/3/22 12:27 AM, Mikulas Patocka wrote:
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)

Thank you! This works for me.

[root@localhost lvm2]# make check_local T=shell/lvchange-rebuild-raid.sh LVM_TEST_DIR=/root/test LVM_TEST_DEVDIR=/dev
make -C libdm device-mapper
make[1]: Nothing to be done for 'device-mapper'.

[... ]

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
###       passed: [ndev-vanilla] shell/lvchange-rebuild-raid.sh 20

### 1 tests: 1 passed, 0 skipped, 0 timed out, 0 warned, 0 failed

Thanks,
Guoqing

--
dm-devel mailing list
dm-devel@xxxxxxxxxx
https://listman.redhat.com/mailman/listinfo/dm-devel




[Index of Archives]     [DM Crypt]     [Fedora Desktop]     [ATA RAID]     [Fedora Marketing]     [Fedora Packaging]     [Fedora SELinux]     [Yosemite Discussion]     [KDE Users]     [Fedora Docs]

  Powered by Linux