Re: [PATCH] KVM: selftests: Avoid assuming "sudo" exists

From: Muhammad Usama Anjum
Date: Mon Apr 15 2024 - 14:46:15 EST


On 4/15/24 7:43 PM, Brendan Jackman wrote:
> I ran into a failure running this test on a minimal rootfs.
I've ran into similar issue before for another test. Its clever solution.

>
> Can be fixed by just skipping the "sudo" in case we are already root.
>
> Signed-off-by: Brendan Jackman <jackmanb@xxxxxxxxxx>
Reviewed-by: Muhammad Usama Anjum <usama.anjum@xxxxxxxxxxxxx>

> ---
> tools/testing/selftests/kvm/x86_64/nx_huge_pages_test.sh | 13 ++++++++++++-
> 1 file changed, 12 insertions(+), 1 deletion(-)
>
> diff --git a/tools/testing/selftests/kvm/x86_64/nx_huge_pages_test.sh b/tools/testing/selftests/kvm/x86_64/nx_huge_pages_test.sh
> index 7cbb409801eea..0e56822e8e0bf 100755
> --- a/tools/testing/selftests/kvm/x86_64/nx_huge_pages_test.sh
> +++ b/tools/testing/selftests/kvm/x86_64/nx_huge_pages_test.sh
> @@ -13,10 +13,21 @@ NX_HUGE_PAGES_RECOVERY_RATIO=$(cat /sys/module/kvm/parameters/nx_huge_pages_reco
> NX_HUGE_PAGES_RECOVERY_PERIOD=$(cat /sys/module/kvm/parameters/nx_huge_pages_recovery_period_ms)
> HUGE_PAGES=$(cat /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages)
>
> +# If we're already root, the host might not have sudo.
> +if [ $(whoami) == "root" ]; then
> + function maybe_sudo () {
> + "$@"
> + }
> +else
> + function maybe_sudo () {
> + sudo "$@"
> + }
> +fi
> +
> set +e
>
> function sudo_echo () {
> - echo "$1" | sudo tee -a "$2" > /dev/null
> + echo "$1" | maybe_sudo tee -a "$2" > /dev/null
> }
>
> NXECUTABLE="$(dirname $0)/nx_huge_pages_test"
>
> ---
> base-commit: 2c71fdf02a95b3dd425b42f28fd47fb2b1d22702
> change-id: 20240415-kvm-selftests-no-sudo-1a55f831f882
>
> Best regards,

--
BR,
Muhammad Usama Anjum