diff mbox series

selftests/mm: switch to bash from sh

Message ID 20240116090455.3407378-1-usama.anjum@collabora.com (mailing list archive)
State New
Headers show
Series selftests/mm: switch to bash from sh | expand

Commit Message

Muhammad Usama Anjum Jan. 16, 2024, 9:04 a.m. UTC
Running charge_reserved_hugetlb.sh generates errors if sh is set to
dash:

./charge_reserved_hugetlb.sh: 9: [[: not found
./charge_reserved_hugetlb.sh: 19: [[: not found
./charge_reserved_hugetlb.sh: 27: [[: not found
./charge_reserved_hugetlb.sh: 37: [[: not found
./charge_reserved_hugetlb.sh: 45: Syntax error: "(" unexpected

Switch to using /bin/bash instead of /bin/sh. Make the switch for
write_hugetlb_memory.sh as well which is called from
charge_reserved_hugetlb.sh.

Signed-off-by: Muhammad Usama Anjum <usama.anjum@collabora.com>
---
 tools/testing/selftests/mm/charge_reserved_hugetlb.sh | 2 +-
 tools/testing/selftests/mm/write_hugetlb_memory.sh    | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

Comments

David Laight Jan. 16, 2024, 4:52 p.m. UTC | #1
From: Muhammad Usama Anjum
> Sent: 16 January 2024 09:05
> 
> Running charge_reserved_hugetlb.sh generates errors if sh is set to
> dash:
> 
> /charge_reserved_hugetlb.sh: 9: [[: not found
> /charge_reserved_hugetlb.sh: 19: [[: not found
> /charge_reserved_hugetlb.sh: 27: [[: not found
> /charge_reserved_hugetlb.sh: 37: [[: not found
> /charge_reserved_hugetlb.sh: 45: Syntax error: "(" unexpected
> 
> Switch to using /bin/bash instead of /bin/sh. Make the switch for
> write_hugetlb_memory.sh as well which is called from
> charge_reserved_hugetlb.sh.

Why not just fix the script?
Looks like most of the [[ ... ]] could be [ ... ]
although some might need to be [ -n "$cgroup2" ].
The delete the 'function' keyword another bash-ism.

It's not as though you are trying to run on a system
when /bin/sh is a traditional (aka non-posix) bourne shell.

	David

-
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)
Muhammad Usama Anjum Jan. 17, 2024, 5 a.m. UTC | #2
On 1/16/24 9:52 PM, David Laight wrote:
> From: Muhammad Usama Anjum
>> Sent: 16 January 2024 09:05
>>
>> Running charge_reserved_hugetlb.sh generates errors if sh is set to
>> dash:
>>
>> /charge_reserved_hugetlb.sh: 9: [[: not found
>> /charge_reserved_hugetlb.sh: 19: [[: not found
>> /charge_reserved_hugetlb.sh: 27: [[: not found
>> /charge_reserved_hugetlb.sh: 37: [[: not found
>> /charge_reserved_hugetlb.sh: 45: Syntax error: "(" unexpected
>>
>> Switch to using /bin/bash instead of /bin/sh. Make the switch for
>> write_hugetlb_memory.sh as well which is called from
>> charge_reserved_hugetlb.sh.
> 
> Why not just fix the script?
The Bash is being used in all or most of the selftests. I'd seen other
similar [1][2] patches floating around which are converting /bin/sh
(pointing to dash) to /bin/bash.

[1]
https://lore.kernel.org/linux-kselftest/20240110141436.157419-2-bpoirier@nvidia.com/

[2]
https://lore.kernel.org/linux-kselftest/20231229131931.3961150-1-yujie.liu@intel.com/

> Looks like most of the [[ ... ]] could be [ ... ]
> although some might need to be [ -n "$cgroup2" ].
> The delete the 'function' keyword another bash-ism.
> 
> It's not as though you are trying to run on a system
> when /bin/sh is a traditional (aka non-posix) bourne shell.
> 
> 	David
> 
> -
> Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
> Registration No: 1397386 (Wales)
> 
>
diff mbox series

Patch

diff --git a/tools/testing/selftests/mm/charge_reserved_hugetlb.sh b/tools/testing/selftests/mm/charge_reserved_hugetlb.sh
index 0899019a7fcb..e14bdd4455f2 100755
--- a/tools/testing/selftests/mm/charge_reserved_hugetlb.sh
+++ b/tools/testing/selftests/mm/charge_reserved_hugetlb.sh
@@ -1,4 +1,4 @@ 
-#!/bin/sh
+#!/bin/bash
 # SPDX-License-Identifier: GPL-2.0
 
 # Kselftest framework requirement - SKIP code is 4.
diff --git a/tools/testing/selftests/mm/write_hugetlb_memory.sh b/tools/testing/selftests/mm/write_hugetlb_memory.sh
index 70a02301f4c2..3d2d2eb9d6ff 100755
--- a/tools/testing/selftests/mm/write_hugetlb_memory.sh
+++ b/tools/testing/selftests/mm/write_hugetlb_memory.sh
@@ -1,4 +1,4 @@ 
-#!/bin/sh
+#!/bin/bash
 # SPDX-License-Identifier: GPL-2.0
 
 set -e