[PATCH 1/1] test: revert Don't unmount not (yet) mounted system

Heinrich Schuchardt xypron.glpk at gmx.de
Mon May 17 16:24:46 CEST 2021


On 17.05.21 15:21, Heinrich Schuchardt wrote:
> On 17.05.21 13:44, Andy Shevchenko wrote:
>> On Mon, May 17, 2021 at 2:35 PM Heinrich Schuchardt <xypron.glpk at gmx.de> wrote:
>>>
>>> On 17.05.21 13:16, Andy Shevchenko wrote:
>>>> On Mon, May 17, 2021 at 10:48:33AM +0200, Heinrich Schuchardt wrote:
>>>>> On 17.05.21 08:33, Andy Shevchenko wrote:
>>>>>> On Thu, May 13, 2021 at 2:41 PM Heinrich Schuchardt <xypron.glpk at gmx.de> wrote:
>>>>>>>
>>>>>>> Since commit 1ba21bb06b08 ("test: Don't unmount not (yet) mounted system")
>>>>>>> the following tests are skipped:
>>>>>>>
>>>>>>> test/py/tests/test_fs/test_basic.py
>>>>>>> test/py/tests/test_fs/test_ext.py
>>>>>>>
>>>>>>> SKIPPED [13] test/py/tests/test_fs/conftest.py:350: Setup failed for
>>>>>>> filesystem: ext4. Command 'guestmount -a
>>>>>>> build-sandbox/persistent-data/3GB.ext4.img -m /dev/sda
>>>>>>> build-sandbox/persistent-data/mnt' returned non-zero exit status 1.
>>>>>>>
>>>>>>> Let's revert the patch to get our tests back.
>>>>>>
>>>>>> Probably we may understand first what is the root cause of this issue?
>>>>>>
>>>>>> In my case I can't allow this to happen, because it will annoy system
>>>>>> administrators as I mentioned earlier in the commit message.
>>>>>>
>>>>>> So, NAK from me and let's investigate.
>>>>>> Can you provide a command line that I may run on my environment w/o root access?
>>>>>
>>>>> Hello Andy,
>>>>>
>>>>> The tests don't require root access if you have installed the
>>>>> libguestfs-tools package and a Linux kernel.
>>>>>
>>>>> How can I reproduce the problem with duplicate umount?
>>>>
>>>> I was running this 2+ times in a row (*)
>>>>
>>>> ./test/py/test.py --bd sandbox --build
>>
>> (1)
>>
>>>>
>>>> *) I can't run tests right now due to they are more or less constantly broken
>>>> one way or the other, now
>>>>
>>>> ============================================== test session starts ==============================================
>>>> platform linux -- Python 3.9.2, pytest-6.0.2, py-1.10.0, pluggy-0.13.0
>>>> rootdir: /home/andy/prj/u-boot/test/py, configfile: pytest.ini
>>>> collected 810 items / 1 error / 809 selected
>>>>
>>>> ___________________________________ ERROR collecting tests/test_fit_ecdsa.py ____________________________________
>>>> E   ModuleNotFoundError: No module named 'Cryptodome'
>>>
>>> The missing package is available via
>>>
>>>     apt-get install python3-pycryptodome # Debian/Ubuntu
>>>
>>> or
>>>
>>>     dnf install python3-pycryptodomex # Fedora
>>
>> Thanks.
>>
>> So, I have run above mentioned line (1) with current U-Boot (see
>> above), everything is fine, then I have reverted the commit (as your
>> patch does, correct), and oops
>>
>> test/py/tests/test_efi_secboot/test_unsigned.py sss
>>                                    [ 88%]
>> test/py/tests/test_fs/test_basic.py [sudo] password for andy:
>
> If you are asked for a sudo password, you have not install libguestfs.
>
> Please, install the missing package.
>
>> Sorry, try again.
>> [sudo] password for andy:
>> Sorry, try again.
>> [sudo] password for andy:
>> sssssssssssss[sudo] password for andy:
>>
>> Now I'm waiting for a punishment from the admin, thanks to this test round.
>
> make tests (on my local machine)
>
> with origin/master:
>
> test/py/tests/test_efi_secboot/test_unsigned.py ...
> test/py/tests/test_fs/test_basic.py sssssssssssssssssssssssssssssssssssssss
> test/py/tests/test_fs/test_ext.py ssssssssssssssssssssss
> test/py/tests/test_fs/test_fs_cmd.py .
> test/py/tests/test_fs/test_mkdir.py ............
> test/py/tests/test_fs/test_symlink.py ssss
> test/py/tests/test_fs/test_unlink.py ssssssssssssss
>
> with your patch reverted
>
> test/py/tests/test_efi_secboot/test_unsigned.py ...
> test/py/tests/test_fs/test_basic.py F............F.........................
> test/py/tests/test_fs/test_ext.py ......................
> test/py/tests/test_fs/test_fs_cmd.py .
> test/py/tests/test_fs/test_mkdir.py ............
> test/py/tests/test_fs/test_symlink.py ....
> test/py/tests/test_fs/test_unlink.py ..............
>
> The failures are caused by dd being called with conv=fsync before
> mounting with guestfs.
>
> Obviously we have two scenarios to test separately:
>
> 1) using sudo for mounting
> 2) using guestfs for mounting
>
>>
>> I'm not going to repeat this again, please understand me correctly.
>
> I assume that you possess a private laptop where your are the admin.
> Where is the problem?
>
> Best regards
>
> Heinrich
>

Here are the test results with guestfs-tools removed:

with origin/master

test/py/tests/test_efi_secboot/test_unsigned.py sss
test/py/tests/test_fs/test_basic.py [sudo] password for user:
sssssssssssssssssssssssssssssssssssssss
test/py/tests/test_fs/test_ext.py ssssssssssssssssssssss
test/py/tests/test_fs/test_fs_cmd.py .
test/py/tests/test_fs/test_mkdir.py ............
test/py/tests/test_fs/test_symlink.py ssss
test/py/tests/test_fs/test_unlink.py ssssssssssssss

with Andy's patch reverted

test/py/tests/test_efi_secboot/test_unsigned.py sss
test/py/tests/test_fs/test_basic.py [sudo] password for user:
.......................................
test/py/tests/test_fs/test_ext.py ......................
test/py/tests/test_fs/test_fs_cmd.py .
test/py/tests/test_fs/test_mkdir.py ............
test/py/tests/test_fs/test_symlink.py ....
test/py/tests/test_fs/test_unlink.py ..............

So the only effect of Andy's patch is to cause skipping tests. As a
secondary effect this may have led to less log entries.

Best regards

Heinrich


More information about the U-Boot mailing list