2008-01-14 19:23:08

by Stephen Hemminger

[permalink] [raw]
Subject: [PATCH 1/2] checkstack: parse architecture correctly

The checkstack script wouldn't work because it was picking up the
newline on the end of the output of uname -m.

Also, use a standard perl construct to print error message and
exit with non-zero error code.

Signed-off-by: Stephen Hemminger <[email protected]>

--- a/scripts/checkstack.pl 2008-01-14 11:09:09.000000000 -0800
+++ b/scripts/checkstack.pl 2008-01-14 11:09:51.000000000 -0800
@@ -32,6 +32,7 @@ my (@stack, $re, $x, $xs);
my $arch = shift;
if ($arch eq "") {
$arch = `uname -m`;
+ chomp $arch;
}

$x = "[0-9a-f]"; # hex character
@@ -85,8 +86,7 @@ my (@stack, $re, $x, $xs);
# 0: 00 e8 38 01 LINK 0x4e0;
$re = qr/.*[[:space:]]LINK[[:space:]]*(0x$x{1,8})/o;
} else {
- print("wrong or unknown architecture\n");
- exit
+ die "wrong or unknown architecture\"$arch\"\n";
}
}


2008-01-14 19:50:45

by Jiri Slaby

[permalink] [raw]
Subject: Re: [PATCH 1/2] checkstack: parse architecture correctly

On 01/14/2008 08:19 PM, Stephen Hemminger wrote:
> The checkstack script wouldn't work because it was picking up the
> newline on the end of the output of uname -m.
>
> Also, use a standard perl construct to print error message and
> exit with non-zero error code.
>
> Signed-off-by: Stephen Hemminger <[email protected]>
>
> --- a/scripts/checkstack.pl 2008-01-14 11:09:09.000000000 -0800
> +++ b/scripts/checkstack.pl 2008-01-14 11:09:51.000000000 -0800
[...]
> - print("wrong or unknown architecture\n");
> - exit
> + die "wrong or unknown architecture\"$arch\"\n";

a space before the variable would be good, maybe qq() instead of "" to avoid
backslashing? Also the \n is reduntant there, otherwise you will loose the
file+line info.