diff mbox series

zram/zram_lib.sh: fix local variable assignment for DASH

Message ID 20190702110419.21221-1-po-hsu.lin@canonical.com
State Superseded
Headers show
Series zram/zram_lib.sh: fix local variable assignment for DASH | expand

Commit Message

Po-Hsu Lin July 2, 2019, 11:04 a.m. UTC
The /bin/sh was symbolically link to dash in Ubuntu.
This is making the one-liner local variable assignment not working [1]:
    /opt/ltp/testcases/bin/zram01.sh: 102: local: 842: bad variable name

Break it into two lines to solve this issue.

[1] https://wiki.ubuntu.com/DashAsBinSh#local

Signed-off-by: Po-Hsu Lin <po-hsu.lin@canonical.com>
---
 testcases/kernel/device-drivers/zram/zram_lib.sh | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

Comments

Po-Hsu Lin July 2, 2019, 11:21 a.m. UTC | #1
OK for this one I think there is a better way to keep it one-liner.

It fails because there are more than one value returned:
    [lzo] lz4 lz4hc 842 zstd

But if we use quotes to enclose it, it works
    local algs="$(cat /sys/block/zram0/comp_algorithm)"

Please ignore this patch, I will revise this.
Thanks!

On Tue, Jul 2, 2019 at 7:04 PM Po-Hsu Lin <po-hsu.lin@canonical.com> wrote:
>
> The /bin/sh was symbolically link to dash in Ubuntu.
> This is making the one-liner local variable assignment not working [1]:
>     /opt/ltp/testcases/bin/zram01.sh: 102: local: 842: bad variable name
>
> Break it into two lines to solve this issue.
>
> [1] https://wiki.ubuntu.com/DashAsBinSh#local
>
> Signed-off-by: Po-Hsu Lin <po-hsu.lin@canonical.com>
> ---
>  testcases/kernel/device-drivers/zram/zram_lib.sh | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/testcases/kernel/device-drivers/zram/zram_lib.sh b/testcases/kernel/device-drivers/zram/zram_lib.sh
> index 45116af3e..5cf1ba435 100755
> --- a/testcases/kernel/device-drivers/zram/zram_lib.sh
> +++ b/testcases/kernel/device-drivers/zram/zram_lib.sh
> @@ -98,11 +98,13 @@ zram_compress_alg()
>
>         tst_resm TINFO "test that we can set compression algorithm"
>
> -       local algs=$(cat /sys/block/zram0/comp_algorithm)
> +       local algs
> +       algs=$(cat /sys/block/zram0/comp_algorithm)
>         tst_resm TINFO "supported algs: $algs"
>         local i=0
>         for alg in $zram_algs; do
> -               local sys_path="/sys/block/zram${i}/comp_algorithm"
> +               local sys_path
> +               sys_path="/sys/block/zram${i}/comp_algorithm"
>                 echo "$alg" >  $sys_path || \
>                         tst_brkm TFAIL "can't set '$alg' to $sys_path"
>                 i=$(($i + 1))
> --
> 2.17.1
>
diff mbox series

Patch

diff --git a/testcases/kernel/device-drivers/zram/zram_lib.sh b/testcases/kernel/device-drivers/zram/zram_lib.sh
index 45116af3e..5cf1ba435 100755
--- a/testcases/kernel/device-drivers/zram/zram_lib.sh
+++ b/testcases/kernel/device-drivers/zram/zram_lib.sh
@@ -98,11 +98,13 @@  zram_compress_alg()
 
 	tst_resm TINFO "test that we can set compression algorithm"
 
-	local algs=$(cat /sys/block/zram0/comp_algorithm)
+	local algs
+	algs=$(cat /sys/block/zram0/comp_algorithm)
 	tst_resm TINFO "supported algs: $algs"
 	local i=0
 	for alg in $zram_algs; do
-		local sys_path="/sys/block/zram${i}/comp_algorithm"
+		local sys_path
+		sys_path="/sys/block/zram${i}/comp_algorithm"
 		echo "$alg" >  $sys_path || \
 			tst_brkm TFAIL "can't set '$alg' to $sys_path"
 		i=$(($i + 1))