On 2/26/24 02:28, Maciej Wieczor-Retman wrote:
Hi Shuah,
On 2024-02-23 at 15:37:11 -0700, Shuah Khan wrote:
Hi Reinette,
Okay ran a quick test. Why does this test leave "/sys/fs/resctrl"
mounted when it exits. Can we fix this to unmount before the test
exits?
I also wasn't able to reproduce this unmounting issue:
- with unmounted resctrl before test:
[/root]# ls /sys/fs/resctrl/
[/root]#
[/root]# ./resctrl_tests -t L3_NONCONT_CAT
TAP version 13
# Pass: Check kernel supports resctrl filesystem
# Pass: Check resctrl mountpoint "/sys/fs/resctrl" exists
# resctrl filesystem not mounted
# dmesg: [ 12.502941] resctrl: L3 allocation detected
# dmesg: [ 12.507134] resctrl: MB allocation detected
# dmesg: [ 12.511315] resctrl: L3 monitoring detected
1..1
# Starting L3_NONCONT_CAT test ...
# Mounting resctrl to "/sys/fs/resctrl"
# Write schema "L3:1=3f" to resctrl FS
# Write schema "L3:1=f0f" to resctrl FS # write() failed : Invalid argument
# Non-contiguous CBMs not supported and write of non-contiguous CBM failed as expected
ok 1 L3_NONCONT_CAT: test
# Totals: pass:1 fail:0 xfail:0 xpass:0 skip:0 error:0
[/root]# ls /sys/fs/resctrl/
[/root]#
And with mounted before test:
[/root]# ls /sys/fs/resctrl/
[/root]#
[/root]# mount -t resctrl resctrl /sys/fs/resctrl
[/root]# ls /sys/fs/resctrl/
cpus cpus_list info mode mon_data mon_groups schemata size tasks
[/root]# ./resctrl_tests -t L3_NONCONT_CAT
TAP version 13
# Pass: Check kernel supports resctrl filesystem
# Pass: Check resctrl mountpoint "/sys/fs/resctrl" exists
# resctrl filesystem is mounted
# dmesg: [ 12.502941] resctrl: L3 allocation detected
# dmesg: [ 12.507134] resctrl: MB allocation detected
# dmesg: [ 12.511315] resctrl: L3 monitoring detected
1..1
# Starting L3_NONCONT_CAT test ...
# Mounting resctrl to "/sys/fs/resctrl"
# Write schema "L3:1=3f" to resctrl FS
# Write schema "L3:1=f0f" to resctrl FS # write() failed : Invalid argument
# Non-contiguous CBMs not supported and write of non-contiguous CBM failed as expected
ok 1 L3_NONCONT_CAT: test
# Totals: pass:1 fail:0 xfail:0 xpass:0 skip:0 error:0
[/root]# ls /sys/fs/resctrl/
[/root]#
Looking at the code there is an unmounting function called after each test (at
the end of run_single_test() inside of test_cleanup()). The non-contiguous test
also doesn't write any data into a temp file so no additional cleanup is
necessary.
Looks fine. Thanks for the clarification.
thanks,
-- Shuah